Conditionally disable part of the test.
[gnulib.git] / ChangeLog
1 2008-06-22  Bruno Haible  <bruno@clisp.org>
2
3         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
4         conditionally.
5         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6
7 2008-06-22  Bruno Haible  <bruno@clisp.org>
8
9         * doc/posix-functions/siginterrupt.texi: Move note.
10
11         * lib/signal.in.h (SA_RESTART): New macro.
12         * lib/sigaction.c: Update comment.
13
14         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
15
16         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
17         (gl_PREREQ_SIGPROCMASK): Invoke it.
18         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
19
20         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
21
22         * lib/sigprocmask.c: Update a comment.
23
24 2008-06-21  Eric Blake  <ebb9@byu.net>
25
26         Use sigaction module rather than signal().
27         * modules/c-stack (Depends-on): Add sigaction.
28         * modules/fatal-signal (Depends-on): Likewise.
29         * modules/nanosleep (Depends-on): Likewise.
30         * modules/sigprocmask (Files): Add sig-handler.h.
31         * modules/sigaction (Files): Likewise.
32         * lib/sig-handler.h (get_handler): New file, suggested by Paul
33         Eggert.
34         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
35         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
36         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
37         (init_fatal_signals): Likewise.
38         * lib/nanosleep.c (rpl_nanosleep): Likewise.
39         (siginterrupt): Delete fallback.
40         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
41         instead.
42         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
43         siginterrupt.
44
45         New module sigaction, for mingw.
46         * modules/sigaction: New module...
47         * modules/sigaction-tests: ...and its test.
48         * m4/sigaction.m4: New file.
49         * lib/sigaction.c: Likewise.
50         * tests/test-sigaction.c: Likewise.
51         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
52         * modules/signal (Makefile.am): Likewise.
53         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
54         needed.
55         * doc/posix-headers/signal.texi (signal.h): Mention provided
56         types.
57         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
58         that sigaction is preferable.
59         * doc/posix-functions/sigaction.texi (sigaction): Mention new
60         module.
61         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
62         sigaction.
63
64         Improve robustness of sigprocmask by overriding signal.
65         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
66         is in use.
67         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
68         (SIGKILL, SIGSTOP): Provide fallbacks.
69         (rpl_signal): Implement.
70         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
71         signal can be called inside handlers.
72
73         Fix nanosleep module on mingw.
74         * modules/nanosleep (Depends-on): Add sys_select.
75         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
76
77         Fix licensing of sigprocmask.
78         * modules/raise (License): Relicense as LGPL.
79
80 2008-06-21  Bruno Haible  <bruno@clisp.org>
81
82         * lib/propername.c (proper_name_utf8): Don't use the transliterated
83         result if it contains question marks.
84         Reported by Michael Geng <linux@michaelgeng.de>.
85
86 2008-06-19  Bruno Haible  <bruno@clisp.org>
87
88         Fix CVS-ism.
89         * doc/gnulib.texi: Include updated-stamp.texi.
90         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
91         (updated-stamp.texi): New rule.
92         (gnulib.info): Depend on it.
93         * doc/.gitignore: Add updated-stamp.texi.
94         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
95
96 2008-06-19  Bruno Haible  <bruno@clisp.org>
97
98         * doc/Makefile (gnulib.info): Update and simplify dependencies.
99         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
100
101 2008-06-19  Eric Blake  <ebb9@byu.net>
102
103         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
104         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
105         Reported by Stepan Kasal.
106
107 2008-06-18  Bruno Haible  <bruno@clisp.org>
108
109         * lib/fatal-signal.c (init_fatal_signals): Add comment.
110         Reported by Eric Blake.
111
112 2008-06-18  Eric Blake  <ebb9@byu.net>
113
114         Work around cygwin 1.5.25 strsignal bug.
115         * tests/test-strsignal.c: Allow for const char *.
116         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
117
118 2008-06-18  Simon Josefsson  <simon@josefsson.org>
119
120         * users.txt: Update URL to article and add author/date
121         information.
122
123 2008-06-17  Bruno Haible  <bruno@clisp.org>
124
125         New macro gl_DISABLE_THREADS.
126         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
127         if the user did not pass --enable-threads or --disable-threads option.
128         (gl_DISABLE_THREADS): New macro.
129         Reported by Eric Blake <ebb9@byu.net>.
130
131 2008-06-17  Bruno Haible  <bruno@clisp.org>
132
133         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
134         when the macro ignores it.
135         Based on a patch by Eric Blake <ebb9@byu.net>.
136
137 2008-06-17  Bruno Haible  <bruno@clisp.org>
138
139         * modules/tls (License): Change to LGPLv2+.
140         Reported by Eric Blake.
141
142 2008-06-17  Eric Blake  <ebb9@byu.net>
143
144         Simplify c-stack prerequisites.
145         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
146         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
147         no longer requires <ucontext.h> to exist.  Optimize setrlimit
148         check.
149         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
150         <sys/resource.h>.
151
152         Move c-stack test into testsuite.
153         * modules/c-stack-tests: New file.
154         * lib/c-stack.c [DEBUG]: Move test program...
155         * tests/test-c-stack.c: ...into this new file.  Skip rather than
156         fail test if sigaltstack is lacking.
157         * tests/test-c-stack.sh: New driver file.
158
159 2008-06-16  Eric Blake  <ebb9@byu.net>
160
161         Use raise module consistently.
162         * modules/fatal-signal (Depends-on): Add raise.
163         * modules/sigprocmask (Depends-on): Likewise.
164         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
165         * lib/sigprocmask.c (sigprocmask): Likewise.
166         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
167         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
168
169         Fix compliance bug in sigpending.
170         * lib/sigprocmask.c (sigpending): Return pending array via
171         parameter, not return value.
172
173 2008-06-14  Eric Blake  <ebb9@byu.net>
174
175         Improve obstack-printf test code.
176         * tests/test-obstack-printf.c (test_function): Fix comment, and
177         simplify usage of obstack_* in macros.  Add a test for coverage.
178         Reported by Bruno Haible.
179
180 2008-06-14  Bruno Haible  <bruno@clisp.org>
181
182         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
183         array size as a constant, not as a const variable.
184         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
185         AC_USE_SYSTEM_EXTENSIONS.
186         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
187         Test whether the obstack_printf function actually exists.
188         * modules/obstack-printf (Depends-on): Add extensions.
189         (Include): Remove obstack.h.
190         * modules/obstack-printf-posix (Depends-on): Add extensions.
191         (Include): Remove obstack.h.
192
193 2008-06-13  Eric Blake  <ebb9@byu.net>
194
195         Add obstack-printf and obstack-printf-posix modules.
196         * modules/obstack-printf: New file.
197         * modules/obstack-printf-posix: Likewise.
198         * MODULES.html.sh (Misc): Mention them.
199         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
200         Likewise.
201         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
202         Likewise.
203         * modules/stdio (Makefile.am): Accomodate new modules.
204         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
205         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
206         Declare.
207         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
208         functions.
209         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
210         (gl_REPLACE_OBSTACK_PRINTF): New macros
211         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
212         * tests/test-obstack-printf.c: New file.
213         * modules/obstack-printf-tests: Likewise.
214         * modules/obstack-printf-posix-tests: Likewise.
215
216 2008-06-11  Bruno Haible  <bruno@clisp.org>
217
218         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
219         * lib/open.c: Include errno.h.
220         (open): Fail when attempting to write to a file that has a trailing
221         slash.
222         * tests/test-open.c (main): Test against trailing slash bug.
223         * doc/posix-functions/open.texi: Mention the trailing slash bug.
224
225 2008-06-10  Bruno Haible  <bruno@clisp.org>
226
227         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
228         for $? to work inside the trap command, with various /bin/sh-s.
229         * tests/test-vc-list-files-cvs.sh: Likewise.
230
231 2008-06-10  Bruno Haible  <bruno@clisp.org>
232
233         * lib/acl-internal.h: Don't include gettext.h here.
234         * lib/set-mode-acl.c: Include gettext.h here.
235         * lib/copy-acl.c: Likewise.
236
237 2008-06-10  Bruno Haible  <bruno@clisp.org>
238
239         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
240         * lib/wait-process.c (wait_subprocess): Likewise.
241         * lib/execute.h (execute): Add termsigp argument.
242         * lib/execute.c (execute): Likewise.
243         * lib/csharpcomp.c (compile_csharp_using_pnet,
244         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
245         * lib/csharpexec.c (execute_csharp_using_pnet,
246         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
247         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
248         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
249         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
250         is_jikes_present): Update.
251         * lib/javaexec.c (execute_java_class): Update.
252         * lib/javaversion.c (execute_and_read_line): Update.
253         * NEWS: Document the changes.
254         Reported by Eric Blake.
255
256 2008-06-10  Eric Blake  <ebb9@byu.net>
257
258         Add missing include.
259         * tests/test-strstr.c (includes): Add <signal.h>.
260         * tests/test-strcasestr.c (includes): Likewise.
261         * tests/test-memmem.c (includes): Likewise.
262
263 2008-06-10  Bruno Haible  <bruno@clisp.org>
264
265         * lib/wait-process.c (wait_subprocess): Add an assertion.
266
267 2008-06-10  Bruno Haible  <bruno@clisp.org>
268
269         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
270
271 2008-06-10  Bruno Haible  <bruno@clisp.org>
272
273         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
274         using alarm().
275         * tests/test-strcasestr.c (main): Likewise.
276         * tests/test-strstr.c (main): Likewise.
277
278 2008-06-09  Bruno Haible  <bruno@clisp.org>
279
280         Work around the Solaris 10 ACE ACLs ABI change.
281         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
282         declare if ACL_NO_TRIVIAL is present.
283         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
284         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
285         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
286         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
287         define if ACL_NO_TRIVIAL is present.
288         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
289         and use the current ABI.
290         (file_has_acl): Use same #if condition as elsewhere.
291         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
292         in use, and use the current ABI.
293         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
294         Reported by Jim Meyering.
295
296 2008-06-09  Eric Blake  <ebb9@byu.net>
297
298         Work around environments that (stupidly) ignore SIGALRM.
299         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
300         before using alarm().
301         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
302         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
303         Reported by Ian Beckwith <ianb@erislabs.net>.
304
305         Produce autobuild blurb earlier in log.
306         * modules/autobuild (configure.ac-early): Move AB_INIT here.
307
308 2008-06-09  Jim Meyering  <meyering@redhat.com>
309         and OndÅ™ej Vašík  <ovasik@redhat.com>
310
311         utimens.c: correct kernel bug work-around
312         OndÅ™ej Vašík found that the invalid return value of 280 indicates
313         failure, not success, and the kernel bug we're trying to work
314         around affects not just the utimensat call, but also the fallback
315         futimens call.
316         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
317         not success.
318         [HAVE_FUTIMENS]: Use the same work-around, here.
319
320 2008-06-09  Jim Meyering  <meyering@redhat.com>
321
322         add more guards around definition of ACE_-related code
323         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
324         ALLOW and ACE_OWNER are also defined.
325
326 2008-06-08  Bruno Haible  <bruno@clisp.org>
327
328         * lib/acl-internal.h: Add me as co-author.
329         * lib/file-has-acl.c: Likewise.
330         * lib/set-mode-acl.c: Likewise.
331         * lib/copy-acl.c: Likewise.
332
333 2008-06-08  Bruno Haible  <bruno@clisp.org>
334
335         Add support for AIX ACLs.
336         * lib/acl-internal.h (acl_nontrivial): New declaration.
337         * lib/file-has-acl.c (acl_nontrivial): New function.
338         (file_has_acl): Add implementation using AIX 4 ACL API.
339         * lib/set-mode-acl.c (qset_acl): Likewise.
340         * lib/copy-acl.c (qcopy_acl): Likewise.
341
342 2008-06-08  Bruno Haible  <bruno@clisp.org>
343
344         Add support for HP-UX ACLs.
345         * lib/acl-internal.h (acl_nontrivial): New declaration.
346         * lib/file-has-acl.c (acl_nontrivial): New function.
347         (file_has_acl): Add implementation using HP-UX 11 ACL API.
348         * lib/set-mode-acl.c (qset_acl): Likewise.
349         * lib/copy-acl.c (qcopy_acl): Likewise.
350
351 2008-06-08  Bruno Haible  <bruno@clisp.org>
352
353         Add support for Cygwin ACLs.
354         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
355         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
356         the chmod_or_fchmod call.
357         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
358
359 2008-06-08  Bruno Haible  <bruno@clisp.org>
360
361         Fix bug with setuid modes in Solaris 10+ code.
362         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
363         succeeded, when the mode contains some special bits.
364
365 2008-06-08  Bruno Haible  <bruno@clisp.org>
366
367         Add support for Solaris 7..10 ACLs.
368         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
369         declarations.
370         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
371         functions.
372         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
373         * lib/set-mode-acl.c (qset_acl): Likewise.
374         * lib/copy-acl.c (qcopy_acl): Likewise.
375
376 2008-06-08  Bruno Haible  <bruno@clisp.org>
377
378         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
379         declaration.
380         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
381         (acl_access_nontrivial): Remove MacOS X case.
382         (file_has_acl): Use acl_extended_nontrivial.
383         * lib/copy-acl.c (qcopy_acl): Likewise.
384
385 2008-06-08  Bruno Haible  <bruno@clisp.org>
386
387         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
388
389 2008-06-08  Jim Meyering  <meyering@redhat.com>
390
391         * modules/acl (Maintainer): Add Bruno Haible.
392
393 2008-06-07  Bruno Haible  <bruno@clisp.org>
394
395         Improve support for Tru64 ACLs.
396         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
397         ACL on OSF/1.
398
399 2008-06-07  Bruno Haible  <bruno@clisp.org>
400
401         Add support for MacOS X ACLs.
402         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
403         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
404         * lib/set-mode-acl.c (qset_acl): Likewise.
405         * lib/copy-acl.c (qcopy_acl): Likewise.
406
407 2008-06-07  Bruno Haible  <bruno@clisp.org>
408
409         Fix memory leak introduced on 2008-05-22.
410         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
411         use.
412
413 2008-06-07  Bruno Haible  <bruno@clisp.org>
414
415         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
416         to construct an empty ACL.
417
418 2008-06-07  Bruno Haible  <bruno@clisp.org>
419
420         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
421         precisely.
422         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
423
424 2008-06-07  Bruno Haible  <bruno@clisp.org>
425
426         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
427         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
428
429 2008-06-07  Bruno Haible  <bruno@clisp.org>
430
431         * doc/posix-functions/_setjmp.texi: Explain the use of this function
432         regardless of POSIX.
433         * doc/posix-functions/_longjmp.texi: Likewise.
434         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
435         SystemV platform in this case.
436
437 2008-06-06  Eric Blake  <ebb9@byu.net>
438
439         Document abort() bugs.
440         * doc/posix-functions/abort.texi (abort): Mention anomalies.
441
442         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
443         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
444         sigsetjmp.
445         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
446         siglongjmp, but only as a macro.
447         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
448         is obsolete.
449         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
450
451         Tweak documentation to cover cygwin argz bugs.
452         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
453         argz bug fix; no code change needed since no cygwin releases
454         occurred between the last fix and the bug being tested.
455         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
456         module and recently fixed cygwin bugs.
457         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
458         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
459         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
460         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
461         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
462         Likewise.
463         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
464         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
465         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
466         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
467         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
468         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
469         Likewise.
470
471         Avoid gcc warning on cygwin.
472         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
473         !ACL_NO_TRIVIAL]: Avoid unused variable.
474
475 2008-06-05  Eric Blake  <ebb9@byu.net>
476
477         Be tolerant of UNKNOWN version in gnulib-tool test dir.
478         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
479         git-version-gen fails to come up with a version.
480         Reported by Simon Josefsson.
481
482 2008-06-05  Jim Meyering  <meyering@redhat.com>
483             Paul Eggert  <eggert@cs.ucla.edu>
484
485         utimens.c: work around a probable Linux kernel bug
486         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
487         appears to be a kernel bug that causes utimensat to return 280
488         instead of 0, indicating success.
489
490 2008-06-04  Bruno Haible  <bruno@clisp.org>
491
492         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
493         2008-06-01 commit.
494
495 2008-06-04  Bruno Haible  <bruno@clisp.org>
496
497         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
498         * lib/file-has-acl.c (acl_access_nontrivial): New function.
499         (file_has_acl): Use it. Save errno afterwards.
500         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
501
502 2008-06-03  Bruno Haible  <bruno@clisp.org>
503
504         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
505         draft code. Simplify #ifs.
506         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
507         Put Solaris code after POSIX-draft code. Fix comments regarding
508         Solaris 10, HP-UX. Mention Cygwin.
509         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
510
511 2008-06-03  Eric Blake  <ebb9@byu.net>
512
513         Provide fallback for older kernels.
514         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
515         Provide runtime fallback if kernel lacks support.
516         Reported by Mike Frysinger.
517
518 2008-06-02  Bruno Haible  <bruno@clisp.org>
519
520         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
521         it exists.
522
523 2008-06-02  Bruno Haible  <bruno@clisp.org>
524
525         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
526         * lib/copy-acl.c (qcopy_acl): Update comment.
527
528 2008-06-02  Bruno Haible  <bruno@clisp.org>
529
530         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
531         like ACL APIs.
532
533 2008-06-02  Bruno Haible  <bruno@clisp.org>
534
535         * tests/test-file-has-acl.sh: Use different code for Cygwin.
536         * tests/test-set-mode-acl.sh: Likewise.
537         * tests/test-copy-acl.sh: Likewise.
538         * tests/test-copy-file.sh: Likewise.
539
540 2008-06-02  Bruno Haible  <bruno@clisp.org>
541
542         * tests/test-file-has-acl.sh: Remove unused code.
543
544 2008-06-01  Bruno Haible  <bruno@clisp.org>
545
546         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
547         (copy_acl): Just a wrapper around qcopy_acl that emits the error
548         messages.
549         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
550
551 2008-06-01  Bruno Haible  <bruno@clisp.org>
552
553         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
554         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
555         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
556         APIs.
557         * modules/acl-tests (configure.ac): Remove tests now contained in
558         m4/acl.m4.
559
560 2008-06-02  Jim Meyering  <meyering@redhat.com>
561
562         announce-gen: use a better key-server host name
563         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
564         it may be more consistently reliable.  Suggested by Werner Koch
565         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
566
567 2008-06-01  Bruno Haible  <bruno@clisp.org>
568
569         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
570         Reported by Voroskoi Andras <voroskoi@gmail.com>.
571
572 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
573
574         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
575
576 2008-06-01  Bruno Haible  <bruno@clisp.org>
577
578         New ACL tests.
579         * tests/test-file-has-acl.sh: New file.
580         * tests/test-file-has-acl.c: New file.
581         * tests/test-set-mode-acl.sh: New file.
582         * tests/test-set-mode-acl.c: New file.
583         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
584         * tests/test-copy-acl.c: New file.
585         * modules/acl-tests: New file, based on modules/copy-file-tests.
586         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
587         (Depends-on): Add acl-tests.
588         (configure.ac): Remove checks.
589         (Makefile.am): Don't create test-sameacls program here any more.
590
591 2008-06-01  Bruno Haible  <bruno@clisp.org>
592
593         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
594         * tests/test-sameacls.c: Include progname.h.
595         (main): Invoke set_program_name. Portability fixes for MacOS X,
596         Solaris, HP-UX.
597
598 2008-06-01  Bruno Haible  <bruno@clisp.org>
599
600         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
601         function.
602         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
603
604 2008-06-01  Bruno Haible  <bruno@clisp.org>
605
606         * modules/rpmatch (Depends-on): Add strdup.
607
608 2008-06-01  Bruno Haible  <bruno@clisp.org>
609
610         * lib/pipe.c: Include unistd-safer.h.
611         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
612         * modules/pipe (Depends-on): Add unistd-safer.
613
614 2008-05-30  Simon Josefsson  <simon@josefsson.org>
615
616         * modules/autobuild (configure.ac): Call AB_INIT.
617
618 2008-05-30  Simon Josefsson  <simon@josefsson.org>
619
620         * tests/test-getaddrinfo.c: Don't print debug messages by default.
621         Suggested by Bruno Haible <bruno@clisp.org>.
622
623 2008-05-30  Simon Josefsson  <simon@josefsson.org>
624
625         * tests/test-base64.c: Cast size_t to unsigned long when invoking
626         printf.  Use %lu instead of %d.  Reported by Bruno Haible
627         <bruno@clisp.org>.
628
629 2008-05-29  Eric Blake  <ebb9@byu.net>
630
631         Prefer new POSIX 200x interfaces over futimesat.
632         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
633         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
634         when available.
635         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
636
637 2008-05-28  Bruno Haible  <bruno@clisp.org>
638
639         * modules/stpcpy (License): Change to LGPLv2+.
640         Requested by David Lutterkort <dlutter@redhat.com>.
641
642 2008-05-27  Bruno Haible  <bruno@clisp.org>
643
644         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
645         current mingw.
646         Reported by Jose E. Marchesi <jemarch@gnu.org>.
647
648 2008-05-27  Bruno Haible  <bruno@clisp.org>
649
650         * modules/iconv_open (Link): New section, from module 'iconv'.
651         * modules/striconv (Link): Likewise.
652         * modules/striconveh (Link): Likewise.
653         * modules/xstriconv (Link): Likewise.
654         * modules/unicodeio (Link): Likewise.
655         * modules/propername (Link): Likewise.
656         Reported by Jim Meyering.
657
658 2008-05-26  Jim Meyering  <meyering@redhat.com>
659
660         sha256: do not artificially restrict buffer length to be < 2^32
661         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
662         uint32_t to size_t.
663         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
664         to match.
665
666         avoid unaligned access errors, e.g., on sparc
667         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
668         direct access through a possibly-unaligned uint64* pointer.
669         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
670         direct access through a possibly-unaligned uint32* pointer.
671         Prompted by this patch from Tom "spot" Callaway:
672         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
673
674         sha512.c: fix typo in comment
675         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
676
677 2008-05-25  Bruno Haible  <bruno@clisp.org>
678
679         * lib/set-mode-acl.c: Renamed from lib/acl.c.
680         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
681         (Makefile.am): Update lib_SOURCES.
682
683 2008-05-25  Bruno Haible  <bruno@clisp.org>
684
685         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
686
687 2008-05-25  Jim Meyering  <meyering@redhat.com>
688
689         useless-if-before-free: freed expr may have white-space differences
690         * build-aux/useless-if-before-free: Recognize cases in which the
691         freed expression differs from the tested one in embedded white
692         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
693         $1 was used, so we can't make any regexp shy.  Improved tests now
694         detect this.
695
696         useless-if-before-free: accept white space in the expression.
697         * build-aux/useless-if-before-free: For now, any white space
698         in the expression must be identical in the free argument.
699
700         useless-if-before-free: efficiency tweak
701         * build-aux/useless-if-before-free: Make the expression-matching
702         regexp "shy".
703         Make the *outer* regexp shy, not the expr-matching one.
704
705         update code-in-comment to accept cast of free arg
706         * build-aux/useless-if-before-free: Update regexp.
707
708 2008-05-25  Bruno Haible  <bruno@clisp.org>
709
710         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
711         * modules/copy-file-tests (Files, Makefile.am): Update.
712         * tests/test-copy-file.c (func_test_copy): Update.
713
714 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
715
716         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
717
718 2008-05-23  Bruno Haible  <bruno@clisp.org>
719
720         Improve support for ACLs on OSF/1.
721         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
722         Remove fallback for unknown flavors of ACLs.
723
724 2008-05-22  Bruno Haible  <bruno@clisp.org>
725
726         Add support for ACLs on OSF/1.
727         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
728         replacements.
729         (acl_free_text): New macro fallback.
730         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
731         acl_free.
732         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
733         acl_free_text function. Require AC_C_INLINE.
734
735 2008-05-22  Bruno Haible  <bruno@clisp.org>
736
737         Make copy_acl work on MacOS X 10.5.
738         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
739         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
740         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
741         If MODE_INSIDE_ACL, don't assume that every system has the same text
742         representation for ACLs as FreeBSD.
743         * lib/copy-acl.c (copy_acl): Add support for platforms with
744         !MODE_INSIDE_ACL.
745         * lib/file-has-acl.c (file_has_acl): Likewise.
746         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
747         FreeBSD, MacOS X, or IRIX, respectively.
748
749 2008-05-22  Bruno Haible  <bruno@clisp.org>
750
751         * lib/acl.h: Don't include <sys/acl.h>.
752         (GETACLCNT): Move fallback to lib/acl-internal.h.
753         * lib/acl-internal.h: Include <sys/acl.h> here.
754         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
755
756 2008-05-22  Bruno Haible  <bruno@clisp.org>
757
758         Split off copy_acl function to separate file.
759         * lib/copy-acl.c: New file, extracted from lib/acl.c.
760         * lib/acl.c (copy_acl): Moved function to separate file.
761         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
762         * modules/acl (Files): Add lib/copy-acl.c.
763         (Makefiles.am): Augment lib_SOURCES.
764
765 2008-05-22  Bruno Haible  <bruno@clisp.org>
766
767         * modules/copy-file-tests: New file.
768         * tests/test-copy-file.sh: New file.
769         * tests/test-copy-file.c: New file.
770         * tests/test-copy-file-sameacls.c: New file.
771
772 2008-05-22  Eric Blake  <ebb9@byu.net>
773
774         Avoid gcc warning.
775         * tests/test-memcmp.c (main): Pass NULL indirectly.
776
777 2008-05-21  Bruno Haible  <bruno@clisp.org>
778
779         Add reference doc about ACLs.
780         * doc/acl-resources.txt: New file.
781         * doc/acl-cygwin.txt: New file.
782
783 2008-05-21  Bruno Haible  <bruno@clisp.org>
784
785         Avoid one more warning from gcc.
786         * lib/vasnprintf.c (IF_LINT): Update comments.
787         (VASNPRINTF): Use it also for the 'prefix' array initializer.
788
789 2008-05-21  Jim Meyering  <meyering@redhat.com>
790
791         avoid a warning from gcc
792         * lib/vasnprintf.c (IF_LINT): Define.
793         (scale10_round_decimal_long_double):
794         Use it to avoid a "may be used uninitialized" warning.
795         (scale10_round_decimal_double): Likewise.
796
797 2008-05-21  Simon Josefsson  <simon@josefsson.org>
798
799         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
800         declared.
801
802 2008-05-20  Bruno Haible  <bruno@clisp.org>
803
804         * tests/test-memcmp.c (main): Test also the sign of the result. Test
805         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
806
807 2008-05-20  Simon Josefsson  <simon@josefsson.org>
808
809         * modules/memcmp-tests: New file.
810         * tests/test-memcmp.c: New file.
811
812 2008-05-19  Bruno Haible  <bruno@clisp.org>
813
814         * modules/propername (Notice, configure.ac): Put quoted "..." into
815         --keyword option.
816         * lib/propername.h: Update comments accordingly.
817         Reported by Eric Blake.
818
819 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
820
821         * modules/getpass-gnu (Depends-on): Add fseeko.
822
823 2008-05-19  Simon Josefsson  <simon@josefsson.org>
824
825         * modules/base64-tests: New file.
826
827 2008-05-19  Bo Borgerson <gigabo@gmail.com>
828
829         * lib/base64.c (base64_decode_ctx): If a decode context structure
830         was passed in use it to ignore newlines.  If a context structure
831         was _not_ passed in, continue to treat newlines as garbage (this
832         is the historical behavior).  Formerly base64_decode.
833         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
834         takes a decode context structure.
835         * lib/base64.h (base64_decode): Macro for four-argument calls.
836         (base64_decode_alloc): Likewise.
837         * lib/base64.c (base64_decode_ctx): If a decode context structure
838         was passed in use it to ignore newlines.  If a context structure
839         was _not_ passed in, continue to treat newlines as garbage (this
840         is the historical behavior).  Formerly base64_decode.
841         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
842         takes a decode context structure.
843         * lib/base64.h (base64_decode): Macro for four-argument calls.
844         (base64_decode_alloc): Likewise.
845
846 2008-05-19  Jim Meyering  <meyering@redhat.com>
847
848         avoid a warning from gcc
849         * lib/trim.c (IF_LINT): Define.
850         (trim2): Use it to avoid a "may be used uninitialized" warning.
851
852         Fix doc typo.
853         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
854
855 2008-05-19  Bruno Haible  <bruno@clisp.org>
856
857         * doc/glibc-functions/getpass.texi: Document limits of other
858         implementations.
859
860 2008-05-19  Simon Josefsson  <simon@josefsson.org>
861             Bruno Haible <bruno@clisp.org>
862
863         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
864
865 2008-05-18  Bruno Haible  <bruno@clisp.org>
866
867         * modules/propername: New file, from GNU gettext.
868         * lib/propername.h: New file, from GNU gettext.
869         * lib/propername.c: New file, from GNU gettext.
870         * MODULES.html.sh (Internationalization functions): Add propername.
871
872 2008-05-16  Jim Meyering  <meyering@redhat.com>
873             Bruno Haible  <bruno@clisp.org>
874
875         Avoid some warnings from "gcc -Wshadow".
876         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
877
878 2008-05-15  Eric Blake  <ebb9@byu.net>
879
880         Extend previous patch to cygwin 1.7.0.
881         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
882         fast implementation in cygwin >= 1.7.0.
883         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
884         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
885
886 2008-05-15  Bruno Haible  <bruno@clisp.org>
887
888         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
889         implementation in glibc >= 2.9.
890         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
891         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
892
893 2008-05-15  Bruno Haible  <bruno@clisp.org>
894
895         * MODULES.html.sh (Internationalization functions): Remove linebreak.
896         (Unicode string functions): Add unilbrk/*.
897         Reported by Karl Berry.
898
899 2008-05-15  Eric Blake  <ebb9@byu.net>
900
901         Fix violation of <stdbool.h> replacement in regex.
902         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
903         * lib/regexec.c (re_search_internal): Likewise.
904         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
905
906 2008-05-15  Jim Meyering  <meyering@redhat.com>
907
908         avoid distracting test output when git or cvs is not found
909         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
910         * tests/test-vc-list-files-git.sh: Likewise.
911
912 2008-05-15  Eric Blake  <ebb9@byu.net>
913
914         Glibc finally accepted the memmem speedup code, bugzilla #5514.
915         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
916         glibc version.
917         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
918         * doc/posix-functions/strstr.texi (strstr): Likewise.
919         * lib/str-two-way.h (MAX): Sychronize with glibc.
920
921 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
922
923         * lib/regcomp.c (optimize_utf8): Add a note on why we test
924         opr.ctx_type.
925         (calc_first): Initialize constraint field.
926         (duplicate_node_closure): Use it instead of special casing ANCHORS.
927         Fix grammar.
928         (duplicate_node): Merge constraint field for all node types.
929         (calc_eclosure_iter): Look at constraint field for all node types.
930         * lib/regex_internal.c (create_cd_newstate): Don't look at
931         opr.ctx_type.
932
933 2008-05-14  Bruno Haible  <bruno@clisp.org>
934
935         Help GCC to do better code generation.
936         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
937         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
938         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
939         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
940         Declare with attribute 'malloc' if supported.
941
942 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
943
944         use "echo STR|wc -c" rather than unportable "expr length STR"
945         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
946         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
947
948 2008-05-14  Jim Meyering  <meyering@redhat.com>
949
950         use dd ibs=$n count=1 ... rather than less-portable head -c$n
951         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
952         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
953         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
954         via Collin Lasse.
955
956 2008-05-14  Eric Blake  <ebb9@byu.net>
957
958         Avoid quadratic growth in gl_LIBSOURCES.
959         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
960         Suggested by Bruno Haible.
961
962         Test xmemdup0.
963         * modules/xmemdup0-tests: New file.
964         * tests/test-xmemdup0.c: Likewise.
965
966 2008-05-13  Eric Blake  <ebb9@byu.net>
967
968         Split xmemdup0 into its own module.
969         * modules/xmemdup0: New file.
970         * lib/xmemdup0.h: Likewise.
971         * lib/xmemdup0.c: Likewise.
972         * MODULES.html.sh (Memory management functions): Add xmemdup0.
973         * lib/xalloc.h (xmemdup0): Remove.
974         * lib/xmalloc.c (xmemdup0): Likewise.
975
976 2008-05-13  Eric Blake  <ebb9@byu.net>
977             Bruno Haible  <bruno@clisp.org>
978
979         Reduce number of forks required during autoconf.
980         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
981         and gl_LIBSOURCES_DIR.
982         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
983         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
984         m4_syscmd per file.
985         <m4_foreach_w>: Move...
986         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
987
988 2008-05-13  Eric Blake  <ebb9@byu.net>
989
990         * gnulib-tool: Fix various comment typos.
991
992 2008-05-12  Bruno Haible  <bruno@clisp.org>
993
994         Tailor the linebreaking algorithm.
995         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
996
997 2008-05-12  Bruno Haible  <bruno@clisp.org>
998
999         Update to Unicode 5.0.0.
1000         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
1001         LBP_JV, LBP_JT. Redistribute values.
1002         (unilbrk_table): Change size.
1003         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
1004         Unicode TR#14 rev. 22.
1005         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
1006         LBP_JV, LBP_JT. Redistribute values.
1007         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
1008         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
1009         Update.
1010         * lib/unilbrk/lbrkprop1.h: Regenerated.
1011         * lib/unilbrk/lbrkprop2.h: Regenerated.
1012         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
1013         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
1014         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
1015         Likewise.
1016         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
1017         Likewise.
1018         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
1019         result.
1020         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
1021         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
1022         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
1023         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
1024         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
1025         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
1026
1027 2008-05-11  Bruno Haible  <bruno@clisp.org>
1028
1029         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
1030
1031 2008-05-11  Bruno Haible  <bruno@clisp.org>
1032
1033         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
1034         * modules/unilbrk/gen-lbrk: New file.
1035
1036 2008-05-11  Bruno Haible  <bruno@clisp.org>
1037
1038         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
1039         * m4/sha512.m4 (gl_SHA512): Likewise.
1040
1041 2008-05-11  Jim Meyering  <meyering@redhat.com>
1042
1043         New modules: crypto/sha256, crypto/sha512 (from coreutils)
1044         * modules/crypto/sha256: New file.
1045         * modules/crypto/sha512: Likewise.
1046         * lib/sha256.c: Likewise.
1047         * lib/sha256.h: Likewise.
1048         * lib/sha512.c: Likewise.
1049         * lib/sha512.h: Likewise.
1050         * lib/u64.h: Likewise.
1051         * m4/sha256.m4: Likewise.
1052         * m4/sha512.m4: Likewise.
1053         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
1054
1055 2008-05-10  Bruno Haible  <bruno@clisp.org>
1056
1057         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
1058         (Input/Output <stdio.h>): Add xprintf.
1059         (Signal handling <signal.h>): Add strsignal.
1060         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
1061         (Core language properties): Add func.
1062         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
1063         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
1064         strings.
1065         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
1066         (Input/output): New section.
1067         (File system functions): Add openat-die, stat-macros.
1068         (Networking functions): Add sockets.
1069         (Unicode string functions): Add unictype/*.
1070         (Support for building libraries and executables): Add gperf.
1071         (Support for building documentation): Add agpl-3.0.
1072         (Misc): Add nocrash.
1073
1074 2008-05-10  Bruno Haible  <bruno@clisp.org>
1075
1076         * modules/unictype/gen-ctype: New file.
1077
1078 2008-05-10  Jim Meyering  <meyering@redhat.com>
1079
1080         Make chdir-safer.c more efficient on a system with no symlinks.
1081         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
1082         also if ELOOP is zero.  Suggested by Bruno Haible.
1083
1084         Make chdir-safer.c slightly safer.
1085         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
1086         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
1087
1088         Avoid compile failure on systems without ELOOP (like mingw).
1089         * lib/chdir-safer.c (ELOOP): Define if not already defined.
1090         Reported by Bruno Haible.
1091
1092 2008-05-10  Bruno Haible  <bruno@clisp.org>
1093
1094         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
1095         (is_utf8_encoding): Use a case-insensitive comparison.
1096         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
1097         streq.
1098
1099 2008-05-10  Bruno Haible  <bruno@clisp.org>
1100
1101         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
1102         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
1103         * lib/unilbrk/ulc-common.h (iconv_string_length,
1104         iconv_string_keeping_offsets): Remove declarations.
1105         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
1106         Don't include <iconv.h>, streq.h, xsize.h.
1107         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
1108         conversion.
1109         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
1110         <iconv.h>, streq.h, xsize.h.
1111         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
1112         conversion.
1113         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
1114         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
1115         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
1116         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
1117
1118 2008-05-10  Bruno Haible  <bruno@clisp.org>
1119
1120         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
1121         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
1122
1123         * modules/unilbrk/u32-width-linebreaks-tests: New file.
1124         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
1125
1126         * modules/unilbrk/u16-width-linebreaks-tests: New file.
1127         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
1128
1129         * modules/unilbrk/u8-width-linebreaks-tests: New file.
1130         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
1131
1132         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
1133         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
1134
1135         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
1136         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
1137
1138         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
1139         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
1140
1141         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
1142         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
1143
1144 2008-05-10  Bruno Haible  <bruno@clisp.org>
1145
1146         Split up 'linebreak' module.
1147         * lib/unilbrk.h: New file, based on lib/linebreak.h.
1148         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
1149         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
1150         modifications.
1151         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
1152         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
1153         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
1154         lib/linebreak.c.
1155         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
1156         lib/linebreak.c.
1157         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
1158         lib/linebreak.c.
1159         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
1160         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
1161         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
1162         lib/linebreak.c.
1163         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
1164         lib/linebreak.c.
1165         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
1166         lib/linebreak.c.
1167         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
1168         lib/linebreak.c.
1169         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
1170         lib/linebreak.c.
1171         * modules/unilbrk/base: New file.
1172         * modules/unilbrk/tables: New file.
1173         * modules/unilbrk/u8-possible-linebreaks: New file.
1174         * modules/unilbrk/u16-possible-linebreaks: New file.
1175         * modules/unilbrk/u32-possible-linebreaks: New file.
1176         * modules/unilbrk/ulc-common: New file.
1177         * modules/unilbrk/ulc-possible-linebreaks: New file.
1178         * modules/unilbrk/u8-width-linebreaks: New file.
1179         * modules/unilbrk/u16-width-linebreaks: New file.
1180         * modules/unilbrk/u32-width-linebreaks: New file.
1181         * modules/unilbrk/ulc-width-linebreaks: New file.
1182         * lib/linebreak.h: Remove file.
1183         * lib/linebreak.c: Remove file.
1184         * m4/linebreak.m4: Remove file.
1185         * modules/linebreak: Remove file.
1186         * NEWS: Mention the changes.
1187
1188 2008-05-09  Eric Blake  <ebb9@byu.net>
1189
1190         Add xmemdup0.
1191         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
1192         implementation.
1193         * lib/xmalloc.c (xmemdup0): New C implementation.
1194
1195 2008-05-08  Bruno Haible  <bruno@clisp.org>
1196
1197         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
1198
1199 2008-05-07  Eric Blake  <ebb9@byu.net>
1200
1201         Support cross-compilation of <wctype.h>.
1202         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
1203         AC_CACHE_CHECK.
1204
1205 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
1206
1207         * build-aux/vc-list-files: Add support for bzr.
1208
1209 2008-05-03  Jim Meyering  <meyering@redhat.com>
1210
1211         avoid failed assertion with tight malloc
1212         * tests/test-getndelim2.c: Correct an off-by-one assertion.
1213
1214 2008-05-03  Simon Josefsson  <simon@josefsson.org>
1215
1216         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
1217         are needed from arpa/inet.h.
1218         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
1219         Reported by Bruno Haible.
1220
1221 2008-05-02  Jim Meyering  <meyering@redhat.com>
1222
1223         avoid compilation error on FreeBSD 6
1224         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
1225
1226 2008-05-01  Jim Meyering  <meyering@redhat.com>
1227
1228         useless-if-before-free: correct --help's exit status description
1229         * build-aux/useless-if-before-free (usage): Like grep, exit 0
1230         for one or more matches, etc.  Reported by Bruno Haible.
1231
1232         vc-list-files: make the stand-alone gnulib test work
1233         * modules/vc-list-files-tests (configure.ac):
1234         Define and AC_SUBST abs_aux_dir.
1235         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
1236         $(abs_top_srcdir) to each script and having each of them
1237         duplicate the work of setting PATH, set PATH here, using
1238         the new variable, abs_aux_dir instead.
1239         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
1240         * tests/test-vc-list-files-git.sh: Likewise.
1241         Reported by Bruno Haible.
1242
1243 2008-05-01  Bruno Haible  <bruno@clisp.org>
1244
1245         * lib/getndelim2.c (getndelim2): Fix newsize computation during
1246         reallocation. Rename 'done' to 'found_delimiter'.
1247
1248 2008-05-01  Jim Meyering  <meyering@redhat.com>
1249
1250         vc-list-files: accommodate /bin/sh like the one from Solaris 10
1251         * build-aux/vc-list-files: Use `...`, not $(...).
1252
1253 2008-04-30  Jim Meyering  <meyering@redhat.com>
1254
1255         add tests for vc-list-files
1256         * modules/vc-list-files-tests: New module.
1257         * tests/test-vc-list-files-cvs.sh: New file.
1258         * tests/test-vc-list-files-git.sh: New file.
1259
1260         avoid a warning from gcc
1261         * lib/getndelim2.c (IF_LINT): Define.
1262         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
1263
1264         vc-list-files: work properly with build-aux/cvsu, too
1265         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
1266         to all cvs-based clauses.
1267
1268         vc-list-files: work properly in the CVS+awk case, too
1269         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
1270
1271         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
1272         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
1273         take more than one file argument, so .  Add quotes, just in case $dir
1274         ever contains a shell meta-character.  Prompted by Soren Hansen in
1275         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
1276
1277 2008-04-29  Eric Blake  <ebb9@byu.net>
1278
1279         Optimize getndelim2 to use block operations when possible.
1280         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
1281         freadseek, and memchr2.
1282         * lib/getndelim2.c (getndelim2): Use them for block reads.
1283
1284 2008-04-29  Bruno Haible  <bruno@clisp.org>
1285
1286         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
1287         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
1288         * modules/inet_ntop (Depends-on): Add extensions.
1289         * modules/inet_pton (Depends-on): Likewise.
1290         Reported by Simon Josefsson.
1291
1292 2008-04-29  Jim Meyering  <meyering@redhat.com>
1293
1294         When the is more than one match in a block, match all of them.
1295         * build-aux/useless-if-before-free: Iterate through each block
1296         until there are no more matches.
1297
1298         Fix broken useless-if-before-free script.
1299         * build-aux/useless-if-before-free: Fix typo: missing "?" after
1300         the expression to match cast of argument to free-like function.
1301
1302 2008-04-29  Eric Blake  <ebb9@byu.net>
1303
1304         Use new header.
1305         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
1306
1307 2008-04-29  Jim Meyering  <meyering@redhat.com>
1308
1309         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
1310         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
1311         by gnulib to exist and to declare e.g., inet_ntop.
1312         Don't include "inet_ntop.h", now removed.
1313
1314         * m4/arpa_inet_h.m4: Remove trailing blanks.
1315
1316 2008-04-29  Eric Blake  <ebb9@byu.net>
1317
1318         Silence valgrind on safe reads beyond potential array bounds.
1319         * lib/rawmemchr.valgrind: New file.
1320         * lib/strchrnul.valgrind: Likewise.
1321         * modules/rawmemchr (Files): Distribute new file.
1322         * modules/strchrnul (Files): Likewise.
1323         Suggested by Bruno Haible.
1324
1325 2008-04-29  Bruno Haible  <bruno@clisp.org>
1326
1327         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
1328         (inet_ntop, inet_pton): Change portability warning's wording.
1329         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
1330         Invoke gl_CHECK_NEXT_HEADERS.
1331         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
1332         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
1333         set ARPA_INET_H.
1334         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
1335         * modules/arpa_inet (Description): No longer only for systems that
1336         lack it.
1337         (Depends-on): Add include_next.
1338         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
1339         HAVE_ARPA_INET_H.
1340
1341 2008-04-29  Jim Meyering  <meyering@redhat.com>
1342
1343         * modules/mkdir (License): Re-license as LGPLv2+.
1344
1345 2008-04-29  Bruno Haible  <bruno@clisp.org>
1346
1347         * modules/rawmemchr (Maintainer): Set to Eric.
1348         * modules/strchrnul (Maintainer): Likewise.
1349
1350 2008-04-29  Simon Josefsson  <simon@josefsson.org>
1351
1352         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
1353         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
1354
1355         * modules/arpa_inet (arpa/inet.h): Use them.
1356
1357 2008-04-28  Eric Blake  <ebb9@byu.net>
1358
1359         Test getndelim2.
1360         * modules/getndelim2-tests: New file.
1361         * tests/test-getndelim2.c: Likewise.
1362         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
1363         stream.
1364         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
1365
1366         * MODULES.html.sh: Document new module.
1367
1368 2008-04-20  Bruno Haible  <bruno@clisp.org>
1369
1370         * lib/c-stack.c (die): Use raise.
1371         * modules/c-stack (Depends-on): Add raise.
1372
1373 2008-04-28  Bruno Haible  <bruno@clisp.org>
1374
1375         Expect rpmatch to be declared.
1376         * lib/yesno.c (rpmatch): Remove declaration.
1377
1378         Declare rpmatch.
1379         * lib/stdlib.in.h (rpmatch): New declaration.
1380         * lib/rpmatch.c: Include <stdlib.h> first.
1381         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
1382         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
1383         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
1384         HAVE_RPMATCH.
1385         * modules/rpmatch (Depends-on): Add stdlib, extensions.
1386         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
1387         (Include): Set to <stdlib.h>.
1388         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
1389         HAVE_RPMATCH.
1390         * NEWS: Document the change.
1391
1392 2008-04-28  Bruno Haible  <bruno@clisp.org>
1393
1394         Change rpmatch to use nl_langinfo when appropriate.
1395         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
1396         (N_): New macro.
1397         (localized_pattern): New function/macro.
1398         (try): Remove match, nomatch arguments. Copy the pattern into safe
1399         memory before caching it.
1400         (rpmatch): Use localized_pattern. Add translator comments.
1401         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
1402         Suggested by Eric Blake.
1403         * modules/rpmatch (Depends-on): Add stdbool.
1404
1405 2008-04-28  Eric Blake  <ebb9@byu.net>
1406
1407         Add rawmemchr module, matching glibc.
1408         * modules/string (Makefile.am): New indicator.
1409         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
1410         * lib/string.in.h (rawmemchr): Declare when appropriate.
1411         * modules/rawmemchr: New file.
1412         * m4/rawmemchr.m4: Likewise.
1413         * lib/rawmemchr.c: Likewise.
1414         * modules/rawmemchr-tests: Likewise.
1415         * tests/test-rawmemchr.c: Likewise.
1416         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
1417         module.
1418         * modules/strchrnul (Depends-on): Add rawmemchr.
1419         * lib/strchrnul.c (strchrnul): Optimize a corner case.
1420
1421         Whitespace cleanup.
1422         * tests/test-strchrnul.c: Reindent.
1423         * lib/strchrnul.c: Likewise.
1424
1425         Optimize and test strchrnul.
1426         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
1427         * modules/strchrnul-tests: New file.
1428         * tests/test-strchrnul.c: Likewise.
1429
1430         Remove intprops dependency.
1431         * modules/memchr (Depends-on): Remove intprops.
1432         * modules/memrchr (Depends-on): Likewise.
1433         * modules/memchr2 (Depends-on): Likewise.
1434         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
1435         * lib/memrchr.c (__memrchr): Likewise.
1436         * lib/memrchr2.c (memchr2): Likewise.
1437         Reported by Simon Josefsson.
1438
1439 2008-04-28  Simon Josefsson  <simon@josefsson.org>
1440
1441         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
1442         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1443
1444 2008-04-28  Simon Josefsson  <simon@josefsson.org>
1445
1446         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
1447
1448         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
1449
1450         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
1451
1452         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
1453         declarations.
1454         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
1455
1456         * m4/inet_pton.m4: Don't check for header files.
1457
1458         * m4/inet_ntop.m4: Don't check for header files.
1459
1460 2008-04-28  Simon Josefsson  <simon@josefsson.org>
1461
1462         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
1463         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
1464         trigger for cygwin).
1465         Reported by Bruno Haible  <bruno@clisp.org>.
1466
1467 2008-04-28  Bruno Haible  <bruno@clisp.org>
1468
1469         * doc/posix-functions/strdup.texi: Mention mingw problem.
1470
1471 2008-04-27  Bruno Haible  <bruno@clisp.org>
1472
1473         * modules/stat-time-tests (Depends-on): Add sleep.
1474         * tests/test-stat-time.c (force_unlink): New function.
1475         (cleanup): Use it.
1476         (test_mtime): Remove the ctime related tests.
1477         (test_ctime): New function, containing the ctime related tests.
1478         (main): Call test_ctime, except on native Windows platforms.
1479
1480 2008-04-27  Bruno Haible  <bruno@clisp.org>
1481
1482         * lib/rpmatch.c (rpmatch): Add some comments.
1483         Reported by James Youngman <jay@gnu.org>.
1484
1485 2008-04-27  Bruno Haible  <bruno@clisp.org>
1486
1487         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
1488         quiet NaNs.
1489
1490 2008-04-27  Bruno Haible  <bruno@clisp.org>
1491
1492         Make test-yesno.sh work on mingw.
1493         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
1494         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
1495         (main): Set stdin to binary mode.
1496         * modules/yesno-tests (Depends-on): Add binary-io.
1497
1498 2008-04-27  Bruno Haible  <bruno@clisp.org>
1499
1500         Fix 'isfinite' on x86, x86_64, ia64 platforms.
1501         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
1502         argument that lie outside the IEEE 854 domain.
1503         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
1504         (gl_ISFINITE): Use it.
1505         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
1506
1507 2008-04-27  Bruno Haible  <bruno@clisp.org>
1508
1509         Allow local renaming in config.h.
1510         * lib/memrchr.c (memrchr): Don't undefine outside libc.
1511
1512 2008-04-27  Bruno Haible  <bruno@clisp.org>
1513
1514         * lib/memchr.c (__memchr): Change type of 'i'.
1515         * lib/memchr2.c (memchr2): Likewise.
1516
1517 2008-04-26  Eric Blake  <ebb9@byu.net>
1518         and Bruno Haible  <bruno@clisp.org>
1519
1520         Optimize and test memrchr.
1521         * modules/memrchr (Depends-on): Add intprops.
1522         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
1523         * modules/memrchr-tests: New file.
1524         * tests/test-memrchr.c: New file.
1525
1526 2008-04-26  Bruno Haible  <bruno@clisp.org>
1527
1528         Add tentative support for DragonFly BSD.
1529         * lib/stdio-impl.h: Add macros for DragonFly BSD.
1530         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
1531         fp.
1532         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
1533         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
1534         * lib/fpurge.c (fpurge): Likewise.
1535         * lib/freadable.c (freaadable): Likewise.
1536         * lib/freadahead.c (freadahead): Likewise.
1537         * lib/freading.c (freading): Likewise.
1538         * lib/freadptr.c (freadptr): Likewise.
1539         * lib/freadseek.c (freadptrinc): Likewise.
1540         * lib/fseeko.c (fseeko): Likewise.
1541         * lib/fseterr.c (fseterr): Likewise.
1542         * lib/fwritable.c (fwritable): Likewise.
1543         * lib/fwriting.c (fwriting): Likewise.
1544
1545 2008-04-26  Bruno Haible  <bruno@clisp.org>
1546
1547         * lib/stdio-impl.h: New file.
1548         * lib/fbufmode.c: Include stdio-impl.h.
1549         (fbufmode): Use fp_, remove redundant #defines.
1550         * lib/fflush.c: Include stdio-impl.h.
1551         (clear_ungetc_buffer): Remove redundant #defines.
1552         * lib/fpurge.c: Include stdio-impl.h.
1553         (fpurge): Remove redundant #defines.
1554         * lib/freadable.c: Include stdio-impl.h.
1555         (freadable): Remove redundant #defines.
1556         * lib/freadahead.c: Include stdio-impl.h.
1557         (freadahead): Remove redundant #defines.
1558         * lib/freading.c: Include stdio-impl.h.
1559         (freading): Remove redundant #defines.
1560         * lib/freadptr.c: Include stdio-impl.h.
1561         (freadptr): Remove redundant #defines.
1562         * lib/freadseek.c: Include stdio-impl.h.
1563         (freadptrinc): Remove redundant #defines.
1564         * lib/fseeko.c: Include stdio-impl.h.
1565         (rpl_fseeko): Remove redundant #defines.
1566         * lib/fseterr.c: Include stdio-impl.h.
1567         (fseterr): Remove redundant #defines.
1568         * lib/fwritable.c: Include stdio-impl.h.
1569         (fwritable: Remove redundant #defines.
1570         * lib/fwriting.c: Include stdio-impl.h.
1571         (fwriting): Remove redundant #defines.
1572         * modules/fbufmode (Files): Add lib/stdio-impl.h.
1573         * modules/fflush (Files): Likewise.
1574         * modules/fpurge (Files): Likewise.
1575         * modules/freadable (Files): Likewise.
1576         * modules/freadahead (Files): Likewise.
1577         * modules/freading (Files): Likewise.
1578         * modules/freadptr (Files): Likewise.
1579         * modules/freadseek (Files): Likewise.
1580         * modules/fseeko (Files): Likewise.
1581         * modules/fseterr (Files): Likewise.
1582         * modules/fwritable (Files): Likewise.
1583         * modules/fwriting (Files): Likewise.
1584
1585 2008-04-26  Bruno Haible  <bruno@clisp.org>
1586
1587         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
1588         restore_seek_optimization, update_fpos_cache): New functions, extracted
1589         from rpl_fflush.
1590         (rpl_fflush): Use them.
1591         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
1592         (gl_REPLACE_FFLUSH): Use it.
1593
1594 2008-04-26  Bruno Haible  <bruno@clisp.org>
1595
1596         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
1597         on Solaris.
1598         * tests/test-xstrtoimax.sh: Likewise.
1599         * tests/test-xstrtoumax.sh: Likewise.
1600         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1601
1602 2008-04-26  Bruno Haible  <bruno@clisp.org>
1603
1604         * modules/memchr-tests: New file.
1605         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
1606
1607 2008-04-26  Eric Blake  <ebb9@byu.net>
1608             Bruno Haible  <bruno@clisp.org>
1609
1610         * lib/memchr.c: Include intprops.h.
1611         (__memchr): Optimize parallel detection of matching bytes. Rename local
1612         variables. Add explanatory comments.
1613
1614 2008-04-26  Bruno Haible  <bruno@clisp.org>
1615
1616         Fix module 'memchr', broken since 2000-10-28.
1617         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
1618
1619 2008-04-26  Bruno Haible  <bruno@clisp.org>
1620
1621         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
1622         comments.
1623
1624 2008-04-25  Eric Blake  <ebb9@byu.net>
1625
1626         Use native fstatat on cygwin 1.7.0.
1627         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
1628         first.
1629
1630 2008-04-23  Eric Blake  <ebb9@byu.net>
1631
1632         Improve memchr2 performance.
1633         * lib/memchr2.c (memchr2): Further optimize parallel detection of
1634         NUL bytes.
1635         * modules/memchr2 (Depends-on): Use intprops.h.
1636
1637 2008-04-23  Simon Josefsson  <simon@josefsson.org>
1638
1639         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
1640         an inline function instead of a CPP macro.  Patch by Ben Pfaff
1641         <blp@cs.stanford.edu>.
1642
1643 2008-04-23  Simon Josefsson  <simon@josefsson.org>
1644
1645         * lib/arpa_inet.in.h: New file.
1646
1647         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
1648         (Makefile.am): Sed in substitute header file.
1649
1650         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
1651         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
1652
1653         * modules/inet_ntop (configure.ac): Use
1654         gl_ARPA_INET_MODULE_INDICATOR.
1655
1656         * modules/inet_pton (configure.ac): Use
1657         gl_ARPA_INET_MODULE_INDICATOR.
1658
1659 2008-04-22  Jim Meyering  <meyering@redhat.com>
1660
1661         * modules/verify (License): Re-license as LGPLv2+.
1662
1663 2008-04-22  Simon Josefsson  <simon@josefsson.org>
1664
1665         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
1666         parameter to void* as per POSIX standard (MinGW uses char*).
1667
1668 2008-04-21  Bruno Haible  <bruno@clisp.org>
1669
1670         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
1671         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
1672         Define to replacements if REPLACE_ISWCNTRL is 1.
1673         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
1674         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
1675         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
1676         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
1677         what it fixes.
1678         * doc/posix-functions/iswalpha.texi: Likewise.
1679         * doc/posix-functions/iswblank.texi: Likewise.
1680         * doc/posix-functions/iswcntrl.texi: Likewise.
1681         * doc/posix-functions/iswdigit.texi: Likewise.
1682         * doc/posix-functions/iswgraph.texi: Likewise.
1683         * doc/posix-functions/iswlower.texi: Likewise.
1684         * doc/posix-functions/iswprint.texi: Likewise.
1685         * doc/posix-functions/iswpunct.texi: Likewise.
1686         * doc/posix-functions/iswspace.texi: Likewise.
1687         * doc/posix-functions/iswupper.texi: Likewise.
1688         * doc/posix-functions/iswxdigit.texi: Likewise.
1689         Reported by Alain Guibert.
1690
1691 2008-04-21  Bruno Haible  <bruno@clisp.org>
1692
1693         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
1694         Patch by Alain Guibert.
1695
1696 2008-04-21  Bruno Haible  <bruno@clisp.org>
1697
1698         Fix test failures on mingw.
1699         * tests/test-xstrtol.c (print_no_progname): New function.
1700         (main): Install it in error_print_progname hook.
1701         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
1702         * tests/test-xstrtoimax.sh: Likewise.
1703         * tests/test-xstrtoumax.sh: Likewise.
1704
1705 2008-04-21  Bruno Haible  <bruno@clisp.org>
1706
1707         Fix test failure on mingw.
1708         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
1709
1710 2008-04-21  Bruno Haible  <bruno@clisp.org>
1711
1712         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
1713         Actually assign a value.
1714
1715 2008-04-20  Bruno Haible  <bruno@clisp.org>
1716
1717         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
1718         take 2.
1719         * lib/canonicalize.c (canonicalize_file_name): Elide if the
1720         'canonicalize-lgpl' module is also used.
1721         * lib/canonicalize-lgpl.c: Undo last change.
1722         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
1723
1724 2008-04-20  Bruno Haible  <bruno@clisp.org>
1725
1726         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
1727         config.h. Provide _mkdir based fallback for mingw.
1728         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
1729         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
1730         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
1731         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
1732         rather than defining mkdir in config.h.
1733         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
1734         (gl_SYS_STAT_H_DEFAULTS): New macro.
1735         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
1736         HAVE_IO_H any more.
1737         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
1738         HAVE_DECL_MKDIR and HAVE_IO_H.
1739
1740 2008-04-20  Bruno Haible  <bruno@clisp.org>
1741
1742         * lib/isapipe.c: Port to native Windows platforms.
1743
1744 2008-04-20  Bruno Haible  <bruno@clisp.org>
1745
1746         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
1747
1748 2008-04-21  Eric Blake  <ebb9@byu.net>
1749
1750         Work around preprocessors that don't handle UINTMAX_MAX.
1751         * lib/memchr2.c (memchr2): Avoid embedded #if.
1752         Reported by Alain Guibert, fix suggested by Bruno Haible.
1753
1754 2008-04-21  Simon Josefsson  <simon@josefsson.org>
1755
1756         * doc/posix-functions/strftime.texi (strftime): Explain better
1757         Windows incompatibility.  Suggested by Micah Cowan
1758         <micah@cowan.name>.
1759
1760 2008-04-20  Bruno Haible  <bruno@clisp.org>
1761
1762         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
1763         unistr/u8-mblen.
1764
1765 2008-04-20  Bruno Haible  <bruno@clisp.org>
1766
1767         Fix test failure on platforms with non-GNU iconv.
1768         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
1769         (U_TO_U8): Use it, rather than u16_to_u8.
1770         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
1771         units at the end of the input string.
1772         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
1773
1774 2008-04-20  Bruno Haible  <bruno@clisp.org>
1775
1776         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
1777         when the resulting length is 0.
1778         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
1779
1780 2008-04-20  Bruno Haible  <bruno@clisp.org>
1781
1782         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
1783         works.
1784         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
1785
1786 2008-04-20  Bruno Haible  <bruno@clisp.org>
1787
1788         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
1789         * modules/tsearch-tests (configure.ac): Test for initstate function.
1790
1791 2008-04-20  Bruno Haible  <bruno@clisp.org>
1792
1793         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
1794         for nlink_t if missing.
1795         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
1796
1797 2008-04-19  Bruno Haible  <bruno@clisp.org>
1798
1799         Work around snprintf bug on Linux libc5.
1800         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
1801         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
1802         gl_SNPRINTF_SIZE1.
1803         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
1804         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
1805         that test failed.
1806         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
1807         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
1808         * modules/snprintf (Files): Add m4/printf.m4.
1809         * modules/vsnprintf (Files): Likewise.
1810         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
1811         * doc/posix-functions/vsnprintf.texi: Likewise.
1812
1813 2008-04-19  Bruno Haible  <bruno@clisp.org>
1814
1815         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
1816         from 0.0058 to less than 10^-7.
1817
1818 2008-04-19  Bruno Haible  <bruno@clisp.org>
1819
1820         Fix rounding when a precision is given.
1821         * lib/vasnprintf.c (is_borderline): New function.
1822         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
1823         9...9x.
1824         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
1825         %e, %g.
1826         * tests/test-vasprintf-posix.c (test_function): Likewise.
1827         * tests/test-snprintf-posix.h (test_function): Likewise.
1828         * tests/test-sprintf-posix.h (test_function): Likewise.
1829         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
1830         * tests/test-printf-posix.h (test_function): Likewise.
1831         * tests/test-printf-posix.output: Update.
1832         Reported by John Darrington <john@darrington.wattle.id.au> via
1833         Ben Pfaff <blp@cs.stanford.edu>.
1834
1835 2008-04-18  Simon Josefsson  <simon@josefsson.org>
1836
1837         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
1838         Suggested by Bruno Haible <bruno@clisp.org>.
1839
1840 2008-04-17  Bruno Haible  <bruno@clisp.org>
1841
1842         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
1843         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
1844         implementation.
1845         Patch by Bruce Merry <bmerry@gmail.com>.
1846
1847 2008-04-17  Simon Josefsson  <simon@josefsson.org>
1848
1849         * doc/posix-functions/strftime.texi (strftime): Mention that %e
1850         doesn't work under Windows.
1851
1852 2008-04-16  Bruno Haible  <bruno@clisp.org>
1853
1854         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
1855         New macros.
1856         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
1857         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
1858         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
1859         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
1860         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
1861         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
1862         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
1863         macros.
1864         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
1865         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
1866         Northern Sotho, Uighur.
1867
1868 2008-04-16  Bruno Haible  <bruno@clisp.org>
1869
1870         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
1871         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
1872         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
1873         Reported by Daniel Bergström <daniel@octocode.com>.
1874
1875 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
1876             Bruno Haible  <bruno@clisp.org>
1877
1878         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
1879         function.
1880         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
1881         New functions, mostly extracted from gl_locale_name_default.
1882         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
1883
1884 2008-04-16  Eric Blake  <ebb9@byu.net>
1885
1886         Adjust strtod detection to catch glibc 2.7 bug.
1887         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
1888         Reported by John Gatewood Ham.
1889
1890 2008-04-16  Bruno Haible  <bruno@clisp.org>
1891
1892         Add tentative support for Linux libc5.
1893         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
1894         * lib/fpurge.c (fpurge): Likewise.
1895         * lib/freadable.c (freadable): Likewise.
1896         * lib/freadahead.c (freadahead): Likewise.
1897         * lib/freading.c (freading): Likewise.
1898         * lib/freadptr.c (freadptr): Likewise.
1899         * lib/freadseek.c (freadptrinc): Likewise.
1900         * lib/fseeko.c (rpl_fseeko): Likewise.
1901         * lib/fseterr.c (fseterr): Likewise.
1902         * lib/fwritable.c (fwritable): Likewise.
1903         * lib/fwriting.c (fwriting): Likewise.
1904         Reported by Alain Guibert <alguibert+bts@free.fr>.
1905
1906 2008-04-15  Bruno Haible  <bruno@clisp.org>
1907
1908         * modules/mathl (configure.ac): Define module indicator.
1909
1910 2008-04-15  Bruno Haible  <bruno@clisp.org>
1911
1912         * lib/logl.c (logl): Remove unused variables.
1913
1914 2008-04-15  Bruno Haible  <bruno@clisp.org>
1915
1916         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
1917         fails.
1918
1919 2008-04-15  Bruno Haible  <bruno@clisp.org>
1920
1921         * lib/trim.c (trim2): Fix argument of isspace() macro.
1922
1923 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
1924
1925         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
1926         to 0.
1927         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
1928
1929 2008-04-14  Bruno Haible  <bruno@clisp.org>
1930
1931         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
1932         AC_LANG_PROGRAM argument.
1933         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
1934         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
1935         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
1936         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
1937         * m4/math_h.m4 (gl_MATH_H): Likewise.
1938         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
1939         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
1940         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
1941         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
1942         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
1943         * m4/regex.m4 (gl_REGEX): Likewise.
1944         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
1945         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
1946         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1947         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
1948         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
1949         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
1950         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
1951         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
1952
1953 2008-04-14  Jim Meyering  <meyering@redhat.com>
1954
1955         test-strtod: fix typos: s/abs/fabs/
1956         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
1957
1958 2008-04-13  Bruno Haible  <bruno@clisp.org>
1959
1960         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
1961         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
1962         module is also used and while not building the reloc-wrapper.
1963
1964 2008-04-13  Bruno Haible  <bruno@clisp.org>
1965
1966         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
1967
1968 2008-04-13  Bruno Haible  <bruno@clisp.org>
1969
1970         Fix AIX compilation failure introduced on 2008-04-02.
1971         * tests/test-frexp.c (exp): Undefine before redefining.
1972         * tests/test-frexpl.c (exp): Likewise.
1973
1974 2008-04-13  Bruno Haible  <bruno@clisp.org>
1975
1976         Work around a HP-UX stdio bug.
1977         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
1978         * tests/test-ftello.c (main): Likewise.
1979         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
1980         * doc/posix-functions/ftello.texi: Likewise.
1981
1982 2008-04-13  Bruno Haible  <bruno@clisp.org>
1983
1984         Make test-signbit pass on HP-UX/hppa.
1985         * tests/test-signbit.c (minus_zerol): New variable.
1986         (test_signbitl): Use it.
1987
1988 2008-04-13  Bruno Haible  <bruno@clisp.org>
1989
1990         Make truncl work on OSF/1 4.0.
1991         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
1992         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
1993         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
1994         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
1995         HAVE_DECL_TRUNCL.
1996         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
1997         HAVE_DECL_TRUNCL.
1998         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
1999
2000 2008-04-13  Bruno Haible  <bruno@clisp.org>
2001
2002         * lib/unictype.h: Remove trailing comma from enumeration definitions.
2003
2004 2008-04-13  Bruno Haible  <bruno@clisp.org>
2005
2006         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
2007         expression, so as to avoid HP-UX 11 cc compiler bug.
2008
2009 2008-04-13  Bruno Haible  <bruno@clisp.org>
2010
2011         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
2012
2013 2008-04-13  Bruno Haible  <bruno@clisp.org>
2014
2015         * lib/git-merge-changelog.c: Remove empty declaration outside of
2016         functions.
2017
2018 2008-04-13  Bruno Haible  <bruno@clisp.org>
2019
2020         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
2021
2022 2008-04-13  Bruno Haible  <bruno@clisp.org>
2023
2024         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
2025         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
2026         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
2027         also if it exists but lacks definitions of the SHUT_* macros.
2028         * modules/sys_socket (Description): Update.
2029         Reported by Elbert Pol <e.pol@chello.nl>.
2030
2031 2008-04-13  Bruno Haible  <bruno@clisp.org>
2032
2033         * lib/localcharset.c (OS2): Don't redefine if already defined.
2034         Reported by Elbert Pol <e.pol@chello.nl>.
2035
2036 2008-04-13  Bruno Haible  <bruno@clisp.org>
2037
2038         * lib/binary-io.h [__EMX__]: Include <io.h>.
2039         Reported by Elbert Pol <e.pol@chello.nl>.
2040
2041 2008-04-12  Bruno Haible  <bruno@clisp.org>
2042
2043         * lib/fpucw.h: Enable the definitions also for x86_64.
2044         Needed for NetBSD/x86_64.
2045         Reported by Thomas Klausner <tk@giga.or.at>.
2046
2047 2008-04-12  Bruno Haible  <bruno@clisp.org>
2048
2049         * tests/test-strtod.c: Include isnand.h.
2050         (main): Use isnand instead of isnan.
2051         Reported by Jim Meyering.
2052
2053 2008-04-12  Bruno Haible  <bruno@clisp.org>
2054
2055         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
2056         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
2057
2058 2008-04-12  Jim Meyering  <meyering@redhat.com>
2059
2060         * m4/math_h.m4 (gl_MATH_H): Fix typos.
2061
2062 2008-04-12  Bruno Haible  <bruno@clisp.org>
2063
2064         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
2065         Reported by Elbert Pol <e.pol@chello.nl>.
2066
2067 2008-04-12  Eric Blake  <ebb9@byu.net>
2068
2069         Work around Solaris 10 math.h bug.
2070         * m4/math_h.m4 (gl_MATH_H): Check for bug.
2071         (gl_MATH_H_DEFAULTS): Set up default.
2072         * modules/math (Makefile.am): Replace new indicators.
2073         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
2074         * tests/test-math.c (main): Test this.
2075         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
2076         * doc/posix-headers/math.texi (math.h): Mention bug.
2077         Reported by Nelson H. F. Beebe and Jim Meyering.
2078
2079 2008-04-11  Bruno Haible  <bruno@clisp.org>
2080
2081         Adapt to future versions of Apple GCC.
2082         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
2083         Reported by Peter O'Gorman <peter@pogma.com>.
2084
2085 2008-04-11  Bruno Haible  <bruno@clisp.org>
2086
2087         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
2088
2089 2008-04-11  Bruno Haible  <bruno@clisp.org>
2090
2091         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
2092
2093         * modules/getaddrinfo-tests (Makefile.am): Define
2094         test_getaddrinfo_LDADD.
2095
2096 2008-04-11  Bruno Haible  <bruno@clisp.org>
2097
2098         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
2099         (init): Fix syntax error.
2100         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
2101         is declared.
2102
2103 2008-04-11  Bruno Haible  <bruno@clisp.org>
2104
2105         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
2106         * modules/glob (Depends-on): Add stdbool.
2107
2108 2008-04-11  Bruno Haible  <bruno@clisp.org>
2109
2110         * lib/trim.c: Include <string.h>.
2111
2112 2008-04-11  Eric Blake  <ebb9@byu.net>
2113
2114         Avoid compile failure on OS/2.
2115         * lib/regex_internal.h (internal_function): Disable optimization
2116         on OS/2 (__EMX__), where it caused compiler error.
2117         Reported by Elbert Pol.
2118
2119 2008-04-11  Bruno Haible  <bruno@clisp.org>
2120
2121         Flush the standard error stream before aborting. Needed on mingw.
2122         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
2123         * tests/test-array_list.c (ASSERT): Likewise.
2124         * tests/test-array_oset.c (ASSERT): Likewise.
2125         * tests/test-avltree_list.c (ASSERT): Likewise.
2126         * tests/test-avltree_oset.c (ASSERT): Likewise.
2127         * tests/test-avltreehash_list.c (ASSERT): Likewise.
2128         * tests/test-binary-io.c (ASSERT): Likewise.
2129         * tests/test-byteswap.c (ASSERT): Likewise.
2130         * tests/test-c-ctype.c (ASSERT): Likewise.
2131         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
2132         * tests/test-c-strcasestr.c (ASSERT): Likewise.
2133         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
2134         * tests/test-c-strstr.c (ASSERT): Likewise.
2135         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
2136         * tests/test-canonicalize.c (ASSERT): Likewise.
2137         * tests/test-carray_list.c (ASSERT): Likewise.
2138         * tests/test-ceilf1.c (ASSERT): Likewise.
2139         * tests/test-ceilf2.c (ASSERT): Likewise.
2140         * tests/test-ceill.c (ASSERT): Likewise.
2141         * tests/test-count-one-bits.c (ASSERT): Likewise.
2142         * tests/test-fbufmode.c (ASSERT): Likewise.
2143         * tests/test-fflush2.c (ASSERT): Likewise.
2144         * tests/test-floorf1.c (ASSERT): Likewise.
2145         * tests/test-floorf2.c (ASSERT): Likewise.
2146         * tests/test-floorl.c (ASSERT): Likewise.
2147         * tests/test-fopen.c (ASSERT): Likewise.
2148         * tests/test-fpending.c (ASSERT): Likewise.
2149         * tests/test-fprintf-posix.c (ASSERT): Likewise.
2150         * tests/test-fpurge.c (ASSERT): Likewise.
2151         * tests/test-freadable.c (ASSERT): Likewise.
2152         * tests/test-freadahead.c (ASSERT): Likewise.
2153         * tests/test-freading.c (ASSERT): Likewise.
2154         * tests/test-freadptr.c (ASSERT): Likewise.
2155         * tests/test-freadptr2.c (ASSERT): Likewise.
2156         * tests/test-freadseek.c (ASSERT): Likewise.
2157         * tests/test-freopen.c (ASSERT): Likewise.
2158         * tests/test-frexp.c (ASSERT): Likewise.
2159         * tests/test-frexpl.c (ASSERT): Likewise.
2160         * tests/test-fseek.c (ASSERT): Likewise.
2161         * tests/test-fseeko.c (ASSERT): Likewise.
2162         * tests/test-fstrcmp.c (ASSERT): Likewise.
2163         * tests/test-ftell.c (ASSERT): Likewise.
2164         * tests/test-ftello.c (ASSERT): Likewise.
2165         * tests/test-func.c (ASSERT): Likewise.
2166         * tests/test-fwritable.c (ASSERT): Likewise.
2167         * tests/test-fwriting.c (ASSERT): Likewise.
2168         * tests/test-getdelim.c (ASSERT): Likewise.
2169         * tests/test-getline.c (ASSERT): Likewise.
2170         * tests/test-i-ring.c (ASSERT): Likewise.
2171         * tests/test-iconv-utf.c (ASSERT): Likewise.
2172         * tests/test-iconv.c (ASSERT): Likewise.
2173         * tests/test-isfinite.c (ASSERT): Likewise.
2174         * tests/test-isnand.c (ASSERT): Likewise.
2175         * tests/test-isnanf.c (ASSERT): Likewise.
2176         * tests/test-isnanl.h (ASSERT): Likewise.
2177         * tests/test-ldexpl.c (ASSERT): Likewise.
2178         * tests/test-linked_list.c (ASSERT): Likewise.
2179         * tests/test-linkedhash_list.c (ASSERT): Likewise.
2180         * tests/test-localename.c (ASSERT): Likewise.
2181         * tests/test-lseek.c (ASSERT): Likewise.
2182         * tests/test-mbscasecmp.c (ASSERT): Likewise.
2183         * tests/test-mbscasestr1.c (ASSERT): Likewise.
2184         * tests/test-mbscasestr2.c (ASSERT): Likewise.
2185         * tests/test-mbscasestr3.c (ASSERT): Likewise.
2186         * tests/test-mbscasestr4.c (ASSERT): Likewise.
2187         * tests/test-mbschr.c (ASSERT): Likewise.
2188         * tests/test-mbscspn.c (ASSERT): Likewise.
2189         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
2190         * tests/test-mbspbrk.c (ASSERT): Likewise.
2191         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
2192         * tests/test-mbsrchr.c (ASSERT): Likewise.
2193         * tests/test-mbsspn.c (ASSERT): Likewise.
2194         * tests/test-mbsstr1.c (ASSERT): Likewise.
2195         * tests/test-mbsstr2.c (ASSERT): Likewise.
2196         * tests/test-mbsstr3.c (ASSERT): Likewise.
2197         * tests/test-memchr2.c (ASSERT): Likewise.
2198         * tests/test-memmem.c (ASSERT): Likewise.
2199         * tests/test-open.c (ASSERT): Likewise.
2200         * tests/test-printf-frexp.c (ASSERT): Likewise.
2201         * tests/test-printf-frexpl.c (ASSERT): Likewise.
2202         * tests/test-printf-posix.c (ASSERT): Likewise.
2203         * tests/test-quotearg.c (ASSERT): Likewise.
2204         * tests/test-rbtree_list.c (ASSERT): Likewise.
2205         * tests/test-rbtree_oset.c (ASSERT): Likewise.
2206         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
2207         * tests/test-round1.c (ASSERT): Likewise.
2208         * tests/test-roundf1.c (ASSERT): Likewise.
2209         * tests/test-roundl.c (ASSERT): Likewise.
2210         * tests/test-signbit.c (ASSERT): Likewise.
2211         * tests/test-sleep.c (ASSERT): Likewise.
2212         * tests/test-snprintf-posix.c (ASSERT): Likewise.
2213         * tests/test-snprintf.c (ASSERT): Likewise.
2214         * tests/test-sprintf-posix.c (ASSERT): Likewise.
2215         * tests/test-stat-time.c (ASSERT): Likewise.
2216         * tests/test-strcasestr.c (ASSERT): Likewise.
2217         * tests/test-strerror.c (ASSERT): Likewise.
2218         * tests/test-striconv.c (ASSERT): Likewise.
2219         * tests/test-striconveh.c (ASSERT): Likewise.
2220         * tests/test-striconveha.c (ASSERT): Likewise.
2221         * tests/test-strsignal.c (ASSERT): Likewise.
2222         * tests/test-strstr.c (ASSERT): Likewise.
2223         * tests/test-strtod.c (ASSERT): Likewise.
2224         * tests/test-trunc1.c (ASSERT): Likewise.
2225         * tests/test-trunc2.c (ASSERT): Likewise.
2226         * tests/test-truncf1.c (ASSERT): Likewise.
2227         * tests/test-truncf2.c (ASSERT): Likewise.
2228         * tests/test-truncl.c (ASSERT): Likewise.
2229         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
2230         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
2231         * tests/test-vasnprintf.c (ASSERT): Likewise.
2232         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
2233         * tests/test-vasprintf.c (ASSERT): Likewise.
2234         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
2235         * tests/test-vprintf-posix.c (ASSERT): Likewise.
2236         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
2237         * tests/test-vsnprintf.c (ASSERT): Likewise.
2238         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
2239         * tests/test-wcwidth.c (ASSERT): Likewise.
2240         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
2241         * tests/test-xprintf-posix.c (ASSERT): Likewise.
2242         * tests/test-xvasprintf.c (ASSERT): Likewise.
2243         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
2244         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
2245         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
2246         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
2247         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
2248         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
2249         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
2250         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
2251         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
2252         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
2253         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
2254         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
2255         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
2256         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
2257         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
2258         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
2259         * tests/unictype/test-block_list.c (ASSERT): Likewise.
2260         * tests/unictype/test-block_of.c (ASSERT): Likewise.
2261         * tests/unictype/test-block_test.c (ASSERT): Likewise.
2262         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
2263         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
2264         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
2265         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
2266         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
2267         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
2268         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
2269         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
2270         * tests/unictype/test-combining.c (ASSERT): Likewise.
2271         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
2272         * tests/unictype/test-digit.c (ASSERT): Likewise.
2273         * tests/unictype/test-mirror.c (ASSERT): Likewise.
2274         * tests/unictype/test-numeric.c (ASSERT): Likewise.
2275         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
2276         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
2277         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
2278         * tests/unictype/test-scripts.c (ASSERT): Likewise.
2279         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
2280         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
2281         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
2282         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
2283         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
2284         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
2285         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
2286         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
2287         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
2288         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
2289         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
2290         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
2291         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
2292         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
2293         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
2294         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
2295         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
2296         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
2297         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
2298         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
2299         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
2300         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
2301         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
2302         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
2303         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
2304         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
2305         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
2306         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
2307         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
2308         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
2309         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
2310         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
2311         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
2312         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
2313         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
2314         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
2315         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
2316         Reported by Eric Blake.
2317
2318 2008-04-11  Bruno Haible  <bruno@clisp.org>
2319
2320         * lib/wchar.in.h: Tweak comment.
2321
2322 2008-04-11  Bruno Haible  <bruno@clisp.org>
2323
2324         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
2325         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
2326         gl_COMMON.
2327         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
2328
2329 2008-04-11  Bruno Haible  <bruno@clisp.org>
2330
2331         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
2332
2333 2008-04-11  Simon Josefsson  <simon@josefsson.org>
2334
2335         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
2336         of attempting to use non-existing /dev/*random.  Based on patch
2337         from Adam Strzelecki <ono@java.pl> in
2338         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
2339
2340 2008-04-08  Bruno Haible  <bruno@clisp.org>
2341
2342         Add tentative support for emx+gcc.
2343         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
2344         * lib/fpurge.c (fpurge): Likewise.
2345         * lib/freadable.c (freadable): Likewise.
2346         * lib/freadahead.c (freadahead): Likewise.
2347         * lib/freading.c (freading): Likewise.
2348         * lib/freadptr.c (freadptr): Likewise.
2349         * lib/freadseek.c (freadptrinc): Likewise.
2350         * lib/fseeko.c (rpl_fseeko): Likewise.
2351         * lib/fseterr.c (fseterr): Likewise.
2352         * lib/fwritable.c (fwritable): Likewise.
2353         * lib/fwriting.c (fwriting): Likewise.
2354         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
2355
2356 2008-04-09  Eric Blake  <ebb9@byu.net>
2357
2358         Avoid some autoconf warnings.
2359         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
2360         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
2361         * m4/afs.m4 (gl_AFS): Likewise.
2362         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
2363         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
2364         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2365         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
2366         (gl_INTEGER_TYPE_SUFFIX): Likewise.
2367         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
2368         (AC_CHECK_DECLS_ONCE): Likewise.
2369         Rename file...
2370         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
2371         gnulib-tool requires autoconf 2.59 or better.
2372         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
2373
2374 2008-04-08  Eric Blake  <ebb9@byu.net>
2375
2376         Use 'git describe --match' if present (added in git 1.5.5).
2377         * build-aux/git-version-gen: Limit result to tags that match 'v*'
2378         if possible.
2379
2380 2008-04-08  Bruno Haible  <bruno@clisp.org>
2381
2382         Add tentative support for OpenServer.
2383         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
2384         _ptr, _cnt.
2385         * lib/fpurge.c (fpurge): Likewise.
2386         * lib/freadable.c (freadable): Likewise.
2387         * lib/freadahead.c (freadahead): Likewise.
2388         * lib/freading.c (freading): Likewise.
2389         * lib/freadptr.c (freadptr): Likewise.
2390         * lib/freadseek.c (freadptrinc): Likewise.
2391         * lib/fseeko.c (rpl_fseeko): Likewise.
2392         * lib/fseterr.c (fseterr): Likewise.
2393         * lib/fwritable.c (fwritable): Likewise.
2394         * lib/fwriting.c (fwriting): Likewise.
2395         Reported by Roger Cornelius <rac@tenzing.org> and
2396         Brian K. White <brian@aljex.com>.
2397
2398 2008-04-06  Jim Meyering  <meyering@redhat.com>
2399
2400         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
2401
2402 2008-04-06  Bruno Haible  <bruno@clisp.org>
2403
2404         Avoid possible error with non-ASCII bytes in UTF-8 locales.
2405         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
2406         * tests/test-printf-posix.sh: Likewise.
2407         * tests/test-vfprintf-posix.sh: Likewise.
2408         * tests/test-vprintf-posix.sh: Likewise.
2409         * tests/test-xprintf-posix.sh: Likewise.
2410
2411 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2412
2413         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
2414         hide error from 'ls', needed on OS/2.
2415         Report by Elbert Pol <elbert.pol@gmail.com>.
2416
2417 2008-04-04  Eric Blake  <ebb9@byu.net>
2418
2419         Make test-fseeko.c failures meaningful.
2420         * tests/test-fseeko.c: Print line number on failure.
2421         * tests/test-fseek.c: Likewise.
2422         Reported by Nelson H. F. Beebe.
2423
2424         Improve strtod bug detection check.
2425         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
2426         required for Solaris 10.
2427         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
2428
2429 2008-04-04  Bruno Haible  <bruno@clisp.org>
2430
2431         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
2432         by m4/setenv.m4.
2433
2434 2008-04-03  Eric Blake  <ebb9@byu.net>
2435
2436         Ensure sane .version contents.
2437         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
2438         version string.
2439         * build-aux/git-version-gen: Improve documentation.
2440
2441         Make GNU make output nicer.
2442         * top/GNUmakefile [!_have-Makefile]: Add dependency on
2443         MAKECMDGOALS to enforce message for all command line targets.  Set
2444         srcdir for use in maint.mk.
2445
2446         Another maintainer tweak.
2447         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
2448         a target that regenerates version.
2449
2450 2008-04-03  Jim Meyering  <meyering@redhat.com>
2451
2452         vc-list-files: don't cause coreutils "make po-check" failure
2453         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
2454
2455 2008-04-03  Eric Blake  <ebb9@byu.net>
2456
2457         Allow VPATH usage of vc-list-files.
2458         * build-aux/vc-list-files (scriptversion): Add timestamp.
2459         (options): Add --help, --version, -C.
2460         (CVS): Support installed cvsu.
2461
2462 2008-04-02  Bruno Haible  <bruno@clisp.org>
2463
2464         Avoid some "statement with no effect" warnings from gcc.
2465         * tests/test-wctype.c (main): Explicitly ignore unused values.
2466         Reported by Jim Meyering.
2467
2468 2008-04-02  Jim Meyering  <meyering@redhat.com>
2469
2470         Avoid some warnings from "gcc -Wshadow".
2471         * tests/test-frexp.c (exp): Define to a different identifier.
2472         * tests/test-frexpl.c (exp): Likewise.
2473
2474 2008-04-03  Jim Meyering  <meyering@redhat.com>
2475
2476         bootstrap: remove dangling *.[ch] symlinks from lib
2477         * build-aux/bootstrap [dangling symlink removal]: Move find's
2478         -depth option to precede all others, to avoid a warning.
2479         Remove *.[ch] files too, and from "$source_base" (usually lib/).
2480
2481 2008-04-02  Bruno Haible  <bruno@clisp.org>
2482
2483         Avoid some warnings from "gcc -Wshadow".
2484         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
2485         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
2486         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
2487         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
2488         Reported by Jim Meyering.
2489
2490 2008-04-01  Bruno Haible  <bruno@clisp.org>
2491
2492         Fix test to work on IRIX 6.5 with cc.
2493         * tests/test-math.c (numeric_equal): New function.
2494         (main): Use it.
2495
2496 2008-04-01  Bruno Haible  <bruno@clisp.org>
2497
2498         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
2499
2500 2008-04-01  Bruno Haible  <bruno@clisp.org>
2501
2502         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
2503         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
2504         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
2505         (Depends-on): Remove math.
2506
2507         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
2508         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
2509         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
2510         (Depends-on): Remove math.
2511
2512         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
2513         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
2514         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
2515         (Depends-on): Remove math.
2516         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
2517         (Depends-on): Remove math.
2518
2519         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
2520         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
2521         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
2522         (Depends-on): Remove math.
2523         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
2524         (Depends-on): Remove math.
2525
2526         * tests/test-round1.c: Include nan.h.
2527         (main): Use NaNd instead of NAN.
2528         * modules/round-tests (Files): Add tests/nan.h.
2529
2530         * tests/test-trunc1.c: Include nan.h.
2531         (main): Use NaNd instead of NAN.
2532         * modules/trunc-tests (Files): Add tests/nan.h.
2533
2534         * tests/test-roundf1.c: Include nan.h.
2535         (main): Use NaNf instead of NAN.
2536         * modules/roundf-tests (Files): Add tests/nan.h.
2537
2538         * tests/test-truncf1.c: Include nan.h.
2539         (main): Use NaNf instead of NAN.
2540         * modules/truncf-tests (Files): Add tests/nan.h.
2541
2542         * tests/test-ceilf1.c: Include nan.h.
2543         (main): Use NaNf instead of NAN.
2544         * modules/ceilf-tests (Files): Add tests/nan.h.
2545
2546         * tests/test-floorf1.c: Include nan.h.
2547         (main): Use NaNf instead of NAN.
2548         * modules/floorf-tests (Files): Add tests/nan.h.
2549
2550         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
2551         (main): Use NaNf instead of NAN.
2552         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
2553
2554         * tests/test-isnand.c: Include nan.h instead of <math.h>.
2555         (main): Use NaNd instead of NAN.
2556         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
2557
2558         * tests/test-frexp.c: Include nan.h.
2559         (main): Use NaNd instead of NAN.
2560         * modules/frexp-tests (Files): Add tests/nan.h.
2561
2562         * lib/isnan.c: Don't include <math.h>.
2563         (FUNC): Don't use NAN macro.
2564         * modules/isnand-nolibm (Depends-on): Remove math.
2565         * modules/isnanf-nolibm (Depends-on): Remove math.
2566         * modules/isnanl (Depends-on): Remove math.
2567         * modules/isnanl-nolibm (Depends-on): Remove math.
2568
2569         * tests/nan.h: New file.
2570
2571 2008-04-01  Eric Blake  <ebb9@byu.net>
2572
2573         Fix typos.
2574         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
2575         values to be the right type.
2576
2577         For now, cater to gnulib strtod inaccuracies.
2578         * tests/test-strtod.c (main): Allow 1-ulp error on expected
2579         fractional results.  While not as nice from a QoI perspective, it
2580         is a quicker patch than correctly implementing decimal to binary
2581         rounding.
2582
2583 2008-03-31  Eric Blake  <ebb9@byu.net>
2584
2585         Guarantee a definition of NAN.
2586         * lib/math.in.h (NAN): Define if missing.
2587         * tests/test-math.c (main): Test it.
2588         * doc/posix-headers/math.texi (math.h): Document this.
2589         * lib/isnan.c (rpl_isnand): Use it.
2590         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
2591         * tests/test-floorf1.c (NaN): Likewise.
2592         * tests/test-frexp.c (NaN): Likewise.
2593         * tests/test-isnand.c (NaN): Likewise.
2594         * tests/test-isnanf.c (NaN): Likewise.
2595         * tests/test-round1.c (NaN): Likewise.
2596         * tests/test-roundf1.c (NaN): Likewise.
2597         * tests/test-snprintf-posix.h (NaN): Likewise.
2598         * tests/test-sprintf-posix.h (NaN): Likewise.
2599         * tests/test-trunc1.c (NaN): Likewise.
2600         * tests/test-truncf1.c (NaN): Likewise.
2601         * tests/test-vasnprintf-posix.c (NaN): Likewise.
2602         * tests/test-vasprintf-posix.c (NaN): Likewise.
2603         * modules/isnand-nolibm (Depends-on): Add math.
2604         * modules/isnanf-nolibm (Depends-on): Likewise.
2605         * modules/isnanl (Depends-on): Likewise.
2606         * modules/isnanl-nolibm (Depends-on): Likewise.
2607         * modules/snprintf-posix-tests (Depends-on): Likewise.
2608         * modules/sprintf-posix-tests (Depends-on): Likewise.
2609         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
2610         * modules/vsprintf-posix-tests (Depends-on): Likewise.
2611         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
2612         * modules/vasprintf-posix-tests (Depends-on): Likewise.
2613
2614 2008-03-31  Bruno Haible  <bruno@clisp.org>
2615
2616         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
2617         * doc/posix-functions/strtod.texi: Likewise.
2618
2619 2008-03-31  Bruno Haible  <bruno@clisp.org>
2620
2621         * tests/test-strtod.c (main): Don't use C99 syntax.
2622
2623 2008-03-31  Bruno Haible  <bruno@clisp.org>
2624
2625         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
2626         Reported by Eric Blake.
2627
2628 2008-03-31  Jim Meyering  <meyering@redhat.com>
2629
2630         Don't compare actual signbit return values.
2631         * tests/test-strtod.c (main): Rather, compare only their
2632         zero/non-zero nature.
2633
2634 2008-03-31  Eric Blake  <ebb9@byu.net>
2635
2636         More strtod documentation.
2637         * doc/posix-functions/strtod.texi (strtod): Interpret more test
2638         failures as distinct bugs.
2639
2640 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
2641
2642         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
2643         Problem reported by Erik Benada in
2644         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
2645
2646 2008-03-30  Bruno Haible  <bruno@clisp.org>
2647
2648         * tests/test-strtod.c: Add comments about which assertion fails on which
2649         platform.
2650         * doc/posix-functions/strtod.texi: Add info about many more platforms.
2651
2652 2008-03-30  Eric Blake  <ebb9@byu.net>
2653
2654         Test signbit behavior on zeros.
2655         * tests/test-signbit.c (test_signbitf): Add tests for zero.
2656         (test_signbitd, test_signbitl): Likewise.
2657
2658         More strtod touchups.
2659         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
2660         sign of negative underflow, for now.  Use .5, not .1.
2661         * doc/posix-functions/strtod.texi (strtod): Mention these
2662         limitations.
2663         Reported by Jim Meyering.
2664
2665 2008-03-30  Bruno Haible  <bruno@clisp.org>
2666
2667         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
2668         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
2669
2670 2008-03-30  Bruno Haible  <bruno@clisp.org>
2671
2672         Avoid failure when attempting to return empty iconv results on some
2673         platforms.
2674         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
2675         allocation, don't report ENOMEM when the resulting string is empty.
2676
2677 2008-03-30  Bruno Haible  <bruno@clisp.org>
2678
2679         Fix buffer overrun.
2680         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
2681         Don't consider the width for tmp_length. Check count against tmp_length
2682         before doing the padding. Ensure enough allocation during padding.
2683
2684 2008-03-30  Eric Blake  <ebb9@byu.net>
2685
2686         strtod touchups.
2687         * lib/strtod.c (strtod): Avoid compiler warnings.
2688         Reported by Jim Meyering.
2689
2690 2008-03-30  Bruno Haible  <bruno@clisp.org>
2691
2692         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
2693         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
2694         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
2695         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
2696         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
2697         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
2698         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
2699         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
2700
2701         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
2702         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
2703         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
2704         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
2705         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
2706         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
2707         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
2708         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
2709
2710         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
2711         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
2712         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
2713         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
2714         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
2715         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
2716         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
2717         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
2718
2719         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
2720         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
2721
2722         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
2723         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
2724
2725         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
2726         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
2727
2728         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
2729         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
2730         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
2731
2732         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
2733         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
2734         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
2735
2736         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
2737         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
2738         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
2739
2740         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
2741         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
2742         * modules/vasprintf (Depends-on): Add EOVERFLOW.
2743
2744         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
2745         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
2746         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
2747         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
2748         (Depends-on): Add EOVERFLOW.
2749         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
2750         (Depends-on): Add EOVERFLOW.
2751         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
2752         (Depends-on): Add EOVERFLOW.
2753         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
2754         (Depends-on): Add EOVERFLOW.
2755         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
2756         (Depends-on): Add EOVERFLOW.
2757         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
2758         (Depends-on): Add EOVERFLOW.
2759         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
2760         (Depends-on): Add EOVERFLOW.
2761         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
2762         (Depends-on): Add EOVERFLOW.
2763
2764         * lib/sprintf.c (EOVERFLOW): Remove fallback.
2765         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
2766         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
2767
2768         * lib/snprintf.c (EOVERFLOW): Remove fallback.
2769         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
2770         * modules/snprintf (Depends-on): Add EOVERFLOW.
2771
2772         * lib/poll.c (EOVERFLOW): Remove fallback.
2773         * modules/poll (Depends-on): Add EOVERFLOW.
2774
2775         * lib/getugroups.c (EOVERFLOW): Remove fallback.
2776         * modules/getugroups (Depends-on): Add EOVERFLOW.
2777
2778         * lib/getdelim.c (EOVERFLOW): Remove fallback.
2779         * modules/getdelim (Depends-on): Add EOVERFLOW.
2780
2781         * lib/ftell.c (EOVERFLOW): Remove fallback.
2782         * modules/ftell (Depends-on): Add EOVERFLOW.
2783
2784         * lib/fprintf.c (EOVERFLOW): Remove fallback.
2785         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
2786         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
2787
2788         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
2789
2790         * modules/EOVERFLOW-tests: New file.
2791         * tests/test-EOVERFLOW.c: New file.
2792
2793         * modules/EOVERFLOW: New file.
2794         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
2795
2796 2008-03-30  Bruno Haible  <bruno@clisp.org>
2797
2798         Fix bug introduced on 2007-06-10.
2799         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
2800         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
2801
2802 2008-03-30  Bruno Haible  <bruno@clisp.org>
2803
2804         Improve freadseek's efficiency after ungetc.
2805         * lib/freadseek.c: Include freadahead.h.
2806         (freadptrinc): New function, extracted from freadseek.
2807         (freadseek): Use it in a loop. Use freadahead to determine the number
2808         of loop iterations.
2809         * modules/freadseek (Depends-on): Add freadahead.
2810         (configure.ac): Require AC_C_INLINE.
2811
2812 2008-03-30  Bruno Haible  <bruno@clisp.org>
2813
2814         * lib/freadseek.c (freadseek): Don't ignore the return value of
2815         freadptr.
2816
2817 2008-03-29  Eric Blake  <ebb9@byu.net>
2818
2819         Add hex float support.
2820         * modules/strtod (Depends-on): Add c-ctype.
2821         (Link): Mention POW_LIB.
2822         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
2823         whitespace between 'e' and exponent.
2824         * tests/test-strtod.c (main): Enable hex float tests.
2825         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
2826         now provides.
2827
2828         Document various strtod bugs, with some fixes.
2829         * doc/posix-functions/strtod.texi (strtod): Document bugs with
2830         "-0x", "inf", "nan", and hex constants.
2831         * doc/posix-functions/atof.texi (atof): Likewise.
2832         * modules/stdlib (Makefile.am): Support strtod.
2833         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
2834         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
2835         detect additional strtod bugs.
2836         * lib/stdlib.in.h (rpl_strtod): Add declarations.
2837         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
2838         bool where appropriate.  Parse 'inf' and 'nan'.
2839         * tests/test-strtod.c: New file.
2840         * modules/strtod (Depends-on): Add stdbool, stdlib.
2841         (configure.ac): Turn on module indicator.
2842         * modules/strtod-tests: New module.
2843
2844 2008-03-29  Eric Blake  <ebb9@byu.net>
2845
2846         Fix ftell on mingw.
2847         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
2848         * modules/ftell-tests (Depends-on): Add binary-io.
2849         * modules/ftello-tests (Depends-on): Likewise.
2850         * tests/test-ftell.c (main): Enhance test to cover behavior after
2851         ungetc.  Enforce binary mode.
2852         * tests/test-ftello.c (main): Likewise.
2853
2854         Pass test-freadseek on cygwin.
2855         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
2856         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
2857         ungetc buffer.
2858
2859         * tests/test-fflush2.c (main): Fix typo.
2860
2861 2008-03-29  Bruno Haible  <bruno@clisp.org>
2862
2863         * tests/test-fflush2.c (main): Temporarily disable the contents of
2864         this test.
2865         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
2866         Reported by Eric Blake.
2867
2868 2008-03-28  Simon Josefsson  <simon@josefsson.org>
2869
2870         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
2871         (GC_SHA224_DIGEST_SIZE): Add.
2872
2873         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
2874         (gc_hash_digest_length): Likewise.
2875         (gc_hash_buffer): Likewise.
2876
2877 2008-03-25  Bruno Haible  <bruno@clisp.org>
2878
2879         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
2880         detail which gettext release to use.
2881         Reported by Simon Josefsson.
2882
2883 2008-03-26  Jim Meyering  <meyering@redhat.com>
2884
2885         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
2886         * modules/gnumakefile (clean-GNUmakefile): Also, use
2887         test ... && ... || : syntax rather than if-then ... fi.
2888
2889         gnumakefile: Don't double-quote-expand $(VPATH) value.
2890         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
2891
2892 2008-03-24  Eric Blake  <ebb9@byu.net>
2893
2894         Alter GNUmakefile to install into top directory.
2895         * modules/maintainer-makefile: Split, and add dependency...
2896         * modules/gnumakefile: to this new module.
2897         * build-aux/GNUmakefile: Move...
2898         * top/GNUmakefile: ...here.
2899         * build-aux/maint.mk: Move...
2900         * top/maint.mk: ...here.
2901         * MODULES.html.sh (Support for maintaining...): Document new
2902         module.
2903
2904 2008-03-23  Bruno Haible  <bruno@clisp.org>
2905
2906         * gnulib-tool: New options --vc-files, --no-vc-files.
2907         (func_usage): Document them.
2908         (vc_files): New variable.
2909         (func_import): Consider vc_files.
2910         (func_create_testdir): Set vc_files to empty.
2911         Suggested by Jim Meyering and Karl Berry.
2912
2913 2008-03-23  Bruno Haible  <bruno@clisp.org>
2914
2915         Fix regex compilation error on HP-UX 11.
2916         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
2917         * modules/regex (Files): Add m4/mbstate_t.m4.
2918         Reported by Ton Voon <ton.voon@altinity.com>.
2919
2920 2008-03-23  Bruno Haible  <bruno@clisp.org>
2921
2922         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
2923
2924 2008-03-23  Eric Blake  <ebb9@byu.net>
2925             Bruno Haible  <bruno@clisp.org>
2926
2927         Install files from top/ in the destination directory.
2928         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
2929         augmentation also for the files from top/.
2930         (func_import, func_create_testdir): Rewrite file names:
2931         top/filename -> filename.
2932
2933 2008-03-23  Bruno Haible  <bruno@clisp.org>
2934
2935         Tweak "gnulib --version" output.
2936         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
2937
2938 2008-03-23  Bruno Haible  <bruno@clisp.org>
2939
2940         Tweak "gnulib --version" output.
2941         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
2942         rather than contents of ChangeLog, when possible.
2943
2944 2008-03-21  Eric Blake  <ebb9@byu.net>
2945
2946         More --version tweaks.
2947         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
2948         date of last ChangeLog entry.
2949
2950 2008-03-21  Jim Meyering  <meyering@redhat.com>
2951
2952         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
2953
2954 2008-03-20  Eric Blake  <ebb9@byu.net>
2955
2956         VPATH fix.
2957         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
2958
2959 2008-03-20  Simon Josefsson  <simon@josefsson.org>
2960
2961         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
2962         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
2963
2964 2008-03-20  Eric Blake  <ebb9@byu.net>
2965
2966         Sync GNUmakefile with coreutils.
2967         * build-aux/GNUmakefile (have-Makefile): Rename...
2968         (_have-Makefile): ...to this, for namespace consideration.
2969         (GNUmakefile.cfg): Include, if present.
2970         (_autoreconf): Define a default.
2971         (_is-dist-target): New rule for rebuilds to pick up intra-release
2972         version.
2973         (maint-cfg.mk): Rename...
2974         (cfg.mk): ...to this.
2975
2976 2008-03-18  Jim Meyering  <meyering@redhat.com>
2977
2978         New script and module: mktempd
2979         * MODULES.html.sh (maint+release support): Add mktempd.
2980         * build-aux/mktempd: New file.
2981         * modules/mktempd: New file.
2982
2983 2008-03-15  Jim Meyering  <meyering@redhat.com>
2984
2985         Undo last change.
2986         * lib/sha1.c, lib/md5.c: 63 != ~63.
2987         Reported by Andreas Schwab.
2988
2989         sha1.c, md5.c: Hoist a redundant expression.
2990         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
2991         "ctx->buflen" only once, before calling *_process_block.
2992         * lib/md5.c (md5_process_bytes): Likewise.
2993
2994 2008-03-14  Eric Blake  <ebb9@byu.net>
2995
2996         Bump copyright year in files generated by gnulib-tool.
2997         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
2998         gnulib-tool, rather than hard-coding it.
2999
3000         Fix 'gnulib-tool --version' output to work with git.
3001         * gnulib-tool (func_gnulib_dir): New function, extracted from...
3002         (startup): ...here.
3003         (func_version): Use it to invoke git-version-gen, rather than
3004         relying on CVS keyword expansion.  Modernize wording.
3005         (cvsdatestamp, last_checkin_date, version): Kill unused
3006         variables.
3007
3008 2008-03-12  Jim Meyering  <meyering@redhat.com>
3009
3010         Recognize optional cast of the argument to free.
3011         * build-aux/useless-if-before-free: Update regexps.
3012
3013         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
3014
3015 2008-03-11  Bruno Haible  <bruno@clisp.org>
3016
3017         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
3018         by a single package.
3019         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
3020         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
3021         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
3022         Reported by Sam Steingold <sds@gnu.org>.
3023
3024 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
3025
3026         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
3027         repositories.
3028
3029 2008-03-11  Bruno Haible  <bruno@clisp.org>
3030
3031         Avoid conflicts between local macro definitions.
3032         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
3033         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
3034
3035 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
3036             Bruno Haible  <bruno@clisp.org>
3037
3038         Make va_copy work with some version of xlc on AIX 5.1.
3039         * lib/stdarg.in.h: New file.
3040         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
3041         On AIX, use a <stdarg.h> file substitute.
3042         * modules/stdarg (Files): Add lib/stdarg.in.h.
3043         (Depends-on): Add include_next.
3044         (Makefile.am): Build a stdarg.h substitute if requested.
3045         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
3046
3047 2008-03-10  Bruno Haible  <bruno@clisp.org>
3048
3049         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
3050         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
3051         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
3052
3053 2008-03-10  Bruno Haible  <bruno@clisp.org>
3054
3055         * modules/stdlib (Depends-on): Add include_next, remove
3056         absolute-header.
3057
3058 2008-03-09  Bruno Haible  <bruno@clisp.org>
3059
3060         * lib/freadahead.h (freadahead): Document more precisely.
3061         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
3062         the sum of both buffer sizes.
3063         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
3064         * NEWS: Document the change.
3065
3066 2008-03-09  Bruno Haible  <bruno@clisp.org>
3067
3068         Extend freadptr to return also the buffer size.
3069         * lib/freadptr.h (freadptr): Add sizep argument.
3070         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
3071         (freadptr): Add sizep argument. Determine buffer size like freadahead
3072         does.
3073         * tests/test-freadptr.c: Don't include freadahead.h.
3074         (main): Adapt for new calling convention of freadptr.
3075         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
3076         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
3077         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
3078         tests/test-freadptr2.sh.
3079         (Depends): Remove freadahead.
3080         (TESTS): Add test-freadptr2.sh.
3081         (check_PROGRAMS): Add test-freadptr2.
3082
3083 2008-03-09  Bruno Haible  <bruno@clisp.org>
3084
3085         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
3086         Report and solution by Simon Josefsson.
3087
3088 2008-03-06  Bruno Haible  <bruno@clisp.org>
3089
3090         Make fflush after ungetc work on BSD platforms.
3091         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
3092         * tests/test-fflush2.c: New file.
3093         * tests/test-fflush2.sh: New file.
3094         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
3095         tests/test-fflush2.c.
3096         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
3097         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
3098
3099 2008-03-06  Eric Blake  <ebb9@byu.net>
3100
3101         Likewise for ftello.
3102         * modules/ftello (Dependencies): Add extensions.
3103         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
3104
3105 2008-03-06  Bruno Haible  <bruno@clisp.org>
3106
3107         * modules/fseeko (Dependencies): Add extensions.
3108         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
3109         Needed on glibc systems.
3110
3111 2008-03-06  Bruno Haible  <bruno@clisp.org>
3112
3113         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
3114         email address.
3115         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
3116
3117 2008-03-06  Bruno Haible  <bruno@clisp.org>
3118
3119         * users.txt: Add libgnupdf.
3120
3121 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
3122
3123         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
3124         (Header File Substitutes, Function Substitutes,
3125         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
3126         (Build robot for gnulib): Fix typo.
3127
3128 2008-03-06  Bruno Haible  <bruno@clisp.org>
3129
3130         * doc/gnulib-tool.texi (VCS Issues): Small updates.
3131         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
3132
3133 2008-03-06  Bruno Haible  <bruno@clisp.org>
3134
3135         * doc/func.texi: New file, extracted from doc/gnulib.texi.
3136         * doc/gnulib.texi: Include it.
3137
3138 2008-03-06  Simon Josefsson  <simon@josefsson.org>
3139
3140         * modules/func (License): Change license to unlimited; there was
3141         no LGPL parts in the module anyway.
3142
3143 2008-03-06  Simon Josefsson  <simon@josefsson.org>
3144
3145         * modules/__func__: Renamed to modules/func.
3146         * modules/__func__-tests: Renamed to modules/func-tests.
3147         * tests/test-__func__.c: Renamed to tests/test-func.c.
3148         * m4/__func__.m4: Renamed to m4/func.m4.
3149         * doc/gnulib.texi (__func__): Section renamed to func.
3150         Suggested by Eric Blake <ebb9@byu.net>.
3151
3152 2008-03-06  Simon Josefsson  <simon@josefsson.org>
3153
3154         * doc/gnulib.texi (__func__): Use C99 terminology when talking
3155         about __func__.  Make example self-contained.  Suggested by Eric
3156         Blake <ebb9@byu.net>.
3157
3158         * tests/test-__func__.c (main): Avoid extraneous () around __func.
3159         Suggested by Eric Blake <ebb9@byu.net>.
3160
3161 2008-03-06  Simon Josefsson  <simon@josefsson.org>
3162
3163         * modules/__func__: New file.
3164         * modules/__func__-tests: New file.
3165         * tests/test-__func__.c: New file.
3166         * m4/__func__.m4: New file.
3167         * doc/gnulib.texi (__func__): Document __func__ module.
3168
3169 2008-03-05  Simon Josefsson  <simon@josefsson.org>
3170
3171         * modules/byteswap (License): Re-license as LGPLv2+.
3172
3173 2008-03-05  Simon Josefsson  <simon@josefsson.org>
3174
3175         * doc/Makefile: Add pdf target.
3176
3177 2008-03-05  Simon Josefsson  <simon@josefsson.org>
3178
3179         * modules/inline (License): Use 'unlimited', since there are only
3180         *.m4 files in this module.
3181
3182 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
3183             Bruno Haible  <bruno@clisp.org>
3184
3185         Add support for HP C 7.1 on OpenVMS 8.3.
3186         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
3187
3188 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
3189
3190         Update VMS specifics.
3191         * lib/getopt.c [VMS]: Remove include of unixlib.h.
3192
3193 2008-03-02  Jim Meyering  <meyering@redhat.com>
3194
3195         Remove the last dependency on the "free" module.
3196         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
3197         Reported by Bob Proulx.
3198
3199         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
3200
3201         Remove useless "if" tests before free.  Deprecate "free" module.
3202         * doc/posix-functions/free.texi: Mention that this
3203         module is no longer useful.
3204         * modules/free (Notice): Say this module is obsolete.
3205         * modules/readutmp (Depends-on): Remove free.
3206         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
3207         * lib/putenv.c (putenv): Likewise.
3208         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
3209         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
3210         * tests/test-c-strcasestr.c (main): Likewise.
3211         * tests/test-c-strstr.c (main): Likewise.
3212         * tests/test-mbscasestr1.c (main): Likewise.
3213         * tests/test-mbscasestr2.c (main): Likewise.
3214         * tests/test-mbsstr1.c (main): Likewise.
3215         * tests/test-mbsstr2.c (main): Likewise.
3216         * tests/test-memmem.c (main): Likewise.
3217         * tests/test-strcasestr.c (main): Likewise.
3218         * tests/test-striconv.c (main): Likewise.
3219         * tests/test-striconveh.c (main): Likewise.
3220         * tests/test-striconveha.c (main): Likewise.
3221         * tests/test-strstr.c (main): Likewise.
3222
3223         * build-aux/git-version-gen: Adjust a comment and the Usage string.
3224
3225         bootstrap: sync from coreutils again
3226         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
3227
3228 2008-03-01  Jim Meyering  <meyering@redhat.com>
3229
3230         bootstrap: sync from coreutils
3231         * build-aux/bootstrap (update_po_files): Copy a .po file into place
3232         also when the target doesn't exist.
3233
3234 2008-03-01  Eric Blake  <ebb9@byu.net>
3235
3236         Fix bugs in last patch.
3237         * lib/memchr2.c (memchr2): Fix typo.
3238         * tests/test-memchr2.c: Test previous bug, and don't use GNU
3239         extension.
3240         Reported by Bruce Korb.
3241
3242         New module 'memchr2'.
3243         * modules/memchr2: New file.
3244         * modules/memchr2-tests: Likewise.
3245         * lib/memchr2.h: Likewise.
3246         * lib/memchr2.c: Likewise, based on memchr.c.
3247         * tests/test-memchr2.c: New test.
3248         * MODULES.html.sh (String handling): Add memchr2.
3249
3250 2008-02-29  Bruno Haible  <bruno@clisp.org>
3251
3252         * modules/freadseek-tests: New file.
3253         * tests/test-freadseek.sh: New file.
3254         * tests/test-freadseek.c: New file.
3255
3256         New module 'freadseek'.
3257         * modules/freadseek: New file.
3258         * lib/freadseek.h: New file.
3259         * lib/freadseek.c: New file.
3260         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
3261
3262 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
3263
3264         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
3265         wydawca.
3266
3267         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
3268         program_invocation_name and program_invocation_short_name are
3269         present.
3270
3271 2008-02-28  Bruno Haible  <bruno@clisp.org>
3272
3273         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
3274         * tests/test-freadptr.sh: Also test non-seekable stdin.
3275
3276 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
3277
3278         * build-aux/bootstrap (source_base, m4_base)
3279         (doc_base, tests_base): New variables.
3280         (gnulib_tool_options): Do not hardcode base directories, use
3281         the above variables instead.
3282
3283 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
3284
3285         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
3286
3287 2008-02-28  Bruno Haible  <bruno@clisp.org>
3288
3289         * modules/freadptr-tests: New file.
3290         * tests/test-freadptr.sh: New file.
3291         * tests/test-freadptr.c: New file.
3292
3293         New module 'freadptr'.
3294         * modules/freadptr: New file.
3295         * lib/freadptr.h: New file.
3296         * lib/freadptr.c: New file.
3297         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
3298
3299 2008-02-26  Karl Berry  <karl@freefriends.org>
3300
3301         Sync from Libtool:
3302         * libltdl/argz.c (argz_add, argz_count): New functions.
3303         * libltdl/argz.in.h: Declare them.
3304         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
3305
3306 2008-02-22  Bruno Haible  <bruno@clisp.org>
3307
3308         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
3309         is a pointer type.  Needed for HP-UX 10.
3310         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
3311         * doc/posix-functions/gmtime_r.texi: Likewise.
3312         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
3313
3314 2008-02-24  Bruno Haible  <bruno@clisp.org>
3315
3316         * modules/environ-tests: New file.
3317         * tests/test-environ.c: New file.
3318
3319         New module 'environ'.
3320         * modules/environ: New file.
3321         * lib/unistd.in.h (environ): New declaration.
3322         * m4/environ.m4: New file.
3323         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
3324         after use.
3325         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
3326         HAVE_DECL_ENVIRON.
3327         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
3328         HAVE_DECL_ENVIRON.
3329         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
3330         wrong claim that 'environ' is missing on some systems.
3331         * modules/execute (Depends-on): Add environ.
3332         * lib/execute.c (environ): Remove fallback declaration.
3333         * modules/pipe (Depends-on): Add environ.
3334         * lib/pipe.c (environ): Remove fallback declaration.
3335         * modules/setenv (Depends-on): Add environ.
3336         * lib/setenv.c (environ): Remove fallback declaration.
3337         * modules/unsetenv (Depends-on): Add environ.
3338         * lib/unsetenv.c (environ): Remove fallback declaration.
3339         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
3340         m4/environ.m4.
3341         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
3342         (gl_PREREQ_UNSETENV): Likewise.
3343
3344 2008-02-24  Bruno Haible  <bruno@clisp.org>
3345
3346         * doc/posix-functions/environ.texi: Document the MacOS X problem.
3347
3348 2008-02-20  Bob Proulx  <bob@proulx.com>
3349
3350         Enable use of older two part flavor 'git describe'.
3351         * build-aux/git-version-gen: If using the older two part flavor of
3352         git version then recreate the third part now present in the
3353         newer three part flavor of git describe.
3354
3355 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
3356
3357         * lib/fts.c (fts_build): Typo correction to comment.
3358
3359 2008-02-17  Bruno Haible  <bruno@clisp.org>
3360
3361         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
3362         generating no-op conflicts.
3363
3364 2008-02-17  Bruno Haible  <bruno@clisp.org>
3365
3366         Speed up by 10%.
3367         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
3368         result_entries, rather than an index-based loop.
3369
3370 2008-02-17  Bruno Haible  <bruno@clisp.org>
3371
3372         Speed up by 25%.
3373         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
3374         'hashcode_cached'.
3375         (entry_create): New function.
3376         (entry_hashcode): Use the cached hashcode if possible.
3377         (read_changelog_file, try_split_merged_entry): Use entry_create.
3378
3379 2008-02-17  Bruno Haible  <bruno@clisp.org>
3380
3381         Speed up from O(n^2) to O(n) for long ChangeLog files.
3382         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
3383         (read_changelog_file): Change implementation of entries_reversed list
3384         to rbtreehash.
3385         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
3386
3387 2008-02-17  Bruno Haible  <bruno@clisp.org>
3388
3389         New option --split-merged-entry.
3390         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
3391         (find_paragraph_end, try_split_merged_entry): New functions.
3392         (long_options): Add option --split-merged-entry.
3393         (usage): Document option --split-merged-entry.
3394         (main): Implement option --split-merged-entry.
3395         Reported by Eric Blake.
3396
3397 2008-02-17  Bruno Haible  <bruno@clisp.org>
3398
3399         * lib/git-merge-changelog.c: Include c-strstr.h.
3400         (main): Support the "git pull --rebase" situation.
3401         * modules/git-merge-changelog (Depends-on): Add c-strstr.
3402         Reported by Eric Blake.
3403
3404 2008-02-16  Eric Blake  <ebb9@byu.net>
3405
3406         Avoid doubling \ in common case of "c-maybe" quoting style.
3407         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
3408         eliding outer quotes.
3409         * lib/quotearg.h: Document this.
3410         * tests/test-quotearg.c (result_strings, inputs, results_g)
3411         (flag_results, locale_results): Test it by adding a new string to
3412         each test group.
3413         (compare_strings): Test new string.
3414
3415 2008-02-13  Eric Blake  <ebb9@byu.net>
3416
3417         Avoid trigraph quoting in default output.
3418         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
3419         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
3420         unless explicitly requested.
3421         * tests/test-quotearg.c (flag_results, main): Add additional tests.
3422
3423 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
3424
3425         Don't rely on signed integer overflowing to negative value.
3426         * lib/getugroups.c (getugroups): Include <limits.h>.
3427         Instead, compare against INT_MAX, and increment only if the test passes.
3428
3429 2008-02-13  Jim Meyering  <meyering@redhat.com>
3430         and Eric Blake  <ebb9@byu.net>
3431
3432         Avoid shadowing warning and compile errors on Linux.
3433         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
3434         forwarding macros on Linux.
3435         (dcgettext): Define a stub, for Linux.
3436         (results_g, main): Avoid warnings.
3437
3438 2008-02-12  Eric Blake  <ebb9@byu.net>
3439
3440         Silence warning in last patch.
3441         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
3442
3443         Quotearg part 4: add tests, fix c-maybe colon quoting.
3444         * lib/quotearg.h: Improve documentation.
3445         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
3446         escapes when adding outer quotes.  When quoting trigraphs, use
3447         valid C notation.  When quoting NUL, omit extra characters if next
3448         character is not digit.  Alter prototype.
3449         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
3450         callers.
3451         * modules/quotearg-tests: New module.
3452         * tests/test-quotearg.c: New test.
3453
3454 2008-02-07  Eric Blake  <ebb9@byu.net>
3455
3456         Quotearg part 3: add flag to control outer quote elision.
3457         * lib/quotearg.h (c_maybe_quoting_style): New style.
3458         (enum quoting_flags): Better documentation of flags.
3459         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
3460         c-maybe style.
3461         (quotearg_buffer_restyled): Handle new flag to elide outer
3462         quotes.
3463
3464         Quotearg part 2: add flag that can control NUL elision.
3465         * lib/quotearg.h (set_quoting_flags): New prototype.
3466         * lib/quotearg.c (struct quoting_options): Add flag field.
3467         (set_quoting_flags): New function.
3468         (quotearg_buffer_restyled): Add flags parameter.
3469         (quotearg_alloc_mem): Set the flag if length cannot be returned.
3470         (quotearg_n_options): Set the flag, since length cannot be
3471         returned.
3472         (quoting_options_from_style): Default flags correctly.
3473
3474         Quotearg part 1: more wrappers, restore quotearg_char state.
3475         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
3476         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
3477         (quotearg_colon_mem): New wrappers.
3478         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
3479         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
3480         functions.
3481         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
3482         (quotearg_colon_mem): New functions.
3483
3484 2008-02-11  Bruno Haible  <bruno@clisp.org>
3485
3486         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
3487         library in the current directory: it does not work with parallel make.
3488         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3489
3490 2008-02-11  Bruno Haible  <bruno@clisp.org>
3491
3492         * .gitattributes: New file.
3493
3494 2008-02-11  Jim Meyering  <meyering@redhat.com>
3495
3496         useless-if-before-free: Fix reversed exit values.
3497         * build-aux/useless-if-before-free: Use correct values
3498         for EXIT_MATCH and EXIT_NO_MATCH.
3499
3500         * build-aux/useless-if-before-free: Close stdout carefully.
3501
3502 2008-02-10  Bruno Haible  <bruno@clisp.org>
3503
3504         New module 'git-merge-changelog'.
3505         * modules/git-merge-changelog: New file.
3506         * lib/git-merge-changelog.c: New file.
3507
3508 2008-02-10  Jim Meyering  <meyering@redhat.com>
3509
3510         useless-if-before-free: New option: --list (-l).
3511
3512         useless-if-before-free: Don't exit immediately upon open failure.
3513         * build-aux/useless-if-before-free: Exit 2 for errors.
3514         Upon failure to open a file, don't exit immediately.
3515         Rather, just warn and continue with any remaining files.
3516
3517 2008-02-10  Bruno Haible  <bruno@clisp.org>
3518
3519         New abstract list operation 'node_set_value'.
3520         * lib/gl_list.h (gl_list_node_set_value): New function.
3521         (struct gl_list_implementation): New field node_set_value.
3522         * lib/gl_list.c (gl_list_node_set_value): New function.
3523         * lib/gl_array_list.c (gl_array_node_set_value): New function.
3524         (gl_array_list_implementation): Update.
3525         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
3526         (gl_carray_list_implementation): Update.
3527         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
3528         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
3529         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
3530         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
3531         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
3532         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
3533         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
3534         Update.
3535         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
3536         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
3537         (gl_sublist_list_implementation): Update.
3538
3539 2008-02-10  Bruno Haible  <bruno@clisp.org>
3540
3541         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
3542         Needed when ELEMENT is #defined to 'some_type *'.
3543
3544 2008-02-10  Jim Meyering  <meyering@redhat.com>
3545
3546         New script and module: useless-if-before-free
3547         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
3548         * build-aux/useless-if-before-free: New file.
3549         * modules/useless-if-before-free: New file.
3550
3551         * build-aux/gitlog-to-changelog: Use committer date, not author date.
3552
3553         xstrtol_error: Fix typo.
3554         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
3555         s/exit_failure/exit_status/.
3556
3557 2008-02-09  Jim Meyering  <meyering@redhat.com>
3558
3559         New script and module: gitlog-to-changelog
3560         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
3561         * modules/gitlog-to-changelog: New file.
3562         * build-aux/gitlog-to-changelog: New file.
3563
3564 2008-02-08  Jim Meyering  <meyering@redhat.com>
3565
3566         Avoid two "parameter unused" warnings.
3567         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
3568         Mark "st" as used.
3569
3570         Use "git COMMAND", not "git-COMMAND".
3571         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
3572         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
3573         * build-aux/git-version-gen: Use "git status", not "git-status".
3574
3575 2008-02-07  Bruno Haible  <bruno@clisp.org>
3576
3577         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
3578         Avoids a crash on Windows Vista.
3579         Reported by Adam Strzelecki <ono@java.pl> via
3580         Simon Josefsson <simon@josefsson.org>.
3581
3582 2008-02-06  Bruno Haible  <bruno@clisp.org>
3583
3584         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
3585         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
3586         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
3587         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
3588         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
3589         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
3590         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
3591         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
3592         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
3593         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3594         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3595         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3596         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3597         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3598         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3599         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
3600         left-adjust flag.
3601         * tests/test-snprintf-posix.h (test_function): Likewise.
3602         * tests/test-sprintf-posix.h (test_function): Likewise.
3603         * tests/test-vasprintf-posix.c (test_function): Likewise.
3604         * doc/posix-functions/fprintf.texi: Update.
3605         * doc/posix-functions/printf.texi: Update.
3606         * doc/posix-functions/snprintf.texi: Update.
3607         * doc/posix-functions/sprintf.texi: Update.
3608         * doc/posix-functions/vfprintf.texi: Update.
3609         * doc/posix-functions/vprintf.texi: Update.
3610         * doc/posix-functions/vsnprintf.texi: Update.
3611         * doc/posix-functions/vsprintf.texi: Update.
3612         Reported by Peter Fales <psfales@alcatel-lucent.com>.
3613
3614 2008-02-06  Bruno Haible  <bruno@clisp.org>
3615
3616         Fix bug introduced on 2008-01-26.
3617         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
3618
3619 2008-02-06  Bruno Haible  <bruno@clisp.org>
3620
3621         Fix bug introduced on 2007-06-10.
3622         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
3623         !NEED_PRINTF_FLAG_ZERO.
3624
3625 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
3626
3627         getloadavg: use libperfstat on AIX5
3628         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
3629
3630 2008-02-03  Bruno Haible  <bruno@clisp.org>
3631
3632         * lib/diffseq.h: Add comments about required #includes.
3633         Reported by Michael Biggs <gnulib@doubleplum.net>.
3634
3635 2008-02-01  Bruno Haible  <bruno@clisp.org>
3636
3637         * users.txt: Add gnuit.
3638
3639 2008-01-31  Bruno Haible  <bruno@clisp.org>
3640
3641         * lib/md4.c (set_uint32): Mark as inline.
3642         * lib/md5.c (set_uint32): Likewise.
3643         * lib/sha1.c (set_uint32): Likewise.
3644         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
3645         * m4/md5.m4 (gl_MD5): Likewise.
3646         * m4/sha1.m4 (gl_SHA1): Likewise.
3647
3648 2008-01-31  Jim Meyering  <meyering@redhat.com>
3649
3650         Use "sizeof VAR", rather than a literal "4".
3651         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
3652         * lib/md4.c (md4_read_ctx): Likewise.
3653         * lib/sha1.c (sha1_read_ctx): Likewise.
3654
3655 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3656
3657         * tests/test-sha1.c: New file, based on test-md5.c.
3658
3659         * modules/crypto/sha1-tests: New file.
3660
3661 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3662
3663         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
3664
3665 2008-01-31  Jim Meyering  <meyering@redhat.com>
3666
3667         Prefer "sizeof v" over the equivalent "4".
3668         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
3669         * lib/md5.c (set_uint32): Likewise.
3670         * lib/sha1.c (set_uint32): Likewise.
3671
3672 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3673
3674         * lib/sha1.c (set_uint32): Mark function as static.
3675
3676 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3677
3678         md2: clarify comments to say that alignment is not required.
3679         * lib/md2.h: Remove warning about alignment in comment.
3680         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
3681         never been required.
3682
3683 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3684
3685         md4: adapt alignment constraint fix from sha1.
3686         * lib/md4.c (set_uint32): New function, from sha1.c
3687         (md4_read_ctx): Use it.
3688         (md4_finish_ctx): Doc fix.
3689         * lib/md4.h: Doc fix.
3690
3691 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3692
3693         md5: adapt alignment constraint fix from sha1.
3694         * lib/md5.c (set_uint32): New function, from sha1.c
3695         (md5_read_ctx): Use it.
3696         (md5_finish_ctx): Doc fix.
3697         * lib/md5.h: Doc fix.
3698
3699 2008-01-30  Peter Palfrader  <weasel@debian.org>
3700
3701         sha1: remove the result buffer alignment constraint
3702         * lib/sha1.c (set_uint32): New function.
3703         (sha1_read_ctx): Rewrite to remove the result buffer alignment
3704         constraint.
3705         (sha1_finish_ctx): Remove comment warning about alignment constraint.
3706         * lib/sha1.h: Likewise.
3707
3708 2008-01-30  Andreas Schwab  <schwab@suse.de>
3709             Bruno Haible  <bruno@clisp.org>
3710
3711         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
3712         correct definition of LDBL_MIN_EXP.
3713
3714 2008-01-30  Karl Berry  <karl@gnu.org>
3715
3716         * config/srclist-update: try to preserve x bit on updates.
3717         * config/srclistvars.sh: update for karl.
3718
3719 2008-01-29  Jim Meyering  <meyering@redhat.com>
3720
3721         vasnprintf.c: Avoid warning about unused label
3722         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
3723         "overflow" label definition and associated code with the
3724         same cpp condition that guards the sole use of that label.
3725
3726 2008-01-26  Bruno Haible  <bruno@clisp.org>
3727
3728         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
3729         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
3730         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
3731         * lib/isnanl-nolibm.h (isnanl): Likewise.
3732         Reported by Paul Eggert <eggert@cs.ucla.edu>.
3733
3734 2008-01-26  Bruno Haible  <bruno@clisp.org>
3735
3736         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
3737         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
3738
3739 2008-01-26  Bruno Haible  <bruno@clisp.org>
3740
3741         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
3742         GCC >= 4.0 built-in.
3743         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
3744
3745 2008-01-26  Bruno Haible  <bruno@clisp.org>
3746
3747         Rename isnan, applicable to 'double' only, to isnand.
3748         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
3749         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
3750         (configure.ac): Update.
3751         (Include): Replace "isnan.h" with "isnand.h".
3752         * m4/isnand.m4: Renamed from m4/isnan.m4.
3753         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
3754         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
3755         instead of isnan.c.
3756         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
3757         instead of HAVE_ISNAN_IN_LIBC.
3758         (isnand): Renamed from isnan.
3759         * lib/isnand.c: New file.
3760         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
3761         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
3762         (Makefile.am): Update.
3763         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
3764         Include isnand.h instead of isnan.h.
3765         (main): Test isnand instead of isnan.
3766         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
3767         isnan-nolibm.
3768         * modules/frexp (Depends-on): Likewise.
3769         * modules/frexp-tests (Depends-on): Likewise.
3770         * modules/frexp-nolibm (Depends-on): Likewise.
3771         * modules/frexp-nolibm-tests (Depends-on): Likewise.
3772         * modules/isfinite (Depends-on): Likewise.
3773         * modules/round-tests (Depends-on): Likewise.
3774         * modules/signbit (Depends-on): Likewise.
3775         * modules/signbit-tests (Depends-on): Likewise.
3776         * modules/snprintf-posix (Depends-on): Likewise.
3777         * modules/sprintf-posix (Depends-on): Likewise.
3778         * modules/trunc-tests (Depends-on): Likewise.
3779         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
3780         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
3781         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
3782         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
3783         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
3784         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
3785         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
3786         * modules/vasnprintf-posix (Depends-on): Likewise.
3787         * modules/vasprintf-posix (Depends-on): Likewise.
3788         * modules/vfprintf-posix (Depends-on): Likewise.
3789         * modules/vsnprintf-posix (Depends-on): Likewise.
3790         * modules/vsprintf-posix (Depends-on): Likewise.
3791         * lib/frexp.c: Include isnand.h instead of isnan.h.
3792         (ISNAN): Set to isnand instead of isnan.
3793         * lib/isfinite.c: Include isnand.h instead of isnan.h.
3794         (gl_isfinited): Use isnand instead of isnan.
3795         * lib/signbitd.c: Include isnand.h instead of isnan.h.
3796         (gl_signbitd): Use isnand instead of isnan.
3797         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
3798         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
3799         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
3800         (main): Use isnand instead of isnan.
3801         * tests/test-round1.c: Include isnand.h.
3802         (main): Use isnand instead of isnan.
3803         * tests/test-round2.c: Include isnand.h instead of isnan.h.
3804         (ISNAN): Set to isnand instead of isnan.
3805         * tests/test-trunc1.c: Include isnand.h.
3806         (main): Use isnand instead of isnan.
3807         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
3808         (equal): Use isnand instead of isnan.
3809         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
3810         isnand-nolibm.
3811         * NEWS: Mention the change.
3812
3813 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
3814             Bruno Haible  <bruno@clisp.org>
3815
3816         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
3817         the GCC builtins for signbits are present and set
3818         REPLACE_SIGNBIT_USING_GCC if so.
3819         * lib/math.in.h (signbit): Define using GCC builtins if
3820         REPLACE_SIGNBIT_USING_GCC is set.
3821         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
3822         REPLACE_SIGNBIT_USING_GCC.
3823         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
3824
3825 2008-01-25  Jim Meyering  <meyering@redhat.com>
3826
3827         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
3828         * lib/poll.c: Include <config.h>, not "config.h".
3829         * tests/test-getaddrinfo.c: Likewise.
3830
3831 2008-01-25  Simon Josefsson  <simon@josefsson.org>
3832
3833         * modules/sockets-tests: New file.
3834
3835 2008-01-24  Simon Josefsson  <simon@josefsson.org>
3836
3837         * modules/sockets: New module, can be used to call WSA_Startup and
3838         WSA_Cleanup when needed.
3839
3840         * lib/sockets.h, lib/sockets.c: New files.
3841
3842         * m4/sockets.m4: New file.
3843
3844         * tests/test-sockets.c: New file.
3845
3846 2008-01-19  Bruno Haible  <bruno@clisp.org>
3847
3848         * doc/posix-headers: Renamed from doc/headers.
3849         * doc/posix-functions: Renamed from doc/functions.
3850         * doc/gnulib.texi: Update.
3851
3852 2008-01-19  Bruno Haible  <bruno@clisp.org>
3853
3854         * doc/glibc-functions/strcasestr.texi: Include contents of
3855         doc/functions/strcasestr.texi, fixing the list of platforms.
3856         * doc/functions/strcasestr.texi: Remove file.
3857
3858 2008-01-19  Bruno Haible  <bruno@clisp.org>
3859
3860         * doc/glibc-functions/memmem.texi: Include contents of
3861         doc/functions/memmem.texi.
3862         * doc/functions/memmem.texi: Remove file.
3863
3864 2008-01-18  Bruno Haible  <bruno@clisp.org>
3865
3866         * doc/glibc-functions/*.texi: New files.
3867         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
3868         to use the new files.
3869
3870 2008-01-17  Bruno Haible  <bruno@clisp.org>
3871
3872         * tests/test-gethostname.c (main): Fix printf statement.
3873
3874 2008-01-17  Simon Josefsson  <simon@josefsson.org>
3875
3876         * modules/gethostname-tests: New file.
3877
3878         * tests/test-gethostname.c: New file.
3879
3880 2008-01-17  Simon Josefsson  <simon@josefsson.org>
3881
3882         * lib/gethostname.c: Include string.h unconditionally, strncpy is
3883         used by the UNAME case.  Reported by Bruno Haible
3884         <bruno@clisp.org>.
3885
3886 2008-01-17  Eric Blake  <ebb9@byu.net>
3887
3888         Convert c-strcasestr to be more efficient.
3889         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
3890         (Depends-on): Add c-strcase, remove malloca, strnlen.
3891         * tests/test-c-strcasestr.c (main): Enhance test.
3892         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
3893
3894 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
3895
3896         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
3897         Use it in creating po/Makevars.
3898
3899 2008-01-15  Simon Josefsson  <simon@josefsson.org>
3900
3901         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
3902         Applications that requires it should initialize libgcrypt
3903         manually.
3904
3905 2008-01-16  Simon Josefsson  <simon@josefsson.org>
3906
3907         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
3908
3909 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
3910
3911         Fix problem with getdate on mingw32 reported by Simon Josefsson
3912         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
3913         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
3914         tzname", when deciding whether to declare tzname.
3915         * lib/strftime.c (tzname): Likewise.
3916
3917 2008-01-15  Bruno Haible  <bruno@clisp.org>
3918
3919         Work around a MacOS X 10.5 bug in frexpl().
3920         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
3921         * doc/functions/frexpl.texi: Document the bug.
3922         Reported by Elias Pipping <pipping@gentoo.org>.
3923
3924 2008-01-14  Eric Blake  <ebb9@byu.net>
3925
3926         Touch up previous patch.
3927         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
3928         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
3929
3930         Convert strcasestr module to use Two-Way algorithm.
3931         * modules/strcasestr-simple: New module, based on the old
3932         strcasestr, but with Two-Way rather than KMP.
3933         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
3934         * lib/string.in.h (rpl_strcasestr): Declare.
3935         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
3936         performance.
3937         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
3938         * modules/string (Makefile.am): Support strcasestr.
3939         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
3940         * modules/strcasestr-tests (Depends-on): Check for alarm.
3941         * tests/test-strcasestr.c: Augment test.
3942         * lib/str-two-way.h: Clean up stray macro.
3943         * NEWS: Document new module.
3944         * MODULES.html.sh (string handling): Likewise.
3945         * doc/functions/strcasestr.texi: New file.
3946         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
3947         here, since it is not a POSIX function.
3948
3949 2008-01-14  Colin Watson  <cjwatson@debian.org>
3950             Bruno Haible  <bruno@clisp.org>
3951
3952         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
3953         works fine; if not, set REPLACE_STRSIGNAL.
3954         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
3955         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
3956         REPLACE_STRSIGNAL.
3957         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
3958         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
3959         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
3960
3961 2008-01-14  Bruno Haible  <bruno@clisp.org>
3962
3963         * modules/strsignal (Include): Change to <string.h>.
3964
3965 2008-01-14  Colin Watson  <cjwatson@debian.org>
3966
3967         * modules/argp (Notice): Add a notice recommending to change
3968         XGETTEXT_OPTIONS.
3969         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
3970
3971 2008-01-13  Colin Watson  <cjwatson@debian.org>
3972
3973         * modules/strsignal-tests: New file.
3974         * tests/test-strsignal.c: New file.
3975
3976         * lib/strsignal.c: New file, from glibc with modifications.
3977         * lib/siglist.h: New file, from glibc with modifications.
3978         * lib/string.in.h (strsignal): New declaration.
3979         * m4/strsignal.m4: New file.
3980         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
3981         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
3982         * modules/strsignal: New file.
3983         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
3984         HAVE_DECL_STRSIGNAL.
3985
3986 2008-01-13  Bruno Haible  <bruno@clisp.org>
3987
3988         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
3989         locale encoding is not ASCII. Needed for OpenBSD 4.0.
3990         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
3991         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
3992
3993 2008-01-13  Bruno Haible  <bruno@clisp.org>
3994
3995         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
3996         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
3997         * lib/argp.h (__attribute__): Likewise.
3998         * lib/c-stack.c (__attribute__): Likewise.
3999         * lib/error.h (__attribute__): Likewise.
4000         * lib/fts.c (__attribute__): Likewise.
4001         * lib/openat.h (__attribute__): Likewise.
4002         * lib/stdio.in.h (__attribute__): Likewise.
4003         * lib/string.in.h (__attribute__): Likewise.
4004         * lib/utimens.c (__attribute__): Likewise.
4005         * lib/vasnprintf.h (__attribute__): Likewise.
4006         * lib/xalloc.h (__attribute__): Likewise.
4007         * lib/xprintf.h (__attribute__): Likewise.
4008         * lib/xstrtol.h (__attribute__): Likewise.
4009         * lib/xvasprintf.h (__attribute__): Likewise.
4010
4011 2008-01-12  Bruno Haible  <bruno@clisp.org>
4012
4013         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
4014         * doc/glibc-headers/a.out.texi: New file.
4015         * doc/glibc-headers/aliases.texi: New file.
4016         * doc/glibc-headers/alloca.texi: New file.
4017         * doc/glibc-headers/ar.texi: New file.
4018         * doc/glibc-headers/argp.texi: New file.
4019         * doc/glibc-headers/argz.texi: New file.
4020         * doc/glibc-headers/byteswap.texi: New file.
4021         * doc/glibc-headers/crypt.texi: New file.
4022         * doc/glibc-headers/endian.texi: New file.
4023         * doc/glibc-headers/envz.texi: New file.
4024         * doc/glibc-headers/err.texi: New file.
4025         * doc/glibc-headers/error.texi: New file.
4026         * doc/glibc-headers/execinfo.texi: New file.
4027         * doc/glibc-headers/fpu_control.texi: New file.
4028         * doc/glibc-headers/fstab.texi: New file.
4029         * doc/glibc-headers/fts.texi: New file.
4030         * doc/glibc-headers/getopt.texi: New file.
4031         * doc/glibc-headers/ieee754.texi: New file.
4032         * doc/glibc-headers/ifaddrs.texi: New file.
4033         * doc/glibc-headers/libintl.texi: New file.
4034         * doc/glibc-headers/mcheck.texi: New file.
4035         * doc/glibc-headers/mntent.texi: New file.
4036         * doc/glibc-headers/obstack.texi: New file.
4037         * doc/glibc-headers/paths.texi: New file.
4038         * doc/glibc-headers/printf.texi: New file.
4039         * doc/glibc-headers/pty.texi: New file.
4040         * doc/glibc-headers/resolv.texi: New file.
4041         * doc/glibc-headers/shadow.texi: New file.
4042         * doc/glibc-headers/sysexits.texi: New file.
4043         * doc/glibc-headers/ttyent.texi: New file.
4044
4045 2008-01-12  Jim Meyering  <meyering@redhat.com>
4046
4047         announce-gen: emit Gnulib's git-based version string.
4048         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
4049         New option --gnulib-version=V, where V is expected to be
4050         the output of running git describe in the gnulib directory.
4051         (get_tool_versions): Request feedback on xdelta.  I suspect it's
4052         not useful, and plan to stop publishing an xdelta file with each
4053         coreutils release.
4054
4055         * build-aux/announce-gen: Also check for lzma-compressed files.
4056
4057 2008-01-11  Bruno Haible  <bruno@clisp.org>
4058
4059         * tests/test-memmem.c (main): Increase maximum allowed time.
4060         * tests/test-strstr.c (main): Likewise.
4061
4062 2008-01-11  Bruno Haible  <bruno@clisp.org>
4063
4064         * doc/functions/memmem.texi: Add more precisions about platforms.
4065         * doc/functions/strstr.texi: Likewise.
4066
4067 2008-01-10  Eric Blake  <ebb9@byu.net>
4068
4069         * m4/strstr.m4: Delete cruft from copy-n-paste.
4070         Reported by Bruno Haible.
4071
4072 2008-01-10  Bruno Haible  <bruno@clisp.org>
4073
4074         Make c-strstr rely on strstr.
4075         * lib/c-strstr.c: Don't include str-kmp.h.
4076         (c_strstr): Define in terms of strstr.
4077         * modules/c-strstr (Files): Remove lib/str-kmp.h.
4078         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
4079
4080 2008-01-10  Bruno Haible  <bruno@clisp.org>
4081
4082         * doc/gnulib.texi (String Functions in C Locale): New section.
4083         * doc/c-ctype.texi: New file.
4084         * doc/c-strcase.texi: New file.
4085         * doc/c-strcaseeq.texi: New file.
4086         * doc/c-strcasestr.texi: New file.
4087         * doc/c-strstr.texi: New file.
4088         * doc/c-strtod.texi: New file.
4089         * doc/c-strtold.texi: New file.
4090
4091 2008-01-10  Eric Blake  <ebb9@byu.net>
4092
4093         * lib/relocatable.h: Fix a comment.
4094
4095 2008-01-10  Eric Blake  <ebb9@byu.net>
4096
4097         Share two-way algorithm.
4098         * lib/str-two-way.h: New file, merged from...
4099         * lib/memmem.c: ...here...
4100         * lib/strstr.c: ...and here.
4101         * modules/memmem (Files): Use it.
4102         * modules/strstr (Files): Likewise.
4103
4104         Avoid quadratic strstr implementations.
4105         * lib/strstr.c: New file.
4106         * m4/strstr.m4: Likewise.
4107         * modules/strstr: Likewise.
4108         * modules/strstr-tests: Likewise.
4109         * tests/test-strstr.c: Likewise.
4110         * lib/string.in.h (rpl_strstr): Declare.
4111         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
4112         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
4113         * modules/string (Makefile.am): Likewise.
4114         * MODULES.html.sh (string handling): Mention new module.
4115         * doc/functions/strstr.texi (strstr): Document the bug.
4116
4117 2008-01-10  Bruno Haible  <bruno@clisp.org>
4118
4119         * lib/relocatable.h (relocate): State whether result is freshly
4120         allocated or not.
4121         * lib/relocatable.c (relocate): Return a freshly allocated string
4122         instead of a pointer to a privately held string.
4123         Reported by Sylvain Beucler <beuc@gnu.org>.
4124
4125 2008-01-10  Colin Watson  <cjwatson@debian.org>
4126
4127         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
4128         s/S_ISNLK/S_ISLNK/.
4129
4130 2008-01-09  Bruno Haible  <bruno@clisp.org>
4131
4132         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
4133         and other files.
4134         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
4135         if it's only a guess.
4136         * modules/memmem: Simplify by depending on memmem-simple.
4137
4138 2008-01-09  Bruno Haible  <bruno@clisp.org>
4139
4140         Work around OpenBSD 4.0 tdelete() bug.
4141         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
4142         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
4143         macros and don't redefine the enum values.
4144         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
4145         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
4146         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
4147
4148 2008-01-09  Bruno Haible  <bruno@clisp.org>
4149
4150         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
4151         (main): Don't perform the tests if setlocale did not install a UTF-8
4152         locale. Needed on OpenBSD 4.0.
4153         * modules/wcwidth-tests (Depends-on): Add localcharset.
4154
4155 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
4156
4157         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
4158         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
4159         * NEWS: announce this.
4160         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
4161
4162 2008-01-09  Simon Josefsson  <simon@josefsson.org>
4163         and Eric Blake  <ebb9@byu.net>
4164
4165         Add memmem-simple module.
4166         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
4167         (gl_FUNC_MEMMEM): Separate performance from presence checks.
4168         * modules/memmem-simple: New file.
4169         * modules/memmem (Description): Tweak.
4170         * MODULES.html.sh (string handling): Mention new module.
4171         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
4172         addressed by memmem-simple.
4173         * NEWS: Document the difference.
4174
4175 2008-01-09  Eric Blake  <ebb9@byu.net>
4176
4177         Give gcc some memmem optimization hints.
4178         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
4179         (strcasestr): Declare as pure.
4180         * modules/memmem (Maintainer): Claim my implementation.
4181
4182 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4183
4184         Support AIX 6.1 and higher.
4185         * build-aux/config.libpath: Likewise.
4186         * build-aux/config.rpath: Likewise.
4187
4188 2008-01-08  Jim Meyering  <meyering@redhat.com>
4189             Bruno Haible  <bruno@clisp.org>
4190
4191         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
4192         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
4193         Reported by Peter Fales in
4194         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
4195
4196 2008-01-08  Bruno Haible  <bruno@clisp.org>
4197
4198         * modules/unictype/category-of (Depends-on): Add
4199         unictype/category-none.
4200         * modules/unictype/category-and-tests (Depends-on): Add
4201         unictype/category-{L,N,Lu,Nd}.
4202         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
4203         * modules/unictype/category-or-tests (Depends-on): Add
4204         unictype/category-{L,N}.
4205         * modules/unictype/category-name-tests (Depends-on): Add
4206         unictype/category-{Z,Nl}.
4207         Reported by Simon Josefsson.
4208
4209 2008-01-08  Bruno Haible  <bruno@clisp.org>
4210
4211         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
4212         convention better.
4213         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
4214         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
4215         Reported by Peter Miller <millerp@canb.auug.org.au>.
4216
4217 2008-01-08  Eric Blake  <ebb9@byu.net>
4218
4219         Rewrite memmem to guarantee linear complexity without malloc.
4220         * lib/memmem.c (memmem): Use Two-Way rather than
4221         Knuth-Morris-Pratt, to allow O(1) space usage.
4222         (critical_factorization, two_way_short_needle)
4223         (two_way_long_needle): New functions.
4224         (knuth_morris_pratt): Delete.
4225         * modules/memmem (Depends-on): No longer need malloca or stdbool.
4226         Add stdint.
4227         * tests/test-memmem.c (main): Add tests for periodic needle and
4228         sublinear performance.
4229         * doc/functions/memmem.texi (memmem): Document other deficiencies
4230         in cygwin and older glibc.
4231
4232 2008-01-08  Bruno Haible  <bruno@clisp.org>
4233
4234         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
4235         augmentation.
4236
4237 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
4238
4239         Add a configure time option: --disable-acl.
4240         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
4241         AC_ARG_ENABLE(acl).
4242
4243 2008-01-06  Simon Josefsson  <simon@josefsson.org>
4244
4245         * tests/test-localename.c: Don't include obsolete "setenv.h".
4246
4247         * modules/localename-tests (Depends-on): Need unsetenv.
4248
4249 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4250
4251         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
4252
4253 2008-01-06  Colin Watson  <cjwatson@debian.org>
4254
4255         * users.txt: Add man-db.
4256
4257 2008-01-07  Bruno Haible  <bruno@clisp.org>
4258
4259         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
4260         previous section name.
4261
4262 2008-01-07  Bruno Haible  <bruno@clisp.org>
4263
4264         * lib/progname.c (set_program_name): Don't strip off a leading
4265         "lt-" prefix outside a .libs directory.
4266         Suggested by Paul Eggert.
4267
4268 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
4269             Bruno Haible  <bruno@clisp.org>
4270
4271         Improve memory cleanup in 'relocatable' module.
4272         * lib/relocatable.h (compute_curr_prefix): Change return type to
4273         'char *'.
4274         * lib/relocatable.c (compute_curr_prefix): Change return type to
4275         'char *'. Free curr_installdir after use.
4276         (relocate): Free curr_prefix_better after use.
4277         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
4278
4279 2008-01-01  Bruno Haible  <bruno@clisp.org>
4280
4281         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
4282         failure on older glibc systems.
4283         Reported by Peter Fales <psfales@alcatel-lucent.com>.
4284
4285 2008-01-05  Eric Blake  <ebb9@byu.net>
4286
4287         Avoid quadratic system memmem.
4288         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
4289         Reported by Ralf Wildenhues.
4290
4291         Fix memmem test for mingw.
4292         * modules/memmem-tests (configure.ac): Check for alarm.
4293         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
4294         it.
4295         * doc/functions/memmem.texi: New file.
4296         * doc/gnulib.texi (Function Substitutes): Add memmem.
4297         Reported by Bruno Haible.
4298
4299 2008-01-04  Bruno Haible  <bruno@clisp.org>
4300
4301         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
4302         Require gl_HEADER_STRINGS_H_DEFAULTS, not
4303         gl_HEADER_STRING_H_DEFAULTS.
4304
4305 2008-01-04  Eric Blake  <ebb9@byu.net>
4306
4307         Shorten duration of memmem test.
4308         * tests/test-memmem.c (main): Use alarm to declare failure if test
4309         is taking too long.
4310         Reported by Ralf Wildenhues.
4311
4312 2007-12-21  Simon Josefsson  <simon@josefsson.org>
4313
4314         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
4315         string, needed by strerror.
4316
4317 2008-01-03  Colin Watson  <cjwatson@debian.org>
4318             Bruno Haible  <bruno@clisp.org>
4319
4320         * doc/gnulib-tool.texi (Localization): New section.
4321
4322 2008-01-02  Bruno Haible  <bruno@clisp.org>
4323
4324         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
4325         variables to 'unsigned char *' type.
4326         Reported by Paul Eggert.
4327
4328 2008-01-02  Jim Meyering  <jim@meyering.net>
4329
4330         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
4331
4332 2007-12-31  Jim Meyering  <jim@meyering.net>
4333
4334         Avoid use of private FTS type name.
4335         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
4336
4337 2007-12-30  Karl Berry  <karl@gnu.org>
4338
4339         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
4340         work around defect in Texinfo and/or the standalone Info browser.
4341
4342 2007-12-30  Bruno Haible  <bruno@clisp.org>
4343
4344         Unify 5 copies of the KMP code.
4345         * lib/str-kmp.h: New file.
4346         * lib/c-strcasestr.c: Include str-kmp.h.
4347         (knuth_morris_pratt): Remove function.
4348         (c_strcasestr): Update.
4349         * lib/c-strstr.c: Include str-kmp.h.
4350         (knuth_morris_pratt): Remove function.
4351         (c_strcasestr): Update.
4352         * lib/mbscasestr.c: Include str-kmp.h.
4353         (knuth_morris_pratt_unibyte): Remove function.
4354         * lib/mbsstr.c: Include str-kmp.h.
4355         (knuth_morris_pratt_unibyte): Remove function.
4356         * lib/strcasestr.c: Include str-kmp.h.
4357         (knuth_morris_pratt): Remove function.
4358         (strcasestr): Update.
4359         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
4360         * modules/c-strstr (Files): Likewise.
4361         * modules/mbscasestr (Files): Likewise.
4362         * modules/mbsstr (Files): Likewise.
4363         * modules/strcasestr (Files): Likewise.
4364         Suggested by Paul Eggert.
4365
4366 2007-12-30  Bruno Haible  <bruno@clisp.org>
4367
4368         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
4369         defined.
4370
4371 2007-12-30  Bruno Haible  <bruno@clisp.org>
4372
4373         * lib/xmalloca.h: Include xalloc.h.
4374         (xnmalloca): New macro.
4375
4376 2007-12-30  Bruno Haible  <bruno@clisp.org>
4377
4378         * lib/malloca.h (nmalloca): New macro.
4379         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
4380         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
4381         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
4382         knuth_morris_pratt_multibyte): Likewise.
4383         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
4384         knuth_morris_pratt_multibyte): Likewise.
4385         * lib/memmem.c (knuth_morris_pratt): Likewise.
4386         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
4387
4388 2007-12-25  Bruno Haible  <bruno@clisp.org>
4389
4390         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
4391         * lib/glob.c: Don't include openat.h.
4392         (link_exists2_p): Add back the code that deals with the
4393         !GLOB_ALTDIRFUNC case.
4394         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
4395         let it do the filename concatenation.
4396         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
4397         * modules/glob (Depends-on): Remove openat.
4398
4399 2007-12-31  Bruno Haible  <bruno@clisp.org>
4400
4401         * modules/dirfd (License): Change to LGPLv2+.
4402         Approved by Jim Meyering.
4403
4404 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
4405
4406         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
4407         when multiplying M by sizeof (size_t).
4408
4409 2007-12-10  Martin Lambers  <marlam@marlam.de>
4410
4411         Override getpagesize on mingw.
4412         * lib/getpagesize.c: New file.
4413         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
4414         * modules/getpagesize (Files): Add lib/getpagesize.c.
4415         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
4416         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
4417         REPLACE_GETPAGESIZE.
4418         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
4419
4420 2007-12-25  Bruno Haible  <bruno@clisp.org>
4421
4422         * modules/localcharset (Notice): New field.
4423         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
4424         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
4425
4426 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
4427             Bruno Haible  <bruno@clisp.org>
4428
4429         Avoid using the syntax symbol() in formatted documentation.
4430         * MODULES.html.sh (func_module): When replacing symbol() with a
4431         hyperlink, remove the parentheses. Show an error if some remain.
4432         Recognize and render the '...' syntax.
4433         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
4434         Rework. Add paragraph about GCC's inlining.
4435         * doc/alloca.texi: Likewise.
4436         * doc/error.texi: Remove parentheses from symbol reference.
4437         * doc/gnulib-intro.texi: Likewise.
4438         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
4439         * modules/fnmatch (Description): Reword to say "the ... function".
4440         * modules/full-read (Description): Likewise.
4441         * modules/full-write (Description): Likewise.
4442         * modules/safe-read (Description): Likewise.
4443         * modules/safe-write (Description): Likewise.
4444         * modules/strchrnul (Description): Likewise.
4445         * modules/trim (Description): Likewise.
4446         * modules/error (Description): Remove parentheses from symbol
4447         references.
4448         * modules/verror (Description): Likewise.
4449         Reported by Karl Berry.
4450
4451 2007-12-25  Bruno Haible  <bruno@clisp.org>
4452
4453         Fixup after 2007-10-16 commit.
4454         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
4455
4456 2007-12-24  Bruno Haible  <bruno@clisp.org>
4457
4458         Make --enable-relocatable work with DESTDIR.
4459         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
4460         to compute installdir from destprog.
4461         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
4462         also set the RELOC_DESTDIR variable.
4463         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
4464
4465 2007-12-24  Bruno Haible  <bruno@clisp.org>
4466
4467         Fix link error due to xalloc_die().
4468         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
4469         of xreadlink.
4470         * lib/relocwrapper.c: Update comments.
4471         * build-aux/install-reloc: Remove xreadlink.c from file list.
4472         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
4473         xreadlink.c.
4474         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
4475
4476 2007-12-24  Bruno Haible  <bruno@clisp.org>
4477
4478         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
4479         * lib/setenv.h: Remove file.
4480         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
4481         lib/setenv.h.
4482         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
4483         (Depends-on): Add stdlib.
4484         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
4485         gl_FUNC_UNSETENV.
4486         (Include): Replace setenv.h with <stdlib.h>.
4487         * modules/unsetenv: New file.
4488         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
4489         * lib/unsetenv.c: Include <stdlib.h> first.
4490         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
4491         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
4492         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
4493         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
4494         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
4495         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
4496         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
4497         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
4498         * doc/functions/unsetenv.texi: Update.
4499         * modules/xsetenv (Depends-on): Add unsetenv.
4500         * modules/getdate (Depends-on): Likewise.
4501         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
4502         * lib/xsetenv.c: Don't include setenv.h.
4503         * lib/getdate.y: Likewise.
4504         * lib/relocwrapper.c: Likewise.
4505         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
4506         (Depends-on): Add stdlib.
4507         * NEWS: Mention the changes.
4508         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
4509
4510 2007-12-23  Bruno Haible  <bruno@clisp.org>
4511
4512         * lib/memmem.c (memmem): Use lowercase variable names. Tab
4513         indentation.
4514
4515 2007-12-23  Bruno Haible  <bruno@clisp.org>
4516
4517         * lib/c-strcasestr.c: Add more comments.
4518         * lib/c-strstr.c: Likewise.
4519         * lib/mbscasestr.c: Likewise.
4520         * lib/mbsstr.c: Likewise.
4521         * lib/strcasestr.c: Likewise.
4522         * lib/memmem.c: Likewise.
4523
4524 2007-12-23  Bruno Haible  <bruno@clisp.org>
4525
4526         * tests/test-memmem.c: Include <string.h> first.
4527
4528 2007-12-22  Bruno Haible  <bruno@clisp.org>
4529
4530         * gnulib-tool (func_create_testdir): Change $auxdir while generating
4531         the contents of $testsbase.
4532         Reported by Ralf Wildenhues.
4533
4534 2007-12-22  Bruno Haible  <bruno@clisp.org>
4535
4536         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
4537         two variables local_ldadd_before, local_ldadd_last.
4538
4539 2007-12-20  Eric Blake  <ebb9@byu.net>
4540
4541         Work around circular library issue when cross-compiling.
4542         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
4543         that progname.o does not need to pull in rpl_memcmp.
4544
4545 2007-12-19  Eric Blake  <ebb9@byu.net>
4546
4547         Fix memmem to avoid O(n^2) worst-case complexity.
4548         * lib/memmem.c (knuth_morris_pratt): New function.
4549         (memmem): Use it if first few naive iterations fail.
4550         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
4551         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
4552         * modules/memchr (License): Likewise.
4553         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
4554         malloca.
4555         * tests/test-memmem.c: Rewrite, borrowing ideas from
4556         test-mbsstr1.c; the old version wouldn't even compile!
4557         * modules/memmem-tests: New file.
4558         * lib/string.in.h (rpl_memmem): Add declaration.
4559         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
4560         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
4561         REPLACE_MEMMEM.
4562
4563 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
4564
4565         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
4566         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
4567         before any system include files, and undef after them all.  This
4568         should fix a problem on VMS reported by John E. Malmberg in
4569         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
4570
4571 2007-12-17  Eric Blake  <ebb9@byu.net>
4572
4573         Revert addition of verify, for BSD/OS.
4574         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
4575         can't handle large files, for the sake of obsolete platforms.
4576         * modules/fseeko (Depends-on): Remove verify.
4577         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
4578         * doc/functions/ftello.texi (ftello): Likewise.
4579         * doc/functions/fgetpos.texi (fgetpos): Likewise.
4580         Reported by Larry Jones.
4581
4582 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
4583
4584         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
4585         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
4586
4587 2007-12-17  Jim Meyering  <meyering@redhat.com>
4588
4589         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
4590         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
4591         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
4592         * modules/getcwd (Depends-on): Add openat.
4593         Reported by Petr Salinger.
4594
4595 2007-12-17  Bruno Haible  <bruno@clisp.org>
4596
4597         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
4598         avoid a segmentation fault of the configure test on x86_64 systems.
4599
4600 2007-12-15  Jim Meyering  <meyering@redhat.com>
4601
4602         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
4603
4604 2007-12-13  Eric Blake  <ebb9@byu.net>
4605
4606         Another fseek test.
4607         * tests/test-fseek.c (main): Also test ungetc handling.
4608         * tests/test-fseeko.c (main): Likewise.
4609         * modules/fseeko (Depends-on): Add verify.
4610         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
4611         large.
4612         Reported by Larry Jones.
4613
4614         Fix fseeko on mingw.
4615         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
4616         seek.
4617
4618         Beef up fseek tests.
4619         * tests/test-fseek.c (main): Also test eof handling.
4620         * tests/test-fseeko.c (main): Likewise.
4621         Reported by Larry Jones.
4622
4623 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
4624
4625         Fix fseeko on BSD-based platforms.
4626         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
4627         successful seek.
4628
4629 2007-12-12  Eric Blake  <ebb9@byu.net>
4630
4631         Allow circular dependency of separate libtests.a
4632         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
4633         when use_libtests.
4634
4635 2007-12-11  Eric Blake  <ebb9@byu.net>
4636
4637         Fix bug with -0.0L in previous patch.
4638         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
4639         * tests/test-isnan.c (main): Also test on zeroes.
4640         * tests/test-isnanf.c (main): Likewise.
4641         * tests/test-isnanl.h (main): Likewise.
4642
4643         Detect pseudo-denormals on x86 even when cross-compiling.
4644         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
4645         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
4646         invalid bit patterns that happen to satisfy ==.
4647
4648         Avoid link failures with separate libtests.a.
4649         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
4650         last, to satisfy circular dependencies.
4651
4652 2007-12-11  Eric Blake  <ebb9@byu.net>
4653         and Bruno Haible  <bruno@clisp.org>
4654
4655         Fix OpenBSD 4.0 <float.h> handling of long double.
4656         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
4657         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
4658         * doc/headers/float.texi (float.h): Document OpenBSD bug.
4659
4660 2007-12-11  Jim Meyering  <meyering@redhat.com>
4661
4662         * users.txt: Add libvirt.
4663
4664         Support versions of autoconf prior to 2.59c.
4665         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
4666         if it is not already defined.
4667
4668 2007-12-09  Bruno Haible  <bruno@clisp.org>
4669
4670         Let 'gnulib-tool --import' collect sources needed for the tests in
4671         tests/ rather than in lib/.
4672         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
4673         argument. If true, add rules to generate libtests.a, and put libtests.a
4674         into $(LDADD). Consider source files in subdirectories and set
4675         uses_subdirs.
4676         (func_emit_initmacro_start, func_emit_initmacro_end,
4677         func_emit_initmacro_done): Pass all arguments explicitly.
4678         (func_import): Determine two module lists main_modules,
4679         testsrelated_modules. Determine use_libtests. Determine two variables
4680         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
4681         instead of just sed_transform_lib_file. Determine two variables
4682         main_files and testsrelated_files. Compute 'files' as the union of
4683         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
4684         func_add_or_update. In the generated gnulib-comp.m4, collect the
4685         object files for tests/ in different variables than those for lib/.
4686         Substitute LIBTESTS_LIBDEPS.
4687         (func_create_testdir): Combine the uses_subdirs results from
4688         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
4689
4690 2007-12-09  Bruno Haible  <bruno@clisp.org>
4691
4692         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
4693         the build-aux directory.
4694
4695 2007-12-09  Bruno Haible  <bruno@clisp.org>
4696
4697         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
4698         introduced on 2006-09-09.
4699
4700 2007-12-07  Jim Meyering  <meyering@redhat.com>
4701
4702         Let these macros work also with autoconf-2.59.
4703         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
4704         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
4705         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
4706
4707 2007-12-06  Jim Meyering  <meyering@redhat.com>
4708
4709         Avoid a configure-time syntax error in gl_FUNC_ACL.
4710         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
4711         function in each branch, before testing the cache variable.
4712
4713 2007-12-04  Eric Blake  <ebb9@byu.net>
4714
4715         Make scripts executable.
4716         * build-aux/config.guess: Add execute permissions.
4717         * build-aux/config.sub: Likewise.
4718         * build-aux/gendocs.sh: Likewise.
4719
4720         Fix frexp on mingw.
4721         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
4722         cross-compiling.
4723         * doc/functions/frexp.texi (frexp): Document the bug.
4724
4725         Make cygwin fseeko check more reliable.
4726         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
4727         version numbers, rather than unrelated feature check.
4728         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
4729         * doc/functions/ftello.texi (ftello): Likewise.
4730         Reported by Bruno Haible.
4731
4732         * m4/strerror.m4: Bump version number.
4733
4734 2007-12-03  Bruno Haible  <bruno@clisp.org>
4735
4736         * doc/functions/mprotect.texi: Mention the mingw problem.
4737
4738 2007-12-03  Eric Blake  <ebb9@byu.net>
4739
4740         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
4741         REPLACE_STRERROR is initialized before this macro.
4742
4743 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
4744
4745         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
4746         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
4747         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
4748         put -lsec in even for programs other than 'ls'.  This fixes a problem
4749         for gettext reported by Bruno Haible in
4750         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
4751         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
4752         Add support for Solaris 10.  This isn't efficient, but should get the
4753         job done for now.
4754
4755 2007-12-03  James Youngman  <jay@gnu.org>
4756
4757         * doc/regexprops-generic.texi: change "an close-group" to "a
4758         close-group" and "illegal" to "not allowed".
4759
4760 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4761
4762         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
4763         pr_byname.h. Needed for the rare case when the maintainer has done
4764         "make maintainer-clean" in the source directory and then attempts a
4765         build outside the source directory.
4766         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
4767         scripts_byname.h.
4768
4769 2007-12-02  Martin Lambers <marlam@marlam.de>
4770             Bruno Haible  <bruno@clisp.org>
4771
4772         * lib/getpagesize.h: Remove file.
4773         * lib/unistd.in.h: Include declaration of getpagesize here.
4774         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
4775         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
4776         HAVE_SYS_PARAM_H.
4777         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
4778         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
4779         * modules/getpagesize (Files): Remove lib/getpagesize.h.
4780         (Depends-on): Add unistd.
4781         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4782         (Include): Use <unistd.h> instead of getpagesize.h.
4783         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
4784         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
4785         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
4786         gl_GETPAGESIZE invocation, already handled by module dependency.
4787         * lib/pagealign_alloc.c: Don't include getpagesize.h.
4788
4789 2007-12-02  Bruno Haible  <bruno@clisp.org>
4790
4791         * modules/strings-tests: New file.
4792         * tests/test-strings.c: New file.
4793
4794         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
4795         * lib/strings.in.h: New file.
4796         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
4797         * m4/strings_h.m4: New file.
4798         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
4799         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
4800         * modules/strings: New file.
4801         * modules/string (Makefile.am): Update.
4802         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
4803         Reported by Karl Berry.
4804
4805 2007-12-01  Eric Blake  <ebb9@byu.net>
4806
4807         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
4808         accomodate fix in cygwin 1.5.25.
4809
4810 2007-12-01  Jim Meyering  <meyering@redhat.com>
4811
4812         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
4813         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
4814         that would inhibit utf8-optimization of a regexp containing line-
4815         or buffer-anchors, e.g., `^', `$'.
4816
4817 2007-11-30  Bruno Haible  <bruno@clisp.org>
4818
4819         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
4820         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
4821         glthread_recursive_lock_init.
4822         * lib/lock.c (glthread_recursive_lock_init)
4823         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
4824         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
4825
4826 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
4827
4828         New function qset_acl, like set_acl but with syscall semantics.
4829         * lib/acl.h (qset_acl): New decl.
4830         * lib/acl.c (qset_acl): New function.
4831         (set_acl): Use new function.  Use more-consistent diagnostics.
4832
4833 2007-11-28  Jim Meyering  <meyering@redhat.com>
4834
4835         * modules/physmem (License): Change from GPL to LGPLv2+.
4836
4837 2007-11-26  Bruno Haible  <bruno@clisp.org>
4838
4839         * lib/vasnprintf.c (decode_long_double): Don't abort if the
4840         'long double' type has excess precision.
4841         Reported by Jim Meyering in
4842         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
4843
4844 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4845
4846         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
4847         Sync from <http://gnu.org/licenses>.
4848         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
4849         with license text from same location.
4850         * doc/maintain.texi, doc/standards.texi:  Sync from
4851         <http://savannah.gnu.org/projects/gnustandards>.
4852
4853 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
4854         and Jim Meyering  <meyering@redhat.com>
4855
4856         Adjust getdate' grammar to accept a slightly more regular language.
4857         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
4858         Before, the former was rejected.
4859         * lib/getdate.y (digits_to_date_time): New function, factored
4860         out of ...
4861         (number): ...here.  Just call digits_to_date_time.
4862         (hybrid): New non-terminal to handle an <unsigned number,
4863         signed relative offset> sequence consistently.
4864
4865 2007-11-18  Jim Meyering  <meyering@redhat.com>
4866
4867         Pull my changes from coreutils:
4868         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
4869         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
4870         use of $gnulib_tool_option_extras, so that it's separated from the
4871         preceding argument.
4872
4873         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
4874         * build-aux/bootstrap (cp_mark_as_generated): Create any required
4875         parent destination directories before copying a file into place.
4876
4877 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
4878
4879         bootstrap: work also with 4-argument variant of AC_INIT
4880         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
4881
4882 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
4883
4884         Port test-getaddrinfo to Solaris.
4885         Problem reported by Bruno Haible in
4886         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
4887         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
4888         explanation of setting 'hints'.
4889         Don't reject an implementation merely because it returns EAI_SERVICE.
4890         (EAI_SERVICE): Define to 0 if not defined.
4891
4892 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
4893
4894         The license of gnu-make and posix-shell is now "GPLed build tool".
4895         * modules/gnu-make (License): Likewise.
4896         * modules/posix-shell (License): Likewise.
4897
4898         New module posix-shell, for determining a POSIX shell
4899         or perhaps something that is close enough to a POSIX shell.
4900         * m4/posix-shell.m4: New file.
4901         * modules/posix-shell: New file.
4902
4903         * MODULES.html.sh: Mention new module.
4904
4905         New module gnu-make, for determining whether we're using GNU Make.
4906         * m4/gnu-make.m4: New file.
4907         * modules/gnu-make: New file.
4908         * MODULES.html.sh: Mention new module.
4909
4910 2007-11-14  Jim Meyering  <meyering@redhat.com>
4911
4912         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
4913         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
4914         use this macro to create a function _definition_.
4915         Remove useless "#undef ARGMATCH_DIE".
4916
4917 2007-11-14  Bruno Haible  <bruno@clisp.org>
4918
4919         * lib/config.charset: Update for OpenBSD 4.1.
4920         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
4921
4922 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
4923
4924         Document 64-bit #if problems in stdint.texi.
4925         * doc/headers/stdint.texi (stdint.h): Mention problems with
4926         64-bit-#if, and how to work around them.
4927
4928         Don't insist on 'long long int' support in the preprocessor.  It
4929         breaks too many things.  For example, PRIdMAX still uses a 'long
4930         long int' format with the latest Sun compiler, even though
4931         HAVE_LONG_LONG_INT isn't defined due to that compiler's
4932         preprocessor problem.  This causes the latest coreutils to dump
4933         core on Solaris 10 sparc with the Sun C compiler.
4934         Instead, fix the 2007-10-16 problem in a different way, by evaluating
4935         the troublesome expressions at configure-time, not at #if-time.
4936         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
4937         preprocessor.
4938         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
4939         compile-time C checks, done at 'configure'-time.
4940         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
4941         * modules/inttypes (Makefile): Substitute the new symbols that
4942         gl_INTTYPES_H now generates.
4943         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
4944
4945 2007-11-12  Bruno Haible  <bruno@clisp.org>
4946
4947         Tests for Unicode character classification functions.
4948
4949         * modules/unictype/bidicategory-byname-tests: New file.
4950         * modules/unictype/bidicategory-name-tests: New file.
4951         * modules/unictype/bidicategory-of-tests: New file.
4952         * modules/unictype/bidicategory-test-tests: New file.
4953         * modules/unictype/block-list-tests: New file.
4954         * modules/unictype/block-of-tests: New file.
4955         * modules/unictype/block-test-tests: New file.
4956         * modules/unictype/category-C-tests: New file.
4957         * modules/unictype/category-Cc-tests: New file.
4958         * modules/unictype/category-Cf-tests: New file.
4959         * modules/unictype/category-Cn-tests: New file.
4960         * modules/unictype/category-Co-tests: New file.
4961         * modules/unictype/category-Cs-tests: New file.
4962         * modules/unictype/category-L-tests: New file.
4963         * modules/unictype/category-Ll-tests: New file.
4964         * modules/unictype/category-Lm-tests: New file.
4965         * modules/unictype/category-Lo-tests: New file.
4966         * modules/unictype/category-Lt-tests: New file.
4967         * modules/unictype/category-Lu-tests: New file.
4968         * modules/unictype/category-M-tests: New file.
4969         * modules/unictype/category-Mc-tests: New file.
4970         * modules/unictype/category-Me-tests: New file.
4971         * modules/unictype/category-Mn-tests: New file.
4972         * modules/unictype/category-N-tests: New file.
4973         * modules/unictype/category-Nd-tests: New file.
4974         * modules/unictype/category-Nl-tests: New file.
4975         * modules/unictype/category-No-tests: New file.
4976         * modules/unictype/category-P-tests: New file.
4977         * modules/unictype/category-Pc-tests: New file.
4978         * modules/unictype/category-Pd-tests: New file.
4979         * modules/unictype/category-Pe-tests: New file.
4980         * modules/unictype/category-Pf-tests: New file.
4981         * modules/unictype/category-Pi-tests: New file.
4982         * modules/unictype/category-Po-tests: New file.
4983         * modules/unictype/category-Ps-tests: New file.
4984         * modules/unictype/category-S-tests: New file.
4985         * modules/unictype/category-Sc-tests: New file.
4986         * modules/unictype/category-Sk-tests: New file.
4987         * modules/unictype/category-Sm-tests: New file.
4988         * modules/unictype/category-So-tests: New file.
4989         * modules/unictype/category-Z-tests: New file.
4990         * modules/unictype/category-Zl-tests: New file.
4991         * modules/unictype/category-Zp-tests: New file.
4992         * modules/unictype/category-Zs-tests: New file.
4993         * modules/unictype/category-and-not-tests: New file.
4994         * modules/unictype/category-and-tests: New file.
4995         * modules/unictype/category-byname-tests: New file.
4996         * modules/unictype/category-name-tests: New file.
4997         * modules/unictype/category-none-tests: New file.
4998         * modules/unictype/category-of-tests: New file.
4999         * modules/unictype/category-or-tests: New file.
5000         * modules/unictype/category-test-withtable-tests: New file.
5001         * modules/unictype/combining-class-tests: New file.
5002         * modules/unictype/ctype-alnum-tests: New file.
5003         * modules/unictype/ctype-alpha-tests: New file.
5004         * modules/unictype/ctype-blank-tests: New file.
5005         * modules/unictype/ctype-cntrl-tests: New file.
5006         * modules/unictype/ctype-digit-tests: New file.
5007         * modules/unictype/ctype-graph-tests: New file.
5008         * modules/unictype/ctype-lower-tests: New file.
5009         * modules/unictype/ctype-print-tests: New file.
5010         * modules/unictype/ctype-punct-tests: New file.
5011         * modules/unictype/ctype-space-tests: New file.
5012         * modules/unictype/ctype-upper-tests: New file.
5013         * modules/unictype/ctype-xdigit-tests: New file.
5014         * modules/unictype/decimal-digit-tests: New file.
5015         * modules/unictype/digit-tests: New file.
5016         * modules/unictype/mirror-tests: New file.
5017         * modules/unictype/numeric-tests: New file.
5018         * modules/unictype/property-alphabetic-tests: New file.
5019         * modules/unictype/property-ascii-hex-digit-tests: New file.
5020         * modules/unictype/property-bidi-arabic-digit-tests: New file.
5021         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
5022         * modules/unictype/property-bidi-block-separator-tests: New file.
5023         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
5024         * modules/unictype/property-bidi-common-separator-tests: New file.
5025         * modules/unictype/property-bidi-control-tests: New file.
5026         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
5027         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
5028         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
5029         * modules/unictype/property-bidi-european-digit-tests: New file.
5030         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
5031         * modules/unictype/property-bidi-left-to-right-tests: New file.
5032         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
5033         * modules/unictype/property-bidi-other-neutral-tests: New file.
5034         * modules/unictype/property-bidi-pdf-tests: New file.
5035         * modules/unictype/property-bidi-segment-separator-tests: New file.
5036         * modules/unictype/property-bidi-whitespace-tests: New file.
5037         * modules/unictype/property-byname-tests: New file.
5038         * modules/unictype/property-combining-tests: New file.
5039         * modules/unictype/property-composite-tests: New file.
5040         * modules/unictype/property-currency-symbol-tests: New file.
5041         * modules/unictype/property-dash-tests: New file.
5042         * modules/unictype/property-decimal-digit-tests: New file.
5043         * modules/unictype/property-default-ignorable-code-point-tests: New file.
5044         * modules/unictype/property-deprecated-tests: New file.
5045         * modules/unictype/property-diacritic-tests: New file.
5046         * modules/unictype/property-extender-tests: New file.
5047         * modules/unictype/property-format-control-tests: New file.
5048         * modules/unictype/property-grapheme-base-tests: New file.
5049         * modules/unictype/property-grapheme-extend-tests: New file.
5050         * modules/unictype/property-grapheme-link-tests: New file.
5051         * modules/unictype/property-hex-digit-tests: New file.
5052         * modules/unictype/property-hyphen-tests: New file.
5053         * modules/unictype/property-id-continue-tests: New file.
5054         * modules/unictype/property-id-start-tests: New file.
5055         * modules/unictype/property-ideographic-tests: New file.
5056         * modules/unictype/property-ids-binary-operator-tests: New file.
5057         * modules/unictype/property-ids-trinary-operator-tests: New file.
5058         * modules/unictype/property-ignorable-control-tests: New file.
5059         * modules/unictype/property-iso-control-tests: New file.
5060         * modules/unictype/property-join-control-tests: New file.
5061         * modules/unictype/property-left-of-pair-tests: New file.
5062         * modules/unictype/property-line-separator-tests: New file.
5063         * modules/unictype/property-logical-order-exception-tests: New file.
5064         * modules/unictype/property-lowercase-tests: New file.
5065         * modules/unictype/property-math-tests: New file.
5066         * modules/unictype/property-non-break-tests: New file.
5067         * modules/unictype/property-not-a-character-tests: New file.
5068         * modules/unictype/property-numeric-tests: New file.
5069         * modules/unictype/property-other-alphabetic-tests: New file.
5070         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
5071         * modules/unictype/property-other-grapheme-extend-tests: New file.
5072         * modules/unictype/property-other-id-continue-tests: New file.
5073         * modules/unictype/property-other-id-start-tests: New file.
5074         * modules/unictype/property-other-lowercase-tests: New file.
5075         * modules/unictype/property-other-math-tests: New file.
5076         * modules/unictype/property-other-uppercase-tests: New file.
5077         * modules/unictype/property-paired-punctuation-tests: New file.
5078         * modules/unictype/property-paragraph-separator-tests: New file.
5079         * modules/unictype/property-pattern-syntax-tests: New file.
5080         * modules/unictype/property-pattern-white-space-tests: New file.
5081         * modules/unictype/property-private-use-tests: New file.
5082         * modules/unictype/property-punctuation-tests: New file.
5083         * modules/unictype/property-quotation-mark-tests: New file.
5084         * modules/unictype/property-radical-tests: New file.
5085         * modules/unictype/property-sentence-terminal-tests: New file.
5086         * modules/unictype/property-soft-dotted-tests: New file.
5087         * modules/unictype/property-space-tests: New file.
5088         * modules/unictype/property-terminal-punctuation-tests: New file.
5089         * modules/unictype/property-test-tests: New file.
5090         * modules/unictype/property-titlecase-tests: New file.
5091         * modules/unictype/property-unassigned-code-value-tests: New file.
5092         * modules/unictype/property-unified-ideograph-tests: New file.
5093         * modules/unictype/property-uppercase-tests: New file.
5094         * modules/unictype/property-variation-selector-tests: New file.
5095         * modules/unictype/property-white-space-tests: New file.
5096         * modules/unictype/property-xid-continue-tests: New file.
5097         * modules/unictype/property-xid-start-tests: New file.
5098         * modules/unictype/property-zero-width-tests: New file.
5099         * modules/unictype/scripts-tests: New file.
5100         * modules/unictype/syntax-c-ident-tests: New file.
5101         * modules/unictype/syntax-c-whitespace-tests: New file.
5102         * modules/unictype/syntax-java-ident-tests: New file.
5103         * modules/unictype/syntax-java-whitespace-tests: New file.
5104         * tests/unictype/test-bidi_byname.c: New file.
5105         * tests/unictype/test-bidi_name.c: New file.
5106         * tests/unictype/test-bidi_of.c: New file.
5107         * tests/unictype/test-bidi_test.c: New file.
5108         * tests/unictype/test-block_list.c: New file.
5109         * tests/unictype/test-block_of.c: New file.
5110         * tests/unictype/test-block_test.c: New file.
5111         * tests/unictype/test-categ_and.c: New file.
5112         * tests/unictype/test-categ_and_not.c: New file.
5113         * tests/unictype/test-categ_byname.c: New file.
5114         * tests/unictype/test-categ_name.c: New file.
5115         * tests/unictype/test-categ_none.c: New file.
5116         * tests/unictype/test-categ_of.c: New file.
5117         * tests/unictype/test-categ_or.c: New file.
5118         * tests/unictype/test-categ_test_withtable.c: New file.
5119         * tests/unictype/test-combining.c: New file.
5120         * tests/unictype/test-decdigit.c: New file.
5121         * tests/unictype/test-digit.c: New file.
5122         * tests/unictype/test-mirror.c: New file.
5123         * tests/unictype/test-numeric.c: New file.
5124         * tests/unictype/test-pr_byname.c: New file.
5125         * tests/unictype/test-pr_test.c: New file.
5126         * tests/unictype/test-predicate-part1.h: New file.
5127         * tests/unictype/test-predicate-part2.h: New file.
5128         * tests/unictype/test-scripts.c: New file.
5129         * tests/unictype/test-sy_c_ident.c: New file.
5130         * tests/unictype/test-sy_java_ident.c: New file.
5131
5132         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
5133         for Unicode 5.0.0.
5134         * tests/unictype/test-categ_Cc.c: Likewise.
5135         * tests/unictype/test-categ_Cf.c: Likewise.
5136         * tests/unictype/test-categ_Cn.c: Likewise.
5137         * tests/unictype/test-categ_Co.c: Likewise.
5138         * tests/unictype/test-categ_Cs.c: Likewise.
5139         * tests/unictype/test-categ_L.c: Likewise.
5140         * tests/unictype/test-categ_Ll.c: Likewise.
5141         * tests/unictype/test-categ_Lm.c: Likewise.
5142         * tests/unictype/test-categ_Lo.c: Likewise.
5143         * tests/unictype/test-categ_Lt.c: Likewise.
5144         * tests/unictype/test-categ_Lu.c: Likewise.
5145         * tests/unictype/test-categ_M.c: Likewise.
5146         * tests/unictype/test-categ_Mc.c: Likewise.
5147         * tests/unictype/test-categ_Me.c: Likewise.
5148         * tests/unictype/test-categ_Mn.c: Likewise.
5149         * tests/unictype/test-categ_N.c: Likewise.
5150         * tests/unictype/test-categ_Nd.c: Likewise.
5151         * tests/unictype/test-categ_Nl.c: Likewise.
5152         * tests/unictype/test-categ_No.c: Likewise.
5153         * tests/unictype/test-categ_P.c: Likewise.
5154         * tests/unictype/test-categ_Pc.c: Likewise.
5155         * tests/unictype/test-categ_Pd.c: Likewise.
5156         * tests/unictype/test-categ_Pe.c: Likewise.
5157         * tests/unictype/test-categ_Pf.c: Likewise.
5158         * tests/unictype/test-categ_Pi.c: Likewise.
5159         * tests/unictype/test-categ_Po.c: Likewise.
5160         * tests/unictype/test-categ_Ps.c: Likewise.
5161         * tests/unictype/test-categ_S.c: Likewise.
5162         * tests/unictype/test-categ_Sc.c: Likewise.
5163         * tests/unictype/test-categ_Sk.c: Likewise.
5164         * tests/unictype/test-categ_Sm.c: Likewise.
5165         * tests/unictype/test-categ_So.c: Likewise.
5166         * tests/unictype/test-categ_Z.c: Likewise.
5167         * tests/unictype/test-categ_Zl.c: Likewise.
5168         * tests/unictype/test-categ_Zp.c: Likewise.
5169         * tests/unictype/test-categ_Zs.c: Likewise.
5170         * tests/unictype/test-ctype_alnum.c: Likewise.
5171         * tests/unictype/test-ctype_alpha.c: Likewise.
5172         * tests/unictype/test-ctype_blank.c: Likewise.
5173         * tests/unictype/test-ctype_cntrl.c: Likewise.
5174         * tests/unictype/test-ctype_digit.c: Likewise.
5175         * tests/unictype/test-ctype_graph.c: Likewise.
5176         * tests/unictype/test-ctype_lower.c: Likewise.
5177         * tests/unictype/test-ctype_print.c: Likewise.
5178         * tests/unictype/test-ctype_punct.c: Likewise.
5179         * tests/unictype/test-ctype_space.c: Likewise.
5180         * tests/unictype/test-ctype_upper.c: Likewise.
5181         * tests/unictype/test-ctype_xdigit.c: Likewise.
5182         * tests/unictype/test-decdigit.h: Likewise.
5183         * tests/unictype/test-digit.h: Likewise.
5184         * tests/unictype/test-numeric.h: Likewise.
5185         * tests/unictype/test-pr_alphabetic.c: Likewise.
5186         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
5187         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
5188         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
5189         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
5190         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
5191         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
5192         * tests/unictype/test-pr_bidi_control.c: Likewise.
5193         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
5194         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
5195         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
5196         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
5197         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
5198         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
5199         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
5200         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
5201         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
5202         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
5203         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
5204         * tests/unictype/test-pr_combining.c: Likewise.
5205         * tests/unictype/test-pr_composite.c: Likewise.
5206         * tests/unictype/test-pr_currency_symbol.c: Likewise.
5207         * tests/unictype/test-pr_dash.c: Likewise.
5208         * tests/unictype/test-pr_decimal_digit.c: Likewise.
5209         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
5210         * tests/unictype/test-pr_deprecated.c: Likewise.
5211         * tests/unictype/test-pr_diacritic.c: Likewise.
5212         * tests/unictype/test-pr_extender.c: Likewise.
5213         * tests/unictype/test-pr_format_control.c: Likewise.
5214         * tests/unictype/test-pr_grapheme_base.c: Likewise.
5215         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
5216         * tests/unictype/test-pr_grapheme_link.c: Likewise.
5217         * tests/unictype/test-pr_hex_digit.c: Likewise.
5218         * tests/unictype/test-pr_hyphen.c: Likewise.
5219         * tests/unictype/test-pr_id_continue.c: Likewise.
5220         * tests/unictype/test-pr_id_start.c: Likewise.
5221         * tests/unictype/test-pr_ideographic.c: Likewise.
5222         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
5223         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
5224         * tests/unictype/test-pr_ignorable_control.c: Likewise.
5225         * tests/unictype/test-pr_iso_control.c: Likewise.
5226         * tests/unictype/test-pr_join_control.c: Likewise.
5227         * tests/unictype/test-pr_left_of_pair.c: Likewise.
5228         * tests/unictype/test-pr_line_separator.c: Likewise.
5229         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
5230         * tests/unictype/test-pr_lowercase.c: Likewise.
5231         * tests/unictype/test-pr_math.c: Likewise.
5232         * tests/unictype/test-pr_non_break.c: Likewise.
5233         * tests/unictype/test-pr_not_a_character.c: Likewise.
5234         * tests/unictype/test-pr_numeric.c: Likewise.
5235         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
5236         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
5237         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
5238         * tests/unictype/test-pr_other_id_continue.c: Likewise.
5239         * tests/unictype/test-pr_other_id_start.c: Likewise.
5240         * tests/unictype/test-pr_other_lowercase.c: Likewise.
5241         * tests/unictype/test-pr_other_math.c: Likewise.
5242         * tests/unictype/test-pr_other_uppercase.c: Likewise.
5243         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
5244         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
5245         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
5246         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
5247         * tests/unictype/test-pr_private_use.c: Likewise.
5248         * tests/unictype/test-pr_punctuation.c: Likewise.
5249         * tests/unictype/test-pr_quotation_mark.c: Likewise.
5250         * tests/unictype/test-pr_radical.c: Likewise.
5251         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
5252         * tests/unictype/test-pr_soft_dotted.c: Likewise.
5253         * tests/unictype/test-pr_space.c: Likewise.
5254         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
5255         * tests/unictype/test-pr_titlecase.c: Likewise.
5256         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
5257         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
5258         * tests/unictype/test-pr_uppercase.c: Likewise.
5259         * tests/unictype/test-pr_variation_selector.c: Likewise.
5260         * tests/unictype/test-pr_white_space.c: Likewise.
5261         * tests/unictype/test-pr_xid_continue.c: Likewise.
5262         * tests/unictype/test-pr_xid_start.c: Likewise.
5263         * tests/unictype/test-pr_zero_width.c: Likewise.
5264         * tests/unictype/test-sy_c_whitespace.c: Likewise.
5265         * tests/unictype/test-sy_java_whitespace.c: Likewise.
5266
5267 2007-11-12  Bruno Haible  <bruno@clisp.org>
5268
5269         Unicode character classification functions.
5270         * lib/unictype.h: New file.
5271         * modules/unictype/base: New file.
5272         * modules/unictype/category-L: New file.
5273         * modules/unictype/category-Lu: New file.
5274         * modules/unictype/category-Ll: New file.
5275         * modules/unictype/category-Lt: New file.
5276         * modules/unictype/category-Lm: New file.
5277         * modules/unictype/category-Lo: New file.
5278         * modules/unictype/category-M: New file.
5279         * modules/unictype/category-Mn: New file.
5280         * modules/unictype/category-Mc: New file.
5281         * modules/unictype/category-Me: New file.
5282         * modules/unictype/category-N: New file.
5283         * modules/unictype/category-Nd: New file.
5284         * modules/unictype/category-Nl: New file.
5285         * modules/unictype/category-No: New file.
5286         * modules/unictype/category-P: New file.
5287         * modules/unictype/category-Pc: New file.
5288         * modules/unictype/category-Pd: New file.
5289         * modules/unictype/category-Ps: New file.
5290         * modules/unictype/category-Pe: New file.
5291         * modules/unictype/category-Pi: New file.
5292         * modules/unictype/category-Pf: New file.
5293         * modules/unictype/category-Po: New file.
5294         * modules/unictype/category-S: New file.
5295         * modules/unictype/category-Sm: New file.
5296         * modules/unictype/category-Sc: New file.
5297         * modules/unictype/category-Sk: New file.
5298         * modules/unictype/category-So: New file.
5299         * modules/unictype/category-Z: New file.
5300         * modules/unictype/category-Zs: New file.
5301         * modules/unictype/category-Zl: New file.
5302         * modules/unictype/category-Zp: New file.
5303         * modules/unictype/category-C: New file.
5304         * modules/unictype/category-Cc: New file.
5305         * modules/unictype/category-Cf: New file.
5306         * modules/unictype/category-Cs: New file.
5307         * modules/unictype/category-Co: New file.
5308         * modules/unictype/category-Cn: New file.
5309         * modules/unictype/category-or: New file.
5310         * modules/unictype/category-of: New file.
5311         * modules/unictype/category-test: New file.
5312         * modules/unictype/category-test-withtable: New file.
5313         * modules/unictype/category-byname: New file.
5314         * modules/unictype/category-none: New file.
5315         * modules/unictype/category-and: New file.
5316         * modules/unictype/category-and-not: New file.
5317         * modules/unictype/category-name: New file.
5318         * modules/unictype/combining-class: New file.
5319         * modules/unictype/category-all: New file.
5320         * modules/unictype/bidicategory-all: New file.
5321         * modules/unictype/bidicategory-byname: New file.
5322         * modules/unictype/bidicategory-name: New file.
5323         * modules/unictype/bidicategory-of: New file.
5324         * modules/unictype/bidicategory-test: New file.
5325         * modules/unictype/decimal-digit: New file.
5326         * modules/unictype/digit: New file.
5327         * modules/unictype/numeric: New file.
5328         * modules/unictype/mirror: New file.
5329         * modules/unictype/property-white-space: New file.
5330         * modules/unictype/property-alphabetic: New file.
5331         * modules/unictype/property-other-alphabetic: New file.
5332         * modules/unictype/property-not-a-character: New file.
5333         * modules/unictype/property-default-ignorable-code-point: New file.
5334         * modules/unictype/property-other-default-ignorable-code-point: New
5335         file.
5336         * modules/unictype/property-deprecated: New file.
5337         * modules/unictype/property-logical-order-exception: New file.
5338         * modules/unictype/property-variation-selector: New file.
5339         * modules/unictype/property-private-use: New file.
5340         * modules/unictype/property-unassigned-code-value: New file.
5341         * modules/unictype/property-uppercase: New file.
5342         * modules/unictype/property-other-uppercase: New file.
5343         * modules/unictype/property-lowercase: New file.
5344         * modules/unictype/property-other-lowercase: New file.
5345         * modules/unictype/property-titlecase: New file.
5346         * modules/unictype/property-soft-dotted: New file.
5347         * modules/unictype/property-id-start: New file.
5348         * modules/unictype/property-other-id-start: New file.
5349         * modules/unictype/property-id-continue: New file.
5350         * modules/unictype/property-other-id-continue: New file.
5351         * modules/unictype/property-xid-start: New file.
5352         * modules/unictype/property-xid-continue: New file.
5353         * modules/unictype/property-pattern-white-space: New file.
5354         * modules/unictype/property-pattern-syntax: New file.
5355         * modules/unictype/property-join-control: New file.
5356         * modules/unictype/property-grapheme-base: New file.
5357         * modules/unictype/property-grapheme-extend: New file.
5358         * modules/unictype/property-other-grapheme-extend: New file.
5359         * modules/unictype/property-grapheme-link: New file.
5360         * modules/unictype/property-bidi-control: New file.
5361         * modules/unictype/property-bidi-left-to-right: New file.
5362         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
5363         * modules/unictype/property-bidi-arabic-right-to-left: New file.
5364         * modules/unictype/property-bidi-european-digit: New file.
5365         * modules/unictype/property-bidi-eur-num-separator: New file.
5366         * modules/unictype/property-bidi-eur-num-terminator: New file.
5367         * modules/unictype/property-bidi-arabic-digit: New file.
5368         * modules/unictype/property-bidi-common-separator: New file.
5369         * modules/unictype/property-bidi-block-separator: New file.
5370         * modules/unictype/property-bidi-segment-separator: New file.
5371         * modules/unictype/property-bidi-whitespace: New file.
5372         * modules/unictype/property-bidi-non-spacing-mark: New file.
5373         * modules/unictype/property-bidi-boundary-neutral: New file.
5374         * modules/unictype/property-bidi-pdf: New file.
5375         * modules/unictype/property-bidi-embedding-or-override: New file.
5376         * modules/unictype/property-bidi-other-neutral: New file.
5377         * modules/unictype/property-hex-digit: New file.
5378         * modules/unictype/property-ascii-hex-digit: New file.
5379         * modules/unictype/property-ideographic: New file.
5380         * modules/unictype/property-unified-ideograph: New file.
5381         * modules/unictype/property-radical: New file.
5382         * modules/unictype/property-ids-binary-operator: New file.
5383         * modules/unictype/property-ids-trinary-operator: New file.
5384         * modules/unictype/property-zero-width: New file.
5385         * modules/unictype/property-space: New file.
5386         * modules/unictype/property-non-break: New file.
5387         * modules/unictype/property-iso-control: New file.
5388         * modules/unictype/property-format-control: New file.
5389         * modules/unictype/property-dash: New file.
5390         * modules/unictype/property-hyphen: New file.
5391         * modules/unictype/property-punctuation: New file.
5392         * modules/unictype/property-line-separator: New file.
5393         * modules/unictype/property-paragraph-separator: New file.
5394         * modules/unictype/property-quotation-mark: New file.
5395         * modules/unictype/property-sentence-terminal: New file.
5396         * modules/unictype/property-terminal-punctuation: New file.
5397         * modules/unictype/property-currency-symbol: New file.
5398         * modules/unictype/property-math: New file.
5399         * modules/unictype/property-other-math: New file.
5400         * modules/unictype/property-paired-punctuation: New file.
5401         * modules/unictype/property-left-of-pair: New file.
5402         * modules/unictype/property-combining: New file.
5403         * modules/unictype/property-composite: New file.
5404         * modules/unictype/property-decimal-digit: New file.
5405         * modules/unictype/property-numeric: New file.
5406         * modules/unictype/property-diacritic: New file.
5407         * modules/unictype/property-extender: New file.
5408         * modules/unictype/property-ignorable-control: New file.
5409         * modules/unictype/property-test: New file.
5410         * modules/unictype/property-byname: New file.
5411         * modules/unictype/property-all: New file.
5412         * modules/unictype/scripts: New file.
5413         * modules/unictype/scripts-all: New file.
5414         * modules/unictype/block-of: New file.
5415         * modules/unictype/block-test: New file.
5416         * modules/unictype/block-list: New file.
5417         * modules/unictype/block-all: New file.
5418         * modules/unictype/syntax-c-whitespace: New file.
5419         * modules/unictype/syntax-java-whitespace: New file.
5420         * modules/unictype/syntax-c-ident: New file.
5421         * modules/unictype/syntax-java-ident: New file.
5422         * modules/unictype/ctype-alnum: New file.
5423         * modules/unictype/ctype-alpha: New file.
5424         * modules/unictype/ctype-cntrl: New file.
5425         * modules/unictype/ctype-digit: New file.
5426         * modules/unictype/ctype-graph: New file.
5427         * modules/unictype/ctype-lower: New file.
5428         * modules/unictype/ctype-print: New file.
5429         * modules/unictype/ctype-punct: New file.
5430         * modules/unictype/ctype-space: New file.
5431         * modules/unictype/ctype-upper: New file.
5432         * modules/unictype/ctype-xdigit: New file.
5433         * modules/unictype/ctype-blank: New file.
5434         * lib/unictype/bidi_byname.c: New file.
5435         * lib/unictype/bidi_name.c: New file.
5436         * lib/unictype/bidi_of.c: New file.
5437         * lib/unictype/bidi_test.c: New file.
5438         * lib/unictype/bitmap.h: New file.
5439         * lib/unictype/block_test.c: New file.
5440         * lib/unictype/blocks.c: New file.
5441         * lib/unictype/categ_C.c: New file.
5442         * lib/unictype/categ_Cc.c: New file.
5443         * lib/unictype/categ_Cf.c: New file.
5444         * lib/unictype/categ_Cn.c: New file.
5445         * lib/unictype/categ_Co.c: New file.
5446         * lib/unictype/categ_Cs.c: New file.
5447         * lib/unictype/categ_L.c: New file.
5448         * lib/unictype/categ_Ll.c: New file.
5449         * lib/unictype/categ_Lm.c: New file.
5450         * lib/unictype/categ_Lo.c: New file.
5451         * lib/unictype/categ_Lt.c: New file.
5452         * lib/unictype/categ_Lu.c: New file.
5453         * lib/unictype/categ_M.c: New file.
5454         * lib/unictype/categ_Mc.c: New file.
5455         * lib/unictype/categ_Me.c: New file.
5456         * lib/unictype/categ_Mn.c: New file.
5457         * lib/unictype/categ_N.c: New file.
5458         * lib/unictype/categ_Nd.c: New file.
5459         * lib/unictype/categ_Nl.c: New file.
5460         * lib/unictype/categ_No.c: New file.
5461         * lib/unictype/categ_P.c: New file.
5462         * lib/unictype/categ_Pc.c: New file.
5463         * lib/unictype/categ_Pd.c: New file.
5464         * lib/unictype/categ_Pe.c: New file.
5465         * lib/unictype/categ_Pf.c: New file.
5466         * lib/unictype/categ_Pi.c: New file.
5467         * lib/unictype/categ_Po.c: New file.
5468         * lib/unictype/categ_Ps.c: New file.
5469         * lib/unictype/categ_S.c: New file.
5470         * lib/unictype/categ_Sc.c: New file.
5471         * lib/unictype/categ_Sk.c: New file.
5472         * lib/unictype/categ_Sm.c: New file.
5473         * lib/unictype/categ_So.c: New file.
5474         * lib/unictype/categ_Z.c: New file.
5475         * lib/unictype/categ_Zl.c: New file.
5476         * lib/unictype/categ_Zp.c: New file.
5477         * lib/unictype/categ_Zs.c: New file.
5478         * lib/unictype/categ_and.c: New file.
5479         * lib/unictype/categ_and_not.c: New file.
5480         * lib/unictype/categ_byname.c: New file.
5481         * lib/unictype/categ_name.c: New file.
5482         * lib/unictype/categ_none.c: New file.
5483         * lib/unictype/categ_of.c: New file.
5484         * lib/unictype/categ_or.c: New file.
5485         * lib/unictype/categ_test.c: New file.
5486         * lib/unictype/combining.c: New file.
5487         * lib/unictype/ctype_alnum.c: New file.
5488         * lib/unictype/ctype_alpha.c: New file.
5489         * lib/unictype/ctype_blank.c: New file.
5490         * lib/unictype/ctype_cntrl.c: New file.
5491         * lib/unictype/ctype_digit.c: New file.
5492         * lib/unictype/ctype_graph.c: New file.
5493         * lib/unictype/ctype_lower.c: New file.
5494         * lib/unictype/ctype_print.c: New file.
5495         * lib/unictype/ctype_punct.c: New file.
5496         * lib/unictype/ctype_space.c: New file.
5497         * lib/unictype/ctype_upper.c: New file.
5498         * lib/unictype/ctype_xdigit.c: New file.
5499         * lib/unictype/decdigit.c: New file.
5500         * lib/unictype/digit.c: New file.
5501         * lib/unictype/identsyntaxmap.h: New file.
5502         * lib/unictype/mirror.c: New file.
5503         * lib/unictype/numeric.c: New file.
5504         * lib/unictype/pr_alphabetic.c: New file.
5505         * lib/unictype/pr_ascii_hex_digit.c: New file.
5506         * lib/unictype/pr_bidi_arabic_digit.c: New file.
5507         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
5508         * lib/unictype/pr_bidi_block_separator.c: New file.
5509         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
5510         * lib/unictype/pr_bidi_common_separator.c: New file.
5511         * lib/unictype/pr_bidi_control.c: New file.
5512         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
5513         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
5514         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
5515         * lib/unictype/pr_bidi_european_digit.c: New file.
5516         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
5517         * lib/unictype/pr_bidi_left_to_right.c: New file.
5518         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
5519         * lib/unictype/pr_bidi_other_neutral.c: New file.
5520         * lib/unictype/pr_bidi_pdf.c: New file.
5521         * lib/unictype/pr_bidi_segment_separator.c: New file.
5522         * lib/unictype/pr_bidi_whitespace.c: New file.
5523         * lib/unictype/pr_byname.c: New file.
5524         * lib/unictype/pr_byname.gperf: New file.
5525         * lib/unictype/pr_combining.c: New file.
5526         * lib/unictype/pr_composite.c: New file.
5527         * lib/unictype/pr_currency_symbol.c: New file.
5528         * lib/unictype/pr_dash.c: New file.
5529         * lib/unictype/pr_decimal_digit.c: New file.
5530         * lib/unictype/pr_default_ignorable_code_point.c: New file.
5531         * lib/unictype/pr_deprecated.c: New file.
5532         * lib/unictype/pr_diacritic.c: New file.
5533         * lib/unictype/pr_extender.c: New file.
5534         * lib/unictype/pr_format_control.c: New file.
5535         * lib/unictype/pr_grapheme_base.c: New file.
5536         * lib/unictype/pr_grapheme_extend.c: New file.
5537         * lib/unictype/pr_grapheme_link.c: New file.
5538         * lib/unictype/pr_hex_digit.c: New file.
5539         * lib/unictype/pr_hyphen.c: New file.
5540         * lib/unictype/pr_id_continue.c: New file.
5541         * lib/unictype/pr_id_start.c: New file.
5542         * lib/unictype/pr_ideographic.c: New file.
5543         * lib/unictype/pr_ids_binary_operator.c: New file.
5544         * lib/unictype/pr_ids_trinary_operator.c: New file.
5545         * lib/unictype/pr_ignorable_control.c: New file.
5546         * lib/unictype/pr_iso_control.c: New file.
5547         * lib/unictype/pr_join_control.c: New file.
5548         * lib/unictype/pr_left_of_pair.c: New file.
5549         * lib/unictype/pr_line_separator.c: New file.
5550         * lib/unictype/pr_logical_order_exception.c: New file.
5551         * lib/unictype/pr_lowercase.c: New file.
5552         * lib/unictype/pr_math.c: New file.
5553         * lib/unictype/pr_non_break.c: New file.
5554         * lib/unictype/pr_not_a_character.c: New file.
5555         * lib/unictype/pr_numeric.c: New file.
5556         * lib/unictype/pr_other_alphabetic.c: New file.
5557         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
5558         * lib/unictype/pr_other_grapheme_extend.c: New file.
5559         * lib/unictype/pr_other_id_continue.c: New file.
5560         * lib/unictype/pr_other_id_start.c: New file.
5561         * lib/unictype/pr_other_lowercase.c: New file.
5562         * lib/unictype/pr_other_math.c: New file.
5563         * lib/unictype/pr_other_uppercase.c: New file.
5564         * lib/unictype/pr_paired_punctuation.c: New file.
5565         * lib/unictype/pr_paragraph_separator.c: New file.
5566         * lib/unictype/pr_pattern_syntax.c: New file.
5567         * lib/unictype/pr_pattern_white_space.c: New file.
5568         * lib/unictype/pr_private_use.c: New file.
5569         * lib/unictype/pr_punctuation.c: New file.
5570         * lib/unictype/pr_quotation_mark.c: New file.
5571         * lib/unictype/pr_radical.c: New file.
5572         * lib/unictype/pr_sentence_terminal.c: New file.
5573         * lib/unictype/pr_soft_dotted.c: New file.
5574         * lib/unictype/pr_space.c: New file.
5575         * lib/unictype/pr_terminal_punctuation.c: New file.
5576         * lib/unictype/pr_test.c: New file.
5577         * lib/unictype/pr_titlecase.c: New file.
5578         * lib/unictype/pr_unassigned_code_value.c: New file.
5579         * lib/unictype/pr_unified_ideograph.c: New file.
5580         * lib/unictype/pr_uppercase.c: New file.
5581         * lib/unictype/pr_variation_selector.c: New file.
5582         * lib/unictype/pr_white_space.c: New file.
5583         * lib/unictype/pr_xid_continue.c: New file.
5584         * lib/unictype/pr_xid_start.c: New file.
5585         * lib/unictype/pr_zero_width.c: New file.
5586         * lib/unictype/scripts.c: New file.
5587         * lib/unictype/sy_c_ident.c: New file.
5588         * lib/unictype/sy_c_whitespace.c: New file.
5589         * lib/unictype/sy_java_ident.c: New file.
5590         * lib/unictype/sy_java_whitespace.c: New file.
5591
5592         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
5593         Unicode 5.0.0.
5594         * lib/unictype/blocks.h: Likewise.
5595         * lib/unictype/categ_C.h: Likewise.
5596         * lib/unictype/categ_Cc.h: Likewise.
5597         * lib/unictype/categ_Cf.h: Likewise.
5598         * lib/unictype/categ_Cn.h: Likewise.
5599         * lib/unictype/categ_Co.h: Likewise.
5600         * lib/unictype/categ_Cs.h: Likewise.
5601         * lib/unictype/categ_L.h: Likewise.
5602         * lib/unictype/categ_Ll.h: Likewise.
5603         * lib/unictype/categ_Lm.h: Likewise.
5604         * lib/unictype/categ_Lo.h: Likewise.
5605         * lib/unictype/categ_Lt.h: Likewise.
5606         * lib/unictype/categ_Lu.h: Likewise.
5607         * lib/unictype/categ_M.h: Likewise.
5608         * lib/unictype/categ_Mc.h: Likewise.
5609         * lib/unictype/categ_Me.h: Likewise.
5610         * lib/unictype/categ_Mn.h: Likewise.
5611         * lib/unictype/categ_N.h: Likewise.
5612         * lib/unictype/categ_Nd.h: Likewise.
5613         * lib/unictype/categ_Nl.h: Likewise.
5614         * lib/unictype/categ_No.h: Likewise.
5615         * lib/unictype/categ_P.h: Likewise.
5616         * lib/unictype/categ_Pc.h: Likewise.
5617         * lib/unictype/categ_Pd.h: Likewise.
5618         * lib/unictype/categ_Pe.h: Likewise.
5619         * lib/unictype/categ_Pf.h: Likewise.
5620         * lib/unictype/categ_Pi.h: Likewise.
5621         * lib/unictype/categ_Po.h: Likewise.
5622         * lib/unictype/categ_Ps.h: Likewise.
5623         * lib/unictype/categ_S.h: Likewise.
5624         * lib/unictype/categ_Sc.h: Likewise.
5625         * lib/unictype/categ_Sk.h: Likewise.
5626         * lib/unictype/categ_Sm.h: Likewise.
5627         * lib/unictype/categ_So.h: Likewise.
5628         * lib/unictype/categ_Z.h: Likewise.
5629         * lib/unictype/categ_Zl.h: Likewise.
5630         * lib/unictype/categ_Zp.h: Likewise.
5631         * lib/unictype/categ_Zs.h: Likewise.
5632         * lib/unictype/categ_of.h: Likewise.
5633         * lib/unictype/combining.h: Likewise.
5634         * lib/unictype/ctype_alnum.h: Likewise.
5635         * lib/unictype/ctype_alpha.h: Likewise.
5636         * lib/unictype/ctype_blank.h: Likewise.
5637         * lib/unictype/ctype_cntrl.h: Likewise.
5638         * lib/unictype/ctype_digit.h: Likewise.
5639         * lib/unictype/ctype_graph.h: Likewise.
5640         * lib/unictype/ctype_lower.h: Likewise.
5641         * lib/unictype/ctype_print.h: Likewise.
5642         * lib/unictype/ctype_punct.h: Likewise.
5643         * lib/unictype/ctype_space.h: Likewise.
5644         * lib/unictype/ctype_upper.h: Likewise.
5645         * lib/unictype/ctype_xdigit.h: Likewise.
5646         * lib/unictype/decdigit.h: Likewise.
5647         * lib/unictype/digit.h: Likewise.
5648         * lib/unictype/mirror.h: Likewise.
5649         * lib/unictype/numeric.h: Likewise.
5650         * lib/unictype/pr_alphabetic.h: Likewise.
5651         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
5652         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
5653         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
5654         * lib/unictype/pr_bidi_block_separator.h: Likewise.
5655         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
5656         * lib/unictype/pr_bidi_common_separator.h: Likewise.
5657         * lib/unictype/pr_bidi_control.h: Likewise.
5658         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
5659         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
5660         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
5661         * lib/unictype/pr_bidi_european_digit.h: Likewise.
5662         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
5663         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
5664         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
5665         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
5666         * lib/unictype/pr_bidi_pdf.h: Likewise.
5667         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
5668         * lib/unictype/pr_bidi_whitespace.h: Likewise.
5669         * lib/unictype/pr_combining.h: Likewise.
5670         * lib/unictype/pr_composite.h: Likewise.
5671         * lib/unictype/pr_currency_symbol.h: Likewise.
5672         * lib/unictype/pr_dash.h: Likewise.
5673         * lib/unictype/pr_decimal_digit.h: Likewise.
5674         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
5675         * lib/unictype/pr_deprecated.h: Likewise.
5676         * lib/unictype/pr_diacritic.h: Likewise.
5677         * lib/unictype/pr_extender.h: Likewise.
5678         * lib/unictype/pr_format_control.h: Likewise.
5679         * lib/unictype/pr_grapheme_base.h: Likewise.
5680         * lib/unictype/pr_grapheme_extend.h: Likewise.
5681         * lib/unictype/pr_grapheme_link.h: Likewise.
5682         * lib/unictype/pr_hex_digit.h: Likewise.
5683         * lib/unictype/pr_hyphen.h: Likewise.
5684         * lib/unictype/pr_id_continue.h: Likewise.
5685         * lib/unictype/pr_id_start.h: Likewise.
5686         * lib/unictype/pr_ideographic.h: Likewise.
5687         * lib/unictype/pr_ids_binary_operator.h: Likewise.
5688         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
5689         * lib/unictype/pr_ignorable_control.h: Likewise.
5690         * lib/unictype/pr_iso_control.h: Likewise.
5691         * lib/unictype/pr_join_control.h: Likewise.
5692         * lib/unictype/pr_left_of_pair.h: Likewise.
5693         * lib/unictype/pr_line_separator.h: Likewise.
5694         * lib/unictype/pr_logical_order_exception.h: Likewise.
5695         * lib/unictype/pr_lowercase.h: Likewise.
5696         * lib/unictype/pr_math.h: Likewise.
5697         * lib/unictype/pr_non_break.h: Likewise.
5698         * lib/unictype/pr_not_a_character.h: Likewise.
5699         * lib/unictype/pr_numeric.h: Likewise.
5700         * lib/unictype/pr_other_alphabetic.h: Likewise.
5701         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
5702         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
5703         * lib/unictype/pr_other_id_continue.h: Likewise.
5704         * lib/unictype/pr_other_id_start.h: Likewise.
5705         * lib/unictype/pr_other_lowercase.h: Likewise.
5706         * lib/unictype/pr_other_math.h: Likewise.
5707         * lib/unictype/pr_other_uppercase.h: Likewise.
5708         * lib/unictype/pr_paired_punctuation.h: Likewise.
5709         * lib/unictype/pr_paragraph_separator.h: Likewise.
5710         * lib/unictype/pr_pattern_syntax.h: Likewise.
5711         * lib/unictype/pr_pattern_white_space.h: Likewise.
5712         * lib/unictype/pr_private_use.h: Likewise.
5713         * lib/unictype/pr_punctuation.h: Likewise.
5714         * lib/unictype/pr_quotation_mark.h: Likewise.
5715         * lib/unictype/pr_radical.h: Likewise.
5716         * lib/unictype/pr_sentence_terminal.h: Likewise.
5717         * lib/unictype/pr_soft_dotted.h: Likewise.
5718         * lib/unictype/pr_space.h: Likewise.
5719         * lib/unictype/pr_terminal_punctuation.h: Likewise.
5720         * lib/unictype/pr_titlecase.h: Likewise.
5721         * lib/unictype/pr_unassigned_code_value.h: Likewise.
5722         * lib/unictype/pr_unified_ideograph.h: Likewise.
5723         * lib/unictype/pr_uppercase.h: Likewise.
5724         * lib/unictype/pr_variation_selector.h: Likewise.
5725         * lib/unictype/pr_white_space.h: Likewise.
5726         * lib/unictype/pr_xid_continue.h: Likewise.
5727         * lib/unictype/pr_xid_start.h: Likewise.
5728         * lib/unictype/pr_zero_width.h: Likewise.
5729         * lib/unictype/scripts.h: Likewise.
5730         * lib/unictype/scripts_byname.gperf: Likewise.
5731         * lib/unictype/sy_c_ident.h: Likewise.
5732         * lib/unictype/sy_c_whitespace.h: Likewise.
5733         * lib/unictype/sy_java_ident.h: Likewise.
5734         * lib/unictype/sy_java_whitespace.h: Likewise.
5735
5736         * lib/unictype/Makefile: New file.
5737         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
5738         glibc.
5739         * lib/unictype/3level.h: New file, copied from glibc.
5740         * lib/unictype/3levelbit.h: New file.
5741
5742 2007-11-11  Bruno Haible  <bruno@clisp.org>
5743
5744         * modules/gperf: New file.
5745         * modules/iconv_open (Depends-on): Add it.
5746         (Makefile.am): Remove the GPERF definition.
5747
5748 2007-11-11  Bruno Haible  <bruno@clisp.org>
5749
5750         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
5751         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
5752
5753 2007-11-11  Bruno Haible  <bruno@clisp.org>
5754
5755         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
5756         (usage): Remove function.
5757
5758 2007-11-11  Bruno Haible  <bruno@clisp.org>
5759
5760         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
5761         gl_FUNC_CEILF_LIBS.
5762         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
5763         gl_FUNC_CEIL_LIBS.
5764         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
5765         gl_FUNC_CEILL_LIBS.
5766         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
5767         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
5768         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
5769
5770 2007-11-11  Bruno Haible  <bruno@clisp.org>
5771
5772         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
5773         roundf were declared but do not exist on functions.
5774         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
5775         roundl were declared but do not exist on functions.
5776         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
5777         HAVE_FLOORL_AND_CEILL, respectively.
5778         Needed for Sun C on Solaris 10.
5779
5780 2007-11-11  Bruno Haible  <bruno@clisp.org>
5781
5782         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
5783         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
5784         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
5785         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
5786         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
5787         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
5788         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
5789         HAVE_DECL_ROUNDF.
5790         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
5791         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
5792         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
5793         of HAVE_DECL_ROUND*.
5794         * modules/math (Makefile.am): Update.
5795
5796 2007-11-10  Bruno Haible  <bruno@clisp.org>
5797
5798         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
5799         ptrdiff_t as m4/intl.m4.
5800
5801 2007-11-10  Jim Meyering  <meyering@redhat.com>
5802
5803         Avoid link failure for the argmatch test.
5804         * tests/test-argmatch.c (usage): Define function to avoid a link
5805         failure: argmatch_die requires a usage function.
5806
5807 2007-11-09  Bruno Haible  <bruno@clisp.org>
5808
5809         * doc/functions/snprintf.texi: Mention BeOS deficiency.
5810         * doc/functions/vsnprintf.texi: Likewise.
5811         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
5812         with a size argument < 2.
5813
5814 2007-11-09  Bruno Haible  <bruno@clisp.org>
5815
5816         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
5817         buffer. Fixes an inefficiency introduced on 2007-11-03.
5818
5819 2007-11-09  Bruno Haible  <bruno@clisp.org>
5820
5821         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
5822         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
5823
5824 2007-11-08  Jim Meyering  <meyering@redhat.com>
5825
5826         Change cache variable name prefix "jm_" to "gl_" everywhere.
5827         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
5828         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
5829         * m4/uptime.m4: s/gl_/jm_/
5830
5831 2007-11-07  Bruno Haible  <bruno@clisp.org>
5832
5833         Update to GNU gettext 0.17.
5834         * m4/intl.m4: Update to GNU gettext 0.17.
5835         * m4/po.m4: Likewise.
5836         * modules/gettext (Files): Remove m4/ulonglong.m4.
5837         (configure.ac): Require gettext infrastructure from version 0.17.
5838
5839 2007-11-06  Bruno Haible  <bruno@clisp.org>
5840
5841         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
5842         symbolic values are not defined in a public header.
5843         * lib/freadable.c (freadable) [QNX]: Likewise.
5844         * lib/freadahead.c (freadahead) [QNX]: Likewise.
5845         * lib/freading.c (freading) [QNX]: Likewise.
5846         * lib/fseterr.c (fseterr) [QNX]: Likewise.
5847         * lib/fwritable.c (fwritable) [QNX]: Likewise.
5848         * lib/fwriting.c (fwriting) [QNX]: Likewise.
5849         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
5850         Reported by Alain Magloire.
5851
5852         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
5853
5854 2007-11-05  Bruno Haible  <bruno@clisp.org>
5855
5856         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
5857         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
5858         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
5859         Reported by Eric Blake.
5860
5861 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5862             Bruno Haible  <bruno@clisp.org>
5863
5864         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
5865         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
5866         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
5867         (malloc): Undefine also before including <stdlib.h>.
5868         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
5869         Needed on OSF/1 4.0.
5870
5871 2007-11-05  Jim Meyering  <meyering@redhat.com>
5872
5873         git-version-gen: sync from coreutils.
5874         * build-aux/git-version-gen: Add comments.
5875         Change the first '-' to '.' in the snapshot version string,
5876         e.g., 6.9-377-08144 -> 6.9.377-08144
5877         Remove first parameter.
5878         Don't declare a version "-dirty" merely because a time
5879         stamp has changed.
5880
5881 2007-11-04  Bruno Haible  <bruno@clisp.org>
5882
5883         * lib/lock.h: Protect all macro definitions containing an 'if'
5884         statement through a "do { ... } while (0)".
5885         * lib/tls.h: Likewise.
5886
5887 2007-11-04  Bruno Haible  <bruno@clisp.org>
5888
5889         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
5890
5891 2007-11-04  Bruno Haible  <bruno@clisp.org>
5892
5893         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
5894         * modules/fprintf-posix (Depends-on): Add nocrash.
5895         * modules/snprintf-posix (Depends-on): Likewise.
5896         * modules/sprintf-posix (Depends-on): Likewise.
5897         * modules/vasnprintf-posix (Depends-on): Likewise.
5898         * modules/vasprintf-posix (Depends-on): Likewise.
5899         * modules/vfprintf-posix (Depends-on): Likewise.
5900         * modules/vsnprintf-posix (Depends-on): Likewise.
5901         * modules/vsprintf-posix (Depends-on): Likewise.
5902         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
5903         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
5904         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
5905         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
5906         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
5907         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
5908         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
5909
5910 2007-11-04  Bruno Haible  <bruno@clisp.org>
5911
5912         * modules/nocrash: New file.
5913         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
5914         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
5915
5916 2007-11-04  Bruno Haible  <bruno@clisp.org>
5917
5918         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
5919         precision handling.
5920         * tests/test-vasprintf-posix.c (test_function): Likewise.
5921         * tests/test-snprintf-posix.h (test_function): Likewise.
5922         * tests/test-sprintf-posix.h (test_function): Likewise.
5923
5924         Fix *printf behaviour for large precisions on mingw and BeOS.
5925         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
5926         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
5927         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
5928         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5929         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5930         gl_PRINTF_PRECISION and test its result. Invoke
5931         gl_PREREQ_VASNPRINTF_PRECISION.
5932         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5933         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5934         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5935         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5936         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5937         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5938         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5939         * doc/functions/fprintf.texi: Update.
5940         * doc/functions/printf.texi: Update.
5941         * doc/functions/snprintf.texi: Update.
5942         * doc/functions/sprintf.texi: Update.
5943         * doc/functions/vfprintf.texi: Update.
5944         * doc/functions/vprintf.texi: Update.
5945         * doc/functions/vsnprintf.texi: Update.
5946         * doc/functions/vsprintf.texi: Update.
5947
5948 2007-11-04  Bruno Haible  <bruno@clisp.org>
5949
5950         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
5951
5952 2007-11-04  Bruno Haible  <bruno@clisp.org>
5953
5954         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
5955         Reported by Sylvain Beucler <beuc@gnu.org>.
5956
5957 2007-11-03  Bruno Haible  <bruno@clisp.org>
5958
5959         * tests/test-fprintf-posix2.sh: New file.
5960         * tests/test-fprintf-posix2.c: New file.
5961         * modules/fprintf-posix-tests (Files): Add them.
5962         (TESTS): Add test-fprintf-posix2.sh.
5963         (configure.ac): Check for getrlimit and setrlimit.
5964         (check_PROGRAMS): Add test-fprintf-posix2.
5965
5966         * tests/test-printf-posix2.sh: New file.
5967         * tests/test-printf-posix2.c: New file.
5968         * modules/printf-posix-tests (Files): Add them.
5969         (TESTS): Add test-printf-posix2.sh.
5970         (configure.ac): Check for getrlimit and setrlimit.
5971         (check_PROGRAMS): Add test-printf-posix2.
5972
5973         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
5974         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
5975         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
5976         (decode_double): New function, copied from decode_long_double.
5977         (scale10_round_decimal_decoded): New function, extracted from
5978         scale10_round_decimal_long_double.
5979         (scale10_round_decimal_long_double): Use it.
5980         (scale10_round_decimal_double): New function.
5981         (floorlog10): New function.
5982         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
5983         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
5984         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5985         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5986         gl_PRINTF_ENOMEM and test its result. Invoke
5987         gl_PREREQ_VASNPRINTF_ENOMEM.
5988         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5989         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5990         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5991         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5992         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5993         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5994         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5995         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
5996         * modules/snprintf-posix (Depends-on): Likewise.
5997         * modules/sprintf-posix (Depends-on): Likewise.
5998         * modules/vasnprintf-posix (Depends-on): Likewise.
5999         * modules/vasprintf-posix (Depends-on): Likewise.
6000         * modules/vfprintf-posix (Depends-on): Likewise.
6001         * modules/vsnprintf-posix (Depends-on): Likewise.
6002         * modules/vsprintf-posix (Depends-on): Likewise.
6003         * doc/functions/fprintf.texi: Update.
6004         * doc/functions/printf.texi: Update.
6005         * doc/functions/snprintf.texi: Update.
6006         * doc/functions/sprintf.texi: Update.
6007         * doc/functions/vfprintf.texi: Update.
6008         * doc/functions/vprintf.texi: Update.
6009         * doc/functions/vsnprintf.texi: Update.
6010         * doc/functions/vsprintf.texi: Update.
6011
6012 2007-11-03  Bruno Haible  <bruno@clisp.org>
6013
6014         * modules/frexp-nolibm-tests: New file.
6015
6016         * modules/frexp-nolibm: New file.
6017         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
6018
6019 2007-11-03  Bruno Haible  <bruno@clisp.org>
6020
6021         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
6022         value is C99 compliant.
6023         Needed for OSF/1 5.1.
6024
6025 2007-11-03  Bruno Haible  <bruno@clisp.org>
6026
6027         Fix out-of-memory handling of vasnprintf.
6028         * lib/printf-parse.c: Include <errno.h>.
6029         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
6030         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
6031         is already set.
6032
6033 2007-11-02  Eric Blake  <ebb9@byu.net>
6034
6035         Fix tests on cygwin.
6036         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
6037
6038 2007-11-01  Bruno Haible  <bruno@clisp.org>
6039
6040         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
6041         warning.
6042         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
6043         needed for POSIX compatibility.
6044
6045 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
6046
6047         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
6048         for compatibility with GNU.
6049
6050 2007-11-01  Bruno Haible  <bruno@clisp.org>
6051
6052         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
6053         (putenv): Renamed from rpl_putenv. Change argument type from
6054         'const char *' to 'char *'.
6055         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
6056         of defining putenv in config.h, just set REPLACE_PUTENV.
6057         * modules/putenv (Depends-on): Add stdlib.
6058         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
6059         (Include): Use <stdlib.h>.
6060         * lib/stdlib.in.h (putenv): New declaration.
6061         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
6062         REPLACE_PUTENV.
6063         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
6064         REPLACE_PUTENV.
6065         Needed for MacOS X 10.5.0.
6066         Reported by Peter O'Gorman <peter@pogma.com>.
6067
6068 2007-11-01  Jim Meyering  <meyering@redhat.com>
6069
6070         Treat an empty date string exactly like "0".
6071         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
6072         if the remaining date string (to be parsed) is empty, use "0".
6073         Reported by Mischa Molhoek and discussed in this thread:
6074         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
6075
6076 2007-10-31  Bruno Haible  <bruno@clisp.org>
6077
6078         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
6079         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
6080         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
6081         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
6082         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
6083         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
6084
6085 2007-10-31  Bruno Haible  <bruno@clisp.org>
6086
6087         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
6088         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
6089         (AC_TYPE_LONG_LONG_INT): Use it.
6090         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
6091         it as well.
6092         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
6093         to m4/longlong.m4.
6094         * modules/stdint (Files): Remove m4/ulonglong.m4.
6095         * modules/strtoull (Files): Use m4/longlong.m4 instead of
6096         m4/ulonglong.m4.
6097         * modules/strtoumax (Files): Likewise.
6098
6099 2007-10-30  Bruno Haible  <bruno@clisp.org>
6100
6101         * modules/xvasprintf-posix: New file.
6102         Suggested by Eric Blake.
6103
6104 2007-10-30  Bruno Haible  <bruno@clisp.org>
6105
6106         * modules/xprintf-posix-tests: New file.
6107         * tests/test-xprintf-posix.sh: New file.
6108         * tests/test-xprintf-posix.c: New file.
6109         * tests/test-xfprintf-posix.c: New file.
6110
6111         * modules/xprintf-posix: New file.
6112
6113 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6114
6115         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
6116         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
6117         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
6118
6119 2007-10-29  Bruno Haible  <bruno@clisp.org>
6120
6121         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
6122         contain the special marker '_cv_'.
6123         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
6124         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
6125         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
6126         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
6127         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
6128         Reported by Ralf Wildenhues.
6129
6130 2007-10-29  Bruno Haible  <bruno@clisp.org>
6131
6132         * gnulib-tool (func_import): When --lgpl is not specified, set
6133         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
6134         GPLv3.
6135         Reported by Simon Josefsson.
6136
6137 2007-10-28  Bruno Haible  <bruno@clisp.org>
6138
6139         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
6140         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
6141         HAVE_DECL_ISFINITE.
6142         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
6143         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
6144         HAVE_DECL_ISFINITE.
6145
6146 2007-10-28  Bruno Haible  <bruno@clisp.org>
6147
6148         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
6149         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
6150
6151 2007-10-28  Bruno Haible  <bruno@clisp.org>
6152
6153         Fix link errors with Sun C 5.0 on Solaris 10.
6154         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
6155         function is declared but not present in the compiler's libm.
6156         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
6157         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
6158         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
6159         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
6160         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
6161         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
6162         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
6163         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
6164         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
6165         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
6166         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
6167         HAVE_DECL_FLOORL.
6168
6169 2007-10-28  Bruno Haible  <bruno@clisp.org>
6170
6171         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
6172         gl_FUNC_FLOORL. Cache the result.
6173         (gl_FUNC_FLOORL): Use it.
6174         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
6175         gl_FUNC_CEILL. Cache the result.
6176         (gl_FUNC_CEILL): Use it.
6177
6178         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
6179         gl_FUNC_FLOOR. Cache the result.
6180         (gl_FUNC_FLOOR): Use it.
6181         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
6182         gl_FUNC_CEIL. Cache the result.
6183         (gl_FUNC_CEIL): Use it.
6184
6185         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
6186         gl_FUNC_FLOORF. Cache the result.
6187         (gl_FUNC_FLOORF): Use it.
6188         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
6189         gl_FUNC_CEILF. Cache the result.
6190         (gl_FUNC_CEILF): Use it.
6191
6192 2007-10-28  Bruno Haible  <bruno@clisp.org>
6193
6194         * gnulib-tool: Allow specifying the LGPL version number through
6195         --lgpl=2 or --lgpl=3.
6196         (func_usage): Document --lgpl with argument.
6197         Handle --lgpl=... arguments.
6198         (func_import): Recognize also gl_LGPL calls with an argument. When
6199         --lgpl=2 is used and the module's license is just LGPL, report an
6200         error. Set sed_transform_lib_file according to the lgpl variable. In
6201         the generated files, use --lgpl or gl_LGPL invocations with argument,
6202         if necessary.
6203         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
6204         an LGPv2+ license.
6205         * doc/gnulib-tool.texi (Modified imports): Update explanation of
6206         gl_LGPL macro.
6207
6208 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6209             Bruno Haible  <bruno@clisp.org>
6210
6211         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
6212         (u16_uctomb_aux): Likewise.
6213         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
6214         !HAVE_INLINE.
6215         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
6216
6217 2007-10-28  Bruno Haible  <bruno@clisp.org>
6218
6219         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
6220         Invoke AM_GETTEXT_OPTION if it exists.
6221         * modules/vasprintf: Likewise.
6222         * modules/verror: Likewise.
6223         * modules/xprintf: Likewise.
6224         * modules/xvasprintf: Likewise.
6225
6226 2007-10-27  Ben Pfaff  <blp@gnu.org>
6227
6228         * lib/math.in.h: Define isfinite macro and prototypes for
6229         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
6230         implementations.
6231         * m4/math_h.m4: New substitutions for isfinite module.
6232         * lib/isfinite.c: New file.
6233         * m4/isfinite.m4: New file.
6234         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
6235         * modules/isfinite: New file.
6236         * modules/isfinite-tests: New file.
6237         * tests/tests-isfinite.c: New file.
6238         * doc/functions/isfinite.texi: Mention isfinite module.
6239         * MODULES.html.sh: Mention new module.
6240
6241 2007-10-27  Ben Pfaff  <blp@gnu.org>
6242
6243         Ralf Wildenhues reported that Tru64 4.0D declares the round
6244         functions but does not have definitions.
6245         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
6246         cannot be found in any library, set the output variable to
6247         "missing" instead of "".
6248         * m4/round.m4: Also use our substitute if we cannot find round in
6249         any library, even if it is declared.
6250         * m4/roundf.m4: Likewise for roundf.
6251         * m4/roundl.m4: Likewise for roundl.
6252         * lib/math.in.h: Undefine roundf, round, roundl before defining
6253         their replacements, to allow for hypothetical systems where these
6254         may be defined as macros but not available in libraries.
6255
6256 2007-10-27  Bruno Haible  <bruno@clisp.org>
6257
6258         * doc/gnulib.texi: Invoke @firstparagraphindent.
6259         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
6260         changes in gnulib.
6261         (Source changes): New section.
6262
6263 2007-10-26  Bruno Haible  <bruno@clisp.org>
6264
6265         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
6266         borrowed from autoconf.
6267
6268 2007-10-26  Bruno Haible  <bruno@clisp.org>
6269
6270         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
6271         strerror returned the empty string. Needed on HP-UX 11.00.
6272
6273 2007-10-24  Micah Cowan  <micah@cowan.name>
6274
6275         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
6276         * build-aux/bootstrap: Remove support for now-unnecessary option,
6277         --cvs-user, and envvars CVS_USER, CVS_RSH.
6278
6279 2007-10-24  Jim Meyering  <meyering@redhat.com>
6280
6281         Avoid diagnostics from sha1sum when there is no cached checksum.
6282         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
6283         if the po.s1 file hasn't been created yet.
6284
6285         * build-aux/bootstrap: Sync from coreutils:
6286         2007-10-24  Jim Meyering  <meyering@redhat.com>
6287         Get gnulib from the git repository, not from an obsolete cvs one.
6288         * build-aux/bootstrap: Suggestion from Micah Cowan.
6289         2007-10-04  Jim Meyering  <jim@meyering.net>
6290         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
6291         (update_po_files): Work also when there are no .po files in po/.
6292
6293 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
6294
6295         * README: Append ".git" to git and cg examples.
6296         Problem reported by Benoit Sigoure.
6297
6298 2007-10-23  Micah Cowan  <micah@cowan.name>
6299
6300         * users.txt: Add wget.
6301
6302 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6303
6304         Fix linking of some unistdio tests on FreeBSD.
6305         * modules/unistdio/u16-vsnprintf-tests
6306         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
6307         * modules/unistdio/u16-vsprintf-tests
6308         (test_u16_vsnprintf1_LDADD): Likewise.
6309         * modules/unistdio/u32-vsnprintf-tests
6310         (test_u32_vsnprintf1_LDADD): Likewise.
6311         * modules/unistdio/u32-vsprintf-tests
6312         (test_u32_vsprintf1_LDADD): Likewise.
6313         * modules/unistdio/u8-vsnprintf-tests
6314         (test_u8_vsnprintf1_LDADD): Likewise.
6315         * modules/unistdio/u8-vsprintf-tests
6316         (test_u8_vsprintf1_LDADD): Likewise.
6317         * modules/unistdio/ulc-vsnprintf-tests
6318         (test_ulc_vsnprintf1_LDADD): Likewise.
6319         * modules/unistdio/ulc-vsprintf-tests
6320         (test_ulc_vsprintf1_LDADD): Likewise.
6321
6322         Fix linking of some uniconv tests on FreeBSD.
6323         * modules/uniconv/u16-conv-from-enc-tests
6324         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
6325         * modules/uniconv/u16-conv-to-enc-tests
6326         (test_u16_conv_to_enc_LDADD): Likewise.
6327         * modules/uniconv/u16-strconv-from-enc-tests
6328         (test_u16_strconv_from_enc_LDADD): Likewise.
6329         * modules/uniconv/u16-strconv-to-enc-tests
6330         (test_u16_strconv_to_enc_LDADD): Likewise.
6331         * modules/uniconv/u32-conv-from-enc-tests
6332         (test_u32_conv_from_enc_LDADD): Likewise.
6333         * modules/uniconv/u32-conv-to-enc-tests
6334         (test_u32_conv_to_enc_LDADD): Likewise.
6335         * modules/uniconv/u32-strconv-from-enc-tests
6336         (test_u32_strconv_from_enc_LDADD): Likewise.
6337         * modules/uniconv/u32-strconv-to-enc-tests
6338         (test_u32_strconv_to_enc_LDADD): Likewise.
6339         * modules/uniconv/u8-conv-from-enc-tests
6340         (test_u8_conv_from_enc_LDADD): Likewise.
6341         * modules/uniconv/u8-conv-to-enc-tests
6342         (test_u8_conv_to_enc_LDADD): Likewise.
6343         * modules/uniconv/u8-strconv-from-enc-tests
6344         (test_u8_strconv_from_enc_LDADD): Likewise.
6345         * modules/uniconv/u8-strconv-to-enc-tests
6346         (test_u8_strconv_to_enc_LDADD): Likewise.
6347
6348 2007-10-22  Bruno Haible  <bruno@clisp.org>
6349
6350         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
6351         size.
6352
6353 2007-10-22  Eric Blake  <ebb9@byu.net>
6354
6355         Tweak x*printf documentation.
6356         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
6357         variable name and comments.
6358         Suggested by Bruno Haible.
6359
6360 2007-10-22  Bruno Haible  <bruno@clisp.org>
6361
6362         * lib/acl.c (copy_acl): Fix file name in comment.
6363
6364 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
6365
6366         Fix Tru64 problem with stdbool.h.
6367         * lib/stdbool.in.h (false, true):
6368         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
6369         Don't declare as an enum in this situation; it runs afoul of Tru64.
6370         Problem reported by Steven M. Schweda in
6371         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
6372
6373 2007-10-22  Eric Blake  <ebb9@byu.net>
6374
6375         Also wrap vf?printf.
6376         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
6377         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
6378         (xvprintf, xvfprintf): New functions.
6379
6380 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6381
6382         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
6383         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
6384
6385         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
6386         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
6387
6388 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
6389
6390         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
6391         by Bruno Haible.
6392
6393 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6394
6395         * lib/getloadavg.c
6396         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
6397         Undef `sys' after including sys/table.h, for Tru64 4.0D.
6398
6399         * tests/test-i-ring.c: Work for C89.
6400
6401 2007-10-22  Bruno Haible  <bruno@clisp.org>
6402
6403         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
6404         -1u, in preprocessor expression, so that we don't test for the bug
6405         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
6406         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
6407
6408 2007-10-22  Eric Blake  <ebb9@byu.net>
6409
6410         * tests/test-yesno.sh: Silence stderr during test.
6411
6412 2007-10-22  Simon Josefsson  <simon@josefsson.org>
6413
6414         * modules/crypto/gc-camellia: New file.
6415
6416         * m4/gc-camellia.m4: New file.
6417
6418         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
6419
6420         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
6421
6422 2007-10-22  Simon Josefsson  <simon@josefsson.org>
6423
6424         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
6425         --help to stdout.  Reported by sms@antinode.org (Steven
6426         M. Schweda).
6427
6428 2007-10-22  Simon Josefsson  <simon@josefsson.org>
6429
6430         * users.txt: Fix link to libksba.
6431
6432 2007-10-21  Ben Pfaff  <blp@gnu.org>
6433
6434         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
6435         round.c roundf implementation that depends on floorf and ceilf to
6436         be tested unconditionally.
6437
6438 2007-10-21  Ben Pfaff  <blp@gnu.org>
6439
6440         * m4/check-libm-func.m4: Removed.
6441         * m4/check-math-lib.m4: New file.
6442         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
6443         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
6444         definition and lack of AC_LIBOBJ([roundf]).
6445         * m4/roundl.m4: Ditto, and similarly for roundl.
6446         * modules/round: Reference new m4 file.
6447         * modules/roundf: Ditto.
6448         * modules/roundl: Ditto.
6449         * tests/test-round2.c (main): Use ROUND instead of round.
6450         Bug report from Bruno Haible.
6451
6452 2007-10-21  Bruno Haible  <bruno@clisp.org>
6453
6454         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
6455         context.
6456
6457 2007-10-21  Bruno Haible  <bruno@clisp.org>
6458
6459         * tests/test-wcwidth.c (main): Allow negative result for some control
6460         characters.
6461
6462         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
6463         Needed on OSF/1 5.1.
6464
6465 2007-10-21  Bruno Haible  <bruno@clisp.org>
6466
6467         * tests/test-floorf1.c: Include isnanf.h.
6468         (main): Use isnanf() instead of isnan().
6469         * tests/test-ceilf1.c: Include isnanf.h.
6470         (main): Use isnanf() instead of isnan().
6471         * tests/test-truncf1.c: Include isnanf.h.
6472         (main): Use isnanf() instead of isnan().
6473         * tests/test-roundf1.c: Include isnanf.h.
6474         (main): Use isnanf() instead of isnan().
6475
6476 2007-10-21  Eric Blake  <ebb9@byu.net>
6477
6478         * users.txt: Update URL for m4.
6479
6480 2007-10-21  Bruno Haible  <bruno@clisp.org>
6481
6482         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
6483
6484 2007-10-21  Bruno Haible  <bruno@clisp.org>
6485
6486         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
6487         Git's management files if the CVS files are not present.
6488
6489 2007-10-20  Bruno Haible  <bruno@clisp.org>
6490
6491         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
6492         gcc-3.4.x.
6493
6494 2007-10-20  Ben Pfaff  <blp@gnu.org>
6495
6496         * lib/math.in.h: Declare round, roundf, roundl if we are providing
6497         implementations.
6498         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
6499         * lib/round.c: New file.
6500         * lib/roundf.c: New file.
6501         * lib/roundl.c: New file.
6502         * m4/round.m4: New file.
6503         * m4/roundf.m4: New file.
6504         * m4/roundl.m4: New file.
6505         * m4/check-libm-func-m4: New file.
6506         * modules/math: Replace round, roundf, roundl related @VARS@ in
6507         math.in.h.
6508         * modules/round: New file.
6509         * modules/round-tests: New file.
6510         * modules/roundf: New file.
6511         * modules/roundf-tests: New file.
6512         * modules/roundl: New file.
6513         * modules/roundl-tests: New file.
6514         * tests/test-round1.c: New file.
6515         * tests/test-round2.c: New file.
6516         * tests/test-roundf1.c: New file.
6517         * tests/test-roundf2.c: New file.
6518         * tests/test-roundl.c: New file.
6519         * doc/functions/round.texi: Mention round module.
6520         * doc/functions/roundf.texi: Mention roundf module.
6521         * doc/functions/roundl.texi: Mention roundl module.
6522         * MODULES.html.sh: Mention new modules.
6523         Thanks to Bruno Haible for suggestions.
6524
6525 2007-10-20  Jim Meyering  <meyering@redhat.com>
6526
6527         * lib/xprintf.c: Include <config.h> unconditionally.
6528
6529         Change xprintf's license to GPL.
6530         * modules/xprintf (License): s/LGPL/GPL/, since this module
6531         depends on modules (exit and exitfail) which are GPL.
6532         Suggestion from Bruno Haible.
6533
6534         xprintf fixes.
6535         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
6536         Use a clearer diagnostic.
6537         Patch from Bruno Haible.
6538
6539 2007-10-20  Bruno Haible  <bruno@clisp.org>
6540
6541         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
6542         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
6543         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6544
6545 2007-10-20  Bruno Haible  <bruno@clisp.org>
6546
6547         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
6548         precision in the comparison result > x - 1 or similar.
6549         * tests/test-ceilf2.c (correct_result_p): Likewise.
6550         * tests/test-truncf2.c (correct_result_p): Likewise.
6551         * tests/test-trunc2.c (correct_result_p): Likewise.
6552         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6553
6554 2007-10-20  Bruno Haible  <bruno@clisp.org>
6555
6556         * modules/ceil: New file.
6557         * m4/ceil.m4: New file.
6558         * doc/functions/ceil.texi: Mention the 'ceil' module.
6559
6560 2007-10-20  Bruno Haible  <bruno@clisp.org>
6561
6562         * modules/floor: New file.
6563         * m4/floor.m4: New file.
6564         * doc/functions/floor.texi: Mention the 'floor' module.
6565
6566 2007-10-20  Bruno Haible  <bruno@clisp.org>
6567
6568         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
6569         of %a.
6570         * modules/floorf-tests (Depends-on): Likewise.
6571         * modules/truncf-tests (Depends-on): Likewise.
6572         * modules/trunc-tests (Depends-on): Likewise.
6573         Reported by Ben Pfaff.
6574
6575 2007-10-19  Jim Meyering  <meyering@redhat.com>
6576
6577         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
6578         Don't bother testing specific errno values.  Just test ferror.
6579
6580         New module: xprintf
6581         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
6582
6583 2007-10-19  Bruno Haible  <bruno@clisp.org>
6584
6585         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
6586         syntax.
6587         * modules/javaexec (Makefile.am): Likewise.
6588         * modules/relocatable-prog (Makefile.am): Likewise.
6589         Suggested by Jim Meyering.
6590
6591 2007-10-18  Bruno Haible  <bruno@clisp.org>
6592
6593         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
6594         Reported by Jim Meyering.
6595
6596 2007-10-18  Eric Blake  <ebb9@byu.net>
6597
6598         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
6599
6600 2007-10-18  Bruno Haible  <bruno@clisp.org>
6601
6602         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
6603         the format string into writable memory. Needed in Fortify conditions.
6604
6605 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
6606             Bruno Haible  <bruno@clisp.org>
6607
6608         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
6609         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
6610         * modules/trim (Depends-on): Add mbchar.
6611         (configure.ac): Add gl_FUNC_MBRTOWC.
6612         (Makefile.am): Augment lib_SOURCES.
6613
6614 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
6615
6616         Modify glob.c to use fstatat and dirfd, to simplify it.
6617         Suggested by Eric Blake.
6618         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
6619         Don't include <stdbool.h>; not used.
6620         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
6621         (link_exists_p): Simplify implementation, since we can now assume
6622         dirfd and fstatat.
6623         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
6624
6625 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6626
6627         * gnulib-tool (func_get_dependencies): Fix sed script to
6628         match only tests.
6629
6630 2007-10-17  Bruno Haible  <bruno@clisp.org>
6631
6632         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
6633         allow locale names without encoding suffix.
6634         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
6635         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
6636
6637 2007-10-16  Bruno Haible  <bruno@clisp.org>
6638
6639         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
6640         * lib/getgroups.c (getgroups): Likewise.
6641         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
6642
6643 2007-10-16  Bruno Haible  <bruno@clisp.org>
6644
6645         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
6646         * modules/malloc-posix (License): Likewise.
6647         * modules/realloc-posix (License): Likewise.
6648         * modules/calloc-posix (License): Likewise.
6649         * modules/intprops (License): Change from GPL to LGPL, with
6650         Paul Eggert's approval.
6651
6652 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
6653
6654         Merge glibc changes into lib/glob.c.
6655
6656         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
6657         2007-10-15 04:59:03 UTC.  Here are the changes:
6658
6659         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
6660
6661         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
6662
6663         * lib/glob.c: Add some branch prediction throughout.
6664
6665         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
6666
6667         [BZ #5103]
6668         * lib/glob.c (glob): Recognize patterns starting \/.
6669
6670         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
6671
6672         [BZ #3996]
6673         * lib/glob.c (attribute_hidden): Define if not defined.
6674         (glob): Unescape dirname, filename or username when needed and not
6675         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
6676         is NULL.  Handle unescaped [ in pattern without closing ].
6677         Don't pass GLOB_CHECK down to recursive glob for directories.
6678         (__glob_pattern_type): New function.
6679         (__glob_pattern_p): Implement using __glob_pattern_type.
6680         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
6681         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
6682         Remove unreachable code.
6683
6684         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
6685
6686         * lib/glob.c (glob_in_dir): Add some comments and asserts to
6687         explain why there are no leaks.
6688
6689         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
6690
6691         [BZ #3253]
6692         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
6693         time, rather allocate increasingly bigger arrays of pointers, if
6694         possible with alloca, if too large with malloc.
6695
6696 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
6697
6698         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
6699         Problem reported by H.Merijn Brand in
6700         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
6701         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
6702         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
6703
6704 2007-10-15  Bruno Haible  <bruno@clisp.org>
6705
6706         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
6707         with explicit rpl_ prefix.
6708         * lib/fopen.c (fopen): Likewise.
6709         * lib/freopen.c (freopen): Likewise.
6710         * lib/iconv.c (iconv): Likewise.
6711         * lib/iconv_close.c (iconv_close): Likewise.
6712
6713 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6714
6715         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
6716
6717 2007-10-15  Bruno Haible  <bruno@clisp.org>
6718
6719         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
6720         <stddef.h> instead of <stdlib.h> since we only need NULL.
6721         Reported by Ben Pfaff <blp@cs.stanford.edu>.
6722
6723 2007-10-15  Bruno Haible  <bruno@clisp.org>
6724
6725         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
6726         Replace paragraph talking about LIBOBJS.
6727         Reported by Colin Watson <cjwatson@debian.org>.
6728
6729 2007-10-15  Bruno Haible  <bruno@clisp.org>
6730
6731         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
6732         <stdlib.h> before using NULL.
6733
6734 2007-10-15  Simon Josefsson  <simon@josefsson.org>
6735
6736         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
6737         Reported by Albert Chin <china@thewrittenword.com>.
6738
6739 2007-10-14  Bruno Haible  <bruno@clisp.org>
6740
6741         * modules/iconv_open-utf-tests: New file.
6742         * tests/test-iconv-utf.c: New file.
6743
6744         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
6745         * modules/iconv_open-utf: New file.
6746         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
6747         (iconv, iconv_close): New declarations.
6748         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
6749         be defined.
6750         (iconv_open): Add special handling of conversion between UTF-8 and
6751         UTF-{16,32}{BE,LE}.
6752         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
6753         * lib/iconv_close.c: New file.
6754         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
6755         gl_FUNC_ICONV_OPEN.
6756         (gl_FUNC_ICONV_OPEN): Use it.
6757         (gl_FUNC_ICONV_OPEN_UTF): New macro.
6758         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
6759         and REPLACE_ICONV_UTF.
6760         * modules/iconv_open (Depends-on): Add c-strcase.
6761         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
6762         ICONV_CONST.
6763         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
6764
6765 2007-10-13  Albert Chin  <china@thewrittenword.com>
6766             Bruno Haible  <bruno@clisp.org>
6767
6768         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
6769         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
6770
6771 2007-10-13  Bruno Haible  <bruno@clisp.org>
6772
6773         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
6774         defined, use the ISO C99 inline semantics.
6775         * lib/argp.h (ARGP_EI): Likewise.
6776
6777 2007-10-13  Bruno Haible  <bruno@clisp.org>
6778
6779         Handle 'inline' change in gcc 4.3.0.
6780         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
6781         argp_fmtstream_write, argp_fmtstream_set_lmargin,
6782         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
6783         argp_fmtstream_point): Disable 'extern' declaration if the function
6784         definition is going to be provided inline.
6785         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
6786         semantics, not the ISO C99 inline semantics.
6787         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
6788         'extern' declaration if the function definition is going to be provided
6789         inline.
6790         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
6791         the GNU C inline semantics, not the ISO C99 inline semantics. With
6792         GCC 4.2, avoid a warning.
6793
6794 2007-10-13  Bruno Haible  <bruno@clisp.org>
6795
6796         * lib/freading.h (freading): Enable the use of __freading for
6797         glibc >= 2.7.
6798         * lib/freading.c (freading): Likewise.
6799
6800 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
6801
6802         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
6803         "warning: C99 inline functions are not supported; using GNU89".
6804
6805 2007-10-12  Bruno Haible  <bruno@clisp.org>
6806
6807         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
6808         of 2.
6809         * tests/test-ceilf2.c: New file.
6810         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
6811
6812         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
6813         * modules/ceilf-tests: Update.
6814
6815 2007-10-12  Bruno Haible  <bruno@clisp.org>
6816
6817         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
6818         of 2.
6819         * tests/test-floorf2.c: New file.
6820         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
6821
6822         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
6823         * modules/floorf-tests: Update.
6824
6825 2007-10-12  Bruno Haible  <bruno@clisp.org>
6826
6827         * tests/test-trunc2.c: New file.
6828         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
6829
6830         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
6831         * modules/trunc-tests: Update.
6832
6833 2007-10-12  Bruno Haible  <bruno@clisp.org>
6834
6835         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
6836         of 2.
6837         * tests/test-truncf2.c: New file.
6838         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
6839
6840         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
6841         * modules/truncf-tests: Update.
6842
6843 2007-10-11  Eric Blake  <ebb9@byu.net>
6844
6845         Don't claim strerror is broken on Interix.
6846         * doc/functions/strerror.texi (strerror): Known broken systems are
6847         now Solaris 8, and not Interix.
6848         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
6849         Interix on cross-compile.
6850         Reported by Martin Koeppe in
6851         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
6852
6853 2007-10-11  Bruno Haible  <bruno@clisp.org>
6854
6855         * modules/i-ring-tests: New file.
6856         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
6857         instead of assert.
6858
6859 2007-10-11  Bruno Haible  <bruno@clisp.org>
6860
6861         * modules/filenamecat-tests: New file.
6862         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
6863         * lib/filenamecat.c: Remove test code.
6864
6865 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
6866
6867         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
6868
6869         * lib/strerror.c: Include <string.h> always, to test interface,
6870         and to remove the need for the dummy.
6871         Include intprops.h to compute width instead of doing it ourselves
6872         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
6873         (strerror): Define it to return NULL if there's no system strerror.
6874         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
6875         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
6876         ancient pre-strerror Unix systems well any more.  Saying "unknown
6877         system error" is enough.
6878         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
6879         simpler strerror.c implementation.
6880         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
6881         Simplify the tests to reflect the simpler strerror implementation.
6882         * modules/strerror (Depends-on): Add intprops.
6883
6884 2007-10-09  Eric Blake  <ebb9@byu.net>
6885
6886         Silence test-fpending.
6887         * modules/fpending-tests (Files): Add wrapper script.
6888         * tests/test-fpending.sh: New file.
6889
6890 2007-10-09  Bruno Haible  <bruno@clisp.org>
6891
6892         * MODULES.html.sh (func_module): Don't create a hyperlink for
6893         function names like 'printf_frexp'.
6894         (Misc): Add crc, memxor.
6895         (Characteristics of floating types): New section.
6896         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
6897         isnanf-nolibm, signbit, trunc, truncf, truncl.
6898         (Enhancements for ISO C 99 functions): New subsection Input/output.
6899         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
6900         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
6901         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
6902         (Compatibility checks for POSIX:2001 functions): Add clock-time.
6903         (Enhancements for POSIX:2001 functions): Add chdir-long.
6904         (File system functions): Add areadlink, chdir-safer, read-file.
6905         Remove cycle-check.
6906         (File system as inode set): New section.
6907         (Date and time): Add gethrxtime.
6908         (Multithreading): Add openmp.
6909         (Internationalization functions): Add localename.
6910         (Unicode string functions): Add unistr/u*-mbsnlen.
6911         (Support for maintaining and releasing projects): Add git-version-gen.
6912         (Lone files): Remove directories.
6913
6914 2007-10-08  Ben Pfaff  <blp@gnu.org>
6915
6916         * lib/xmalloca.h: Fix typo in comment.
6917
6918 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
6919
6920         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
6921         when avoiding problems with integer overflow.  Use a portable test
6922         instead.
6923
6924 2007-10-08  Simon Josefsson  <simon@josefsson.org>
6925
6926         * modules/dummy (License): Change to LGPLv2+.
6927         * modules/float (License): Likewise
6928         * modules/realloc (License): Likewise
6929         * modules/stdlib (License): Likewise
6930
6931 2007-10-07  Bruno Haible  <bruno@clisp.org>
6932
6933         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
6934         * floor.c (TWO_MANT_DIG): Likewise.
6935         * ceil.c (TWO_MANT_DIG): Likewise.
6936         Reported by Ben Pfaff.
6937
6938 2007-10-07  Bruno Haible  <bruno@clisp.org>
6939
6940         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
6941         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
6942         * lib/frexp.c (FUNC): Likewise.
6943         * lib/printf-frexp.h (printf_frexp): Likewise.
6944         * lib/printf-frexpl.h (printf_frexpl): Likewise.
6945         * lib/printf-frexp.c (FUNC): Likewise.
6946         Suggested by Jim Meyering.
6947
6948 2007-10-07  Jim Meyering  <meyering@redhat.com>
6949
6950         Make xnanosleep's integer overflow test more robust.
6951         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
6952         so that gcc-4.3.0 doesn't optimize away this test for overflow.
6953
6954 2007-10-07  Bruno Haible  <bruno@clisp.org>
6955
6956         * NEWS: Mention the license change.
6957
6958         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
6959         abbreviations in the modules files.
6960
6961         Change copyright notice from GPLv2+ to GPLv3+.
6962         * README: Change copyright notice.
6963         * MODULES.html.sh: Likewise.
6964         * build-aux/bootstrap.conf: Likewise.
6965         * build-aux/config.libpath: Likewise.
6966         * build-aux/csharpcomp.sh.in: Likewise.
6967         * build-aux/csharpexec.sh.in: Likewise.
6968         * build-aux/install-reloc: Likewise.
6969         * build-aux/javacomp.sh.in: Likewise.
6970         * build-aux/javaexec.sh.in: Likewise.
6971         * build-aux/ldd.sh.in: Likewise.
6972         * build-aux/reloc-ldflags: Likewise.
6973         * build-aux/relocatable.sh.in: Likewise.
6974         * build-aux/x-to-1.in: Likewise.
6975         * check-module: Likewise.
6976         * config/srclistvars.sh: Likewise.
6977         * gnulib-tool: Likewise.
6978         * lib/acl-internal.h: Likewise.
6979         * lib/acl.c: Likewise.
6980         * lib/acl.h: Likewise.
6981         * lib/acl_entries.c: Likewise.
6982         * lib/areadlink-with-size.c: Likewise.
6983         * lib/areadlink.c: Likewise.
6984         * lib/areadlink.h: Likewise.
6985         * lib/argmatch.c: Likewise.
6986         * lib/argmatch.h: Likewise.
6987         * lib/argp-ba.c: Likewise.
6988         * lib/argp-eexst.c: Likewise.
6989         * lib/argp-fmtstream.c: Likewise.
6990         * lib/argp-fmtstream.h: Likewise.
6991         * lib/argp-fs-xinl.c: Likewise.
6992         * lib/argp-help.c: Likewise.
6993         * lib/argp-namefrob.h: Likewise.
6994         * lib/argp-parse.c: Likewise.
6995         * lib/argp-pin.c: Likewise.
6996         * lib/argp-pv.c: Likewise.
6997         * lib/argp-pvh.c: Likewise.
6998         * lib/argp-xinl.c: Likewise.
6999         * lib/argp.h: Likewise.
7000         * lib/at-func.c: Likewise.
7001         * lib/atanl.c: Likewise.
7002         * lib/backupfile.c: Likewise.
7003         * lib/backupfile.h: Likewise.
7004         * lib/basename.c: Likewise.
7005         * lib/binary-io.h: Likewise.
7006         * lib/byteswap.in.h: Likewise.
7007         * lib/c-stack.c: Likewise.
7008         * lib/c-stack.h: Likewise.
7009         * lib/c-strcasestr.c: Likewise.
7010         * lib/c-strcasestr.h: Likewise.
7011         * lib/c-strstr.c: Likewise.
7012         * lib/c-strstr.h: Likewise.
7013         * lib/c-strtod.c: Likewise.
7014         * lib/calloc.c: Likewise.
7015         * lib/canon-host.c: Likewise.
7016         * lib/canon-host.h: Likewise.
7017         * lib/canonicalize-lgpl.c: Likewise.
7018         * lib/canonicalize.c: Likewise.
7019         * lib/canonicalize.h: Likewise.
7020         * lib/ceil.c: Likewise.
7021         * lib/ceilf.c: Likewise.
7022         * lib/ceill.c: Likewise.
7023         * lib/chdir-long.c: Likewise.
7024         * lib/chdir-long.h: Likewise.
7025         * lib/chdir-safer.c: Likewise.
7026         * lib/chdir-safer.h: Likewise.
7027         * lib/chown.c: Likewise.
7028         * lib/classpath.c: Likewise.
7029         * lib/classpath.h: Likewise.
7030         * lib/clean-temp.c: Likewise.
7031         * lib/clean-temp.h: Likewise.
7032         * lib/cloexec.c: Likewise.
7033         * lib/close-stream.c: Likewise.
7034         * lib/closein.c: Likewise.
7035         * lib/closein.h: Likewise.
7036         * lib/closeout.c: Likewise.
7037         * lib/closeout.h: Likewise.
7038         * lib/concat-filename.c: Likewise.
7039         * lib/copy-file.c: Likewise.
7040         * lib/copy-file.h: Likewise.
7041         * lib/count-one-bits.h: Likewise.
7042         * lib/crc.c: Likewise.
7043         * lib/crc.h: Likewise.
7044         * lib/creat-safer.c: Likewise.
7045         * lib/csharpcomp.c: Likewise.
7046         * lib/csharpcomp.h: Likewise.
7047         * lib/csharpexec.c: Likewise.
7048         * lib/csharpexec.h: Likewise.
7049         * lib/cycle-check.c: Likewise.
7050         * lib/cycle-check.h: Likewise.
7051         * lib/diacrit.c: Likewise.
7052         * lib/diacrit.h: Likewise.
7053         * lib/diffseq.h: Likewise.
7054         * lib/dirchownmod.c: Likewise.
7055         * lib/dirent.in.h: Likewise.
7056         * lib/dirfd.c: Likewise.
7057         * lib/dirfd.h: Likewise.
7058         * lib/dirname.c: Likewise.
7059         * lib/dirname.h: Likewise.
7060         * lib/dummy.c: Likewise.
7061         * lib/dup-safer.c: Likewise.
7062         * lib/dup2.c: Likewise.
7063         * lib/eealloc.h: Likewise.
7064         * lib/error.c: Likewise.
7065         * lib/error.h: Likewise.
7066         * lib/euidaccess.c: Likewise.
7067         * lib/exclude.c: Likewise.
7068         * lib/exclude.h: Likewise.
7069         * lib/execute.c: Likewise.
7070         * lib/execute.h: Likewise.
7071         * lib/exitfail.c: Likewise.
7072         * lib/exitfail.h: Likewise.
7073         * lib/expl.c: Likewise.
7074         * lib/fatal-signal.c: Likewise.
7075         * lib/fatal-signal.h: Likewise.
7076         * lib/fbufmode.c: Likewise.
7077         * lib/fbufmode.h: Likewise.
7078         * lib/fchdir.c: Likewise.
7079         * lib/fchmodat.c: Likewise.
7080         * lib/fchownat.c: Likewise.
7081         * lib/fcntl--.h: Likewise.
7082         * lib/fcntl-safer.h: Likewise.
7083         * lib/fcntl.in.h: Likewise.
7084         * lib/fd-safer.c: Likewise.
7085         * lib/fflush.c: Likewise.
7086         * lib/file-has-acl.c: Likewise.
7087         * lib/file-set.c: Likewise.
7088         * lib/file-type.c: Likewise.
7089         * lib/file-type.h: Likewise.
7090         * lib/fileblocks.c: Likewise.
7091         * lib/filemode.c: Likewise.
7092         * lib/filemode.h: Likewise.
7093         * lib/filename.h: Likewise.
7094         * lib/filenamecat.c: Likewise.
7095         * lib/filenamecat.h: Likewise.
7096         * lib/findprog.c: Likewise.
7097         * lib/findprog.h: Likewise.
7098         * lib/float.in.h: Likewise.
7099         * lib/floor.c: Likewise.
7100         * lib/floorf.c: Likewise.
7101         * lib/floorl.c: Likewise.
7102         * lib/fopen-safer.c: Likewise.
7103         * lib/fopen.c: Likewise.
7104         * lib/fpending.c: Likewise.
7105         * lib/fpending.h: Likewise.
7106         * lib/fprintf.c: Likewise.
7107         * lib/fprintftime.h: Likewise.
7108         * lib/fpucw.h: Likewise.
7109         * lib/fpurge.c: Likewise.
7110         * lib/fpurge.h: Likewise.
7111         * lib/freadable.c: Likewise.
7112         * lib/freadable.h: Likewise.
7113         * lib/freadahead.c: Likewise.
7114         * lib/freadahead.h: Likewise.
7115         * lib/freading.c: Likewise.
7116         * lib/freading.h: Likewise.
7117         * lib/free.c: Likewise.
7118         * lib/freopen.c: Likewise.
7119         * lib/frexp.c: Likewise.
7120         * lib/frexpl.c: Likewise.
7121         * lib/fseek.c: Likewise.
7122         * lib/fseterr.c: Likewise.
7123         * lib/fseterr.h: Likewise.
7124         * lib/fstatat.c: Likewise.
7125         * lib/fstrcmp.c: Likewise.
7126         * lib/fstrcmp.h: Likewise.
7127         * lib/fsusage.c: Likewise.
7128         * lib/fsusage.h: Likewise.
7129         * lib/ftell.c: Likewise.
7130         * lib/ftello.c: Likewise.
7131         * lib/fts-cycle.c: Likewise.
7132         * lib/fts.c: Likewise.
7133         * lib/fts_.h: Likewise.
7134         * lib/full-read.c: Likewise.
7135         * lib/full-read.h: Likewise.
7136         * lib/full-write.c: Likewise.
7137         * lib/full-write.h: Likewise.
7138         * lib/fwritable.c: Likewise.
7139         * lib/fwritable.h: Likewise.
7140         * lib/fwriteerror.c: Likewise.
7141         * lib/fwriteerror.h: Likewise.
7142         * lib/fwriting.c: Likewise.
7143         * lib/fwriting.h: Likewise.
7144         * lib/gcd.c: Likewise.
7145         * lib/gcd.h: Likewise.
7146         * lib/getcwd.c: Likewise.
7147         * lib/getdate.h: Likewise.
7148         * lib/getdate.y: Likewise.
7149         * lib/getdomainname.c: Likewise.
7150         * lib/getdomainname.h: Likewise.
7151         * lib/getgroups.c: Likewise.
7152         * lib/gethostname.c: Likewise.
7153         * lib/gethrxtime.c: Likewise.
7154         * lib/gethrxtime.h: Likewise.
7155         * lib/getloadavg.c: Likewise.
7156         * lib/getndelim2.c: Likewise.
7157         * lib/getndelim2.h: Likewise.
7158         * lib/getnline.c: Likewise.
7159         * lib/getnline.h: Likewise.
7160         * lib/getopt.c: Likewise.
7161         * lib/getopt.in.h: Likewise.
7162         * lib/getopt1.c: Likewise.
7163         * lib/getopt_int.h: Likewise.
7164         * lib/getpagesize.h: Likewise.
7165         * lib/getsubopt.c: Likewise.
7166         * lib/gettime.c: Likewise.
7167         * lib/getugroups.c: Likewise.
7168         * lib/getugroups.h: Likewise.
7169         * lib/getusershell.c: Likewise.
7170         * lib/gl_anyavltree_list1.h: Likewise.
7171         * lib/gl_anyavltree_list2.h: Likewise.
7172         * lib/gl_anyhash_list1.h: Likewise.
7173         * lib/gl_anyhash_list2.h: Likewise.
7174         * lib/gl_anylinked_list1.h: Likewise.
7175         * lib/gl_anylinked_list2.h: Likewise.
7176         * lib/gl_anyrbtree_list1.h: Likewise.
7177         * lib/gl_anyrbtree_list2.h: Likewise.
7178         * lib/gl_anytree_list1.h: Likewise.
7179         * lib/gl_anytree_list2.h: Likewise.
7180         * lib/gl_anytree_oset.h: Likewise.
7181         * lib/gl_anytreehash_list1.h: Likewise.
7182         * lib/gl_anytreehash_list2.h: Likewise.
7183         * lib/gl_array_list.c: Likewise.
7184         * lib/gl_array_list.h: Likewise.
7185         * lib/gl_array_oset.c: Likewise.
7186         * lib/gl_array_oset.h: Likewise.
7187         * lib/gl_avltree_list.c: Likewise.
7188         * lib/gl_avltree_list.h: Likewise.
7189         * lib/gl_avltree_oset.c: Likewise.
7190         * lib/gl_avltree_oset.h: Likewise.
7191         * lib/gl_avltreehash_list.c: Likewise.
7192         * lib/gl_avltreehash_list.h: Likewise.
7193         * lib/gl_carray_list.c: Likewise.
7194         * lib/gl_carray_list.h: Likewise.
7195         * lib/gl_linked_list.c: Likewise.
7196         * lib/gl_linked_list.h: Likewise.
7197         * lib/gl_linkedhash_list.c: Likewise.
7198         * lib/gl_linkedhash_list.h: Likewise.
7199         * lib/gl_list.c: Likewise.
7200         * lib/gl_list.h: Likewise.
7201         * lib/gl_oset.c: Likewise.
7202         * lib/gl_oset.h: Likewise.
7203         * lib/gl_rbtree_list.c: Likewise.
7204         * lib/gl_rbtree_list.h: Likewise.
7205         * lib/gl_rbtree_oset.c: Likewise.
7206         * lib/gl_rbtree_oset.h: Likewise.
7207         * lib/gl_rbtreehash_list.c: Likewise.
7208         * lib/gl_rbtreehash_list.h: Likewise.
7209         * lib/gl_sublist.c: Likewise.
7210         * lib/gl_sublist.h: Likewise.
7211         * lib/group-member.c: Likewise.
7212         * lib/group-member.h: Likewise.
7213         * lib/hard-locale.c: Likewise.
7214         * lib/hard-locale.h: Likewise.
7215         * lib/hash-pjw.c: Likewise.
7216         * lib/hash-pjw.h: Likewise.
7217         * lib/hash-triple.c: Likewise.
7218         * lib/hash.c: Likewise.
7219         * lib/hash.h: Likewise.
7220         * lib/human.c: Likewise.
7221         * lib/human.h: Likewise.
7222         * lib/i-ring.c: Likewise.
7223         * lib/i-ring.h: Likewise.
7224         * lib/idcache.c: Likewise.
7225         * lib/imaxabs.c: Likewise.
7226         * lib/imaxdiv.c: Likewise.
7227         * lib/inet_pton.c: Likewise.
7228         * lib/inet_pton.h: Likewise.
7229         * lib/intprops.h: Likewise.
7230         * lib/inttostr.c: Likewise.
7231         * lib/inttostr.h: Likewise.
7232         * lib/inttypes.in.h: Likewise.
7233         * lib/isapipe.c: Likewise.
7234         * lib/isdir.c: Likewise.
7235         * lib/isnan.c: Likewise.
7236         * lib/isnan.h: Likewise.
7237         * lib/isnanf.c: Likewise.
7238         * lib/isnanf.h: Likewise.
7239         * lib/isnanl-nolibm.h: Likewise.
7240         * lib/isnanl.c: Likewise.
7241         * lib/isnanl.h: Likewise.
7242         * lib/javacomp.c: Likewise.
7243         * lib/javacomp.h: Likewise.
7244         * lib/javaexec.c: Likewise.
7245         * lib/javaexec.h: Likewise.
7246         * lib/javaversion.c: Likewise.
7247         * lib/javaversion.h: Likewise.
7248         * lib/javaversion.java: Likewise.
7249         * lib/lbrkprop.h: Likewise.
7250         * lib/lchmod.h: Likewise.
7251         * lib/lchown.c: Likewise.
7252         * lib/ldexpl.c: Likewise.
7253         * lib/linebreak.c: Likewise.
7254         * lib/linebreak.h: Likewise.
7255         * lib/linebuffer.c: Likewise.
7256         * lib/linebuffer.h: Likewise.
7257         * lib/locale.in.h: Likewise.
7258         * lib/logl.c: Likewise.
7259         * lib/long-options.c: Likewise.
7260         * lib/long-options.h: Likewise.
7261         * lib/lstat.c: Likewise.
7262         * lib/lstat.h: Likewise.
7263         * lib/math.in.h: Likewise.
7264         * lib/mbchar.c: Likewise.
7265         * lib/mbchar.h: Likewise.
7266         * lib/mbfile.h: Likewise.
7267         * lib/mbiter.h: Likewise.
7268         * lib/mbscasecmp.c: Likewise.
7269         * lib/mbscasestr.c: Likewise.
7270         * lib/mbschr.c: Likewise.
7271         * lib/mbscspn.c: Likewise.
7272         * lib/mbslen.c: Likewise.
7273         * lib/mbsncasecmp.c: Likewise.
7274         * lib/mbsnlen.c: Likewise.
7275         * lib/mbspbrk.c: Likewise.
7276         * lib/mbspcasecmp.c: Likewise.
7277         * lib/mbsrchr.c: Likewise.
7278         * lib/mbssep.c: Likewise.
7279         * lib/mbsspn.c: Likewise.
7280         * lib/mbsstr.c: Likewise.
7281         * lib/mbstok_r.c: Likewise.
7282         * lib/mbswidth.c: Likewise.
7283         * lib/mbswidth.h: Likewise.
7284         * lib/mbuiter.h: Likewise.
7285         * lib/memcasecmp.c: Likewise.
7286         * lib/memcasecmp.h: Likewise.
7287         * lib/memchr.c: Likewise.
7288         * lib/memcmp.c: Likewise.
7289         * lib/memcoll.c: Likewise.
7290         * lib/memcoll.h: Likewise.
7291         * lib/memcpy.c: Likewise.
7292         * lib/memrchr.c: Likewise.
7293         * lib/mkancesdirs.c: Likewise.
7294         * lib/mkdir-p.c: Likewise.
7295         * lib/mkdir-p.h: Likewise.
7296         * lib/mkdir.c: Likewise.
7297         * lib/mkdirat.c: Likewise.
7298         * lib/mkdtemp.c: Likewise.
7299         * lib/mkstemp-safer.c: Likewise.
7300         * lib/mkstemp.c: Likewise.
7301         * lib/modechange.c: Likewise.
7302         * lib/modechange.h: Likewise.
7303         * lib/mountlist.c: Likewise.
7304         * lib/mountlist.h: Likewise.
7305         * lib/mpsort.c: Likewise.
7306         * lib/nanosleep.c: Likewise.
7307         * lib/obstack.c: Likewise.
7308         * lib/obstack.h: Likewise.
7309         * lib/open-safer.c: Likewise.
7310         * lib/open.c: Likewise.
7311         * lib/openat-die.c: Likewise.
7312         * lib/openat-priv.h: Likewise.
7313         * lib/openat-proc.c: Likewise.
7314         * lib/openat.c: Likewise.
7315         * lib/openat.h: Likewise.
7316         * lib/pagealign_alloc.c: Likewise.
7317         * lib/pagealign_alloc.h: Likewise.
7318         * lib/physmem.c: Likewise.
7319         * lib/physmem.h: Likewise.
7320         * lib/pipe-safer.c: Likewise.
7321         * lib/pipe.c: Likewise.
7322         * lib/pipe.h: Likewise.
7323         * lib/posixtm.c: Likewise.
7324         * lib/posixtm.h: Likewise.
7325         * lib/posixver.c: Likewise.
7326         * lib/printf-frexp.c: Likewise.
7327         * lib/printf-frexp.h: Likewise.
7328         * lib/printf-frexpl.c: Likewise.
7329         * lib/printf-frexpl.h: Likewise.
7330         * lib/printf.c: Likewise.
7331         * lib/progname.c: Likewise.
7332         * lib/progname.h: Likewise.
7333         * lib/progreloc.c: Likewise.
7334         * lib/putenv.c: Likewise.
7335         * lib/quote.c: Likewise.
7336         * lib/quote.h: Likewise.
7337         * lib/quotearg.c: Likewise.
7338         * lib/quotearg.h: Likewise.
7339         * lib/raise.c: Likewise.
7340         * lib/readline.c: Likewise.
7341         * lib/readline.h: Likewise.
7342         * lib/readlink.c: Likewise.
7343         * lib/readtokens.c: Likewise.
7344         * lib/readtokens.h: Likewise.
7345         * lib/readtokens0.c: Likewise.
7346         * lib/readtokens0.h: Likewise.
7347         * lib/readutmp.c: Likewise.
7348         * lib/readutmp.h: Likewise.
7349         * lib/realloc.c: Likewise.
7350         * lib/relocwrapper.c: Likewise.
7351         * lib/rename-dest-slash.c: Likewise.
7352         * lib/rename.c: Likewise.
7353         * lib/rmdir.c: Likewise.
7354         * lib/rpmatch.c: Likewise.
7355         * lib/safe-read.c: Likewise.
7356         * lib/safe-read.h: Likewise.
7357         * lib/safe-write.c: Likewise.
7358         * lib/safe-write.h: Likewise.
7359         * lib/same-inode.h: Likewise.
7360         * lib/same.c: Likewise.
7361         * lib/same.h: Likewise.
7362         * lib/save-cwd.c: Likewise.
7363         * lib/save-cwd.h: Likewise.
7364         * lib/savedir.c: Likewise.
7365         * lib/savedir.h: Likewise.
7366         * lib/savewd.c: Likewise.
7367         * lib/savewd.h: Likewise.
7368         * lib/search.in.h: Likewise.
7369         * lib/setenv.c: Likewise.
7370         * lib/setenv.h: Likewise.
7371         * lib/settime.c: Likewise.
7372         * lib/sh-quote.c: Likewise.
7373         * lib/sh-quote.h: Likewise.
7374         * lib/sig2str.c: Likewise.
7375         * lib/sig2str.h: Likewise.
7376         * lib/signal.in.h: Likewise.
7377         * lib/signbitd.c: Likewise.
7378         * lib/signbitf.c: Likewise.
7379         * lib/signbitl.c: Likewise.
7380         * lib/sigprocmask.c: Likewise.
7381         * lib/sincosl.c: Likewise.
7382         * lib/sleep.c: Likewise.
7383         * lib/sprintf.c: Likewise.
7384         * lib/sqrtl.c: Likewise.
7385         * lib/stat-time.h: Likewise.
7386         * lib/stdio--.h: Likewise.
7387         * lib/stdio-safer.h: Likewise.
7388         * lib/stdlib--.h: Likewise.
7389         * lib/stdlib-safer.h: Likewise.
7390         * lib/stdlib.in.h: Likewise.
7391         * lib/stpcpy.c: Likewise.
7392         * lib/stpncpy.c: Likewise.
7393         * lib/strchrnul.c: Likewise.
7394         * lib/strcspn.c: Likewise.
7395         * lib/strerror.c: Likewise.
7396         * lib/strftime.c: Likewise.
7397         * lib/strftime.h: Likewise.
7398         * lib/striconveh.c: Likewise.
7399         * lib/striconveh.h: Likewise.
7400         * lib/striconveha.c: Likewise.
7401         * lib/striconveha.h: Likewise.
7402         * lib/stripslash.c: Likewise.
7403         * lib/strnlen1.c: Likewise.
7404         * lib/strnlen1.h: Likewise.
7405         * lib/strtod.c: Likewise.
7406         * lib/strtoimax.c: Likewise.
7407         * lib/strtok_r.c: Likewise.
7408         * lib/strtol.c: Likewise.
7409         * lib/strtoll.c: Likewise.
7410         * lib/strtoul.c: Likewise.
7411         * lib/strtoull.c: Likewise.
7412         * lib/sysexits.in.h: Likewise.
7413         * lib/tempname.c: Likewise.
7414         * lib/tempname.h: Likewise.
7415         * lib/timespec.h: Likewise.
7416         * lib/tls.c: Likewise.
7417         * lib/tls.h: Likewise.
7418         * lib/tmpdir.c: Likewise.
7419         * lib/tmpdir.h: Likewise.
7420         * lib/tmpfile-safer.c: Likewise.
7421         * lib/tmpfile.c: Likewise.
7422         * lib/trigl.c: Likewise.
7423         * lib/trigl.h: Likewise.
7424         * lib/trim.c: Likewise.
7425         * lib/trim.h: Likewise.
7426         * lib/trunc.c: Likewise.
7427         * lib/truncf.c: Likewise.
7428         * lib/truncl.c: Likewise.
7429         * lib/tsearch.c: Likewise.
7430         * lib/unicodeio.c: Likewise.
7431         * lib/unicodeio.h: Likewise.
7432         * lib/unistd--.h: Likewise.
7433         * lib/unistd-safer.h: Likewise.
7434         * lib/unistdio/ulc-fprintf.c: Likewise.
7435         * lib/unistdio/ulc-vfprintf.c: Likewise.
7436         * lib/unlinkdir.c: Likewise.
7437         * lib/unlinkdir.h: Likewise.
7438         * lib/unlocked-io.h: Likewise.
7439         * lib/unsetenv.c: Likewise.
7440         * lib/userspec.c: Likewise.
7441         * lib/utime.c: Likewise.
7442         * lib/utimecmp.c: Likewise.
7443         * lib/utimecmp.h: Likewise.
7444         * lib/utimens.c: Likewise.
7445         * lib/verify.h: Likewise.
7446         * lib/verror.c: Likewise.
7447         * lib/verror.h: Likewise.
7448         * lib/version-etc-fsf.c: Likewise.
7449         * lib/version-etc.c: Likewise.
7450         * lib/version-etc.h: Likewise.
7451         * lib/vfprintf.c: Likewise.
7452         * lib/vprintf.c: Likewise.
7453         * lib/vsprintf.c: Likewise.
7454         * lib/w32spawn.h: Likewise.
7455         * lib/wait-process.c: Likewise.
7456         * lib/wait-process.h: Likewise.
7457         * lib/wcwidth.c: Likewise.
7458         * lib/write-any-file.c: Likewise.
7459         * lib/xalloc-die.c: Likewise.
7460         * lib/xalloc.h: Likewise.
7461         * lib/xasprintf.c: Likewise.
7462         * lib/xgetcwd.c: Likewise.
7463         * lib/xgetcwd.h: Likewise.
7464         * lib/xgetdomainname.c: Likewise.
7465         * lib/xgetdomainname.h: Likewise.
7466         * lib/xgethostname.c: Likewise.
7467         * lib/xmalloc.c: Likewise.
7468         * lib/xmalloca.c: Likewise.
7469         * lib/xmalloca.h: Likewise.
7470         * lib/xmemcoll.c: Likewise.
7471         * lib/xnanosleep.c: Likewise.
7472         * lib/xreadlink.c: Likewise.
7473         * lib/xreadlink.h: Likewise.
7474         * lib/xsetenv.c: Likewise.
7475         * lib/xsetenv.h: Likewise.
7476         * lib/xstriconv.c: Likewise.
7477         * lib/xstriconv.h: Likewise.
7478         * lib/xstrndup.c: Likewise.
7479         * lib/xstrndup.h: Likewise.
7480         * lib/xstrtod.c: Likewise.
7481         * lib/xstrtod.h: Likewise.
7482         * lib/xstrtol-error.c: Likewise.
7483         * lib/xstrtol.c: Likewise.
7484         * lib/xstrtol.h: Likewise.
7485         * lib/xtime.h: Likewise.
7486         * lib/xvasprintf.c: Likewise.
7487         * lib/xvasprintf.h: Likewise.
7488         * lib/yesno.c: Likewise.
7489         * lib/yesno.h: Likewise.
7490         * posix-modules: Likewise.
7491         * tests/test-alloca-opt.c: Likewise.
7492         * tests/test-arcfour.c: Likewise.
7493         * tests/test-arctwo.c: Likewise.
7494         * tests/test-argmatch.c: Likewise.
7495         * tests/test-argp-2.sh: Likewise.
7496         * tests/test-argp.c: Likewise.
7497         * tests/test-arpa_inet.c: Likewise.
7498         * tests/test-array_list.c: Likewise.
7499         * tests/test-array_oset.c: Likewise.
7500         * tests/test-atexit.c: Likewise.
7501         * tests/test-avltree_list.c: Likewise.
7502         * tests/test-avltree_oset.c: Likewise.
7503         * tests/test-avltreehash_list.c: Likewise.
7504         * tests/test-base64.c: Likewise.
7505         * tests/test-binary-io.c: Likewise.
7506         * tests/test-byteswap.c: Likewise.
7507         * tests/test-c-ctype.c: Likewise.
7508         * tests/test-c-strcasecmp.c: Likewise.
7509         * tests/test-c-strcasestr.c: Likewise.
7510         * tests/test-c-strncasecmp.c: Likewise.
7511         * tests/test-c-strstr.c: Likewise.
7512         * tests/test-canonicalize-lgpl.c: Likewise.
7513         * tests/test-canonicalize.c: Likewise.
7514         * tests/test-carray_list.c: Likewise.
7515         * tests/test-ceilf.c: Likewise.
7516         * tests/test-ceill.c: Likewise.
7517         * tests/test-count-one-bits.c: Likewise.
7518         * tests/test-crc.c: Likewise.
7519         * tests/test-dirname.c: Likewise.
7520         * tests/test-fbufmode.c: Likewise.
7521         * tests/test-fcntl.c: Likewise.
7522         * tests/test-fflush.c: Likewise.
7523         * tests/test-floorf.c: Likewise.
7524         * tests/test-floorl.c: Likewise.
7525         * tests/test-fopen.c: Likewise.
7526         * tests/test-fprintf-posix.c: Likewise.
7527         * tests/test-fprintf-posix.h: Likewise.
7528         * tests/test-fpurge.c: Likewise.
7529         * tests/test-freadable.c: Likewise.
7530         * tests/test-freadahead.c: Likewise.
7531         * tests/test-freading.c: Likewise.
7532         * tests/test-freopen.c: Likewise.
7533         * tests/test-frexp.c: Likewise.
7534         * tests/test-frexpl.c: Likewise.
7535         * tests/test-fseek.c: Likewise.
7536         * tests/test-fseeko.c: Likewise.
7537         * tests/test-fseterr.c: Likewise.
7538         * tests/test-fstrcmp.c: Likewise.
7539         * tests/test-ftell.c: Likewise.
7540         * tests/test-ftello.c: Likewise.
7541         * tests/test-fwritable.c: Likewise.
7542         * tests/test-fwriting.c: Likewise.
7543         * tests/test-getaddrinfo.c: Likewise.
7544         * tests/test-getpass.c: Likewise.
7545         * tests/test-gettimeofday.c: Likewise.
7546         * tests/test-hmac-md5.c: Likewise.
7547         * tests/test-hmac-sha1.c: Likewise.
7548         * tests/test-iconv.c: Likewise.
7549         * tests/test-iconvme.c: Likewise.
7550         * tests/test-inttypes.c: Likewise.
7551         * tests/test-isnan.c: Likewise.
7552         * tests/test-isnanf.c: Likewise.
7553         * tests/test-isnanl-nolibm.c: Likewise.
7554         * tests/test-isnanl.c: Likewise.
7555         * tests/test-isnanl.h: Likewise.
7556         * tests/test-ldexpl.c: Likewise.
7557         * tests/test-linked_list.c: Likewise.
7558         * tests/test-linkedhash_list.c: Likewise.
7559         * tests/test-locale.c: Likewise.
7560         * tests/test-localename.c: Likewise.
7561         * tests/test-lock.c: Likewise.
7562         * tests/test-lseek.c: Likewise.
7563         * tests/test-malloca.c: Likewise.
7564         * tests/test-math.c: Likewise.
7565         * tests/test-mbscasecmp.c: Likewise.
7566         * tests/test-mbscasestr1.c: Likewise.
7567         * tests/test-mbscasestr2.c: Likewise.
7568         * tests/test-mbscasestr3.c: Likewise.
7569         * tests/test-mbscasestr4.c: Likewise.
7570         * tests/test-mbschr.c: Likewise.
7571         * tests/test-mbscspn.c: Likewise.
7572         * tests/test-mbsncasecmp.c: Likewise.
7573         * tests/test-mbspbrk.c: Likewise.
7574         * tests/test-mbspcasecmp.c: Likewise.
7575         * tests/test-mbsrchr.c: Likewise.
7576         * tests/test-mbsspn.c: Likewise.
7577         * tests/test-mbsstr1.c: Likewise.
7578         * tests/test-mbsstr2.c: Likewise.
7579         * tests/test-mbsstr3.c: Likewise.
7580         * tests/test-md5.c: Likewise.
7581         * tests/test-memmem.c: Likewise.
7582         * tests/test-netinet_in.c: Likewise.
7583         * tests/test-open.c: Likewise.
7584         * tests/test-printf-frexp.c: Likewise.
7585         * tests/test-printf-frexpl.c: Likewise.
7586         * tests/test-printf-posix.c: Likewise.
7587         * tests/test-printf-posix.h: Likewise.
7588         * tests/test-rbtree_list.c: Likewise.
7589         * tests/test-rbtree_oset.c: Likewise.
7590         * tests/test-rbtreehash_list.c: Likewise.
7591         * tests/test-read-file.c: Likewise.
7592         * tests/test-rijndael.c: Likewise.
7593         * tests/test-search.c: Likewise.
7594         * tests/test-signbit.c: Likewise.
7595         * tests/test-sleep.c: Likewise.
7596         * tests/test-snprintf-posix.c: Likewise.
7597         * tests/test-snprintf-posix.h: Likewise.
7598         * tests/test-snprintf.c: Likewise.
7599         * tests/test-sprintf-posix.c: Likewise.
7600         * tests/test-sprintf-posix.h: Likewise.
7601         * tests/test-stat-time.c: Likewise.
7602         * tests/test-stdbool.c: Likewise.
7603         * tests/test-stdint.c: Likewise.
7604         * tests/test-stdio.c: Likewise.
7605         * tests/test-stdlib.c: Likewise.
7606         * tests/test-stpncpy.c: Likewise.
7607         * tests/test-strcasestr.c: Likewise.
7608         * tests/test-striconv.c: Likewise.
7609         * tests/test-striconveh.c: Likewise.
7610         * tests/test-striconveha.c: Likewise.
7611         * tests/test-string.c: Likewise.
7612         * tests/test-sys_select.c: Likewise.
7613         * tests/test-sys_socket.c: Likewise.
7614         * tests/test-sys_stat.c: Likewise.
7615         * tests/test-sys_time.c: Likewise.
7616         * tests/test-sysexits.c: Likewise.
7617         * tests/test-time.c: Likewise.
7618         * tests/test-tls.c: Likewise.
7619         * tests/test-trunc.c: Likewise.
7620         * tests/test-truncf.c: Likewise.
7621         * tests/test-truncl.c: Likewise.
7622         * tests/test-unistd.c: Likewise.
7623         * tests/test-vasnprintf-posix.c: Likewise.
7624         * tests/test-vasnprintf-posix2.c: Likewise.
7625         * tests/test-vasnprintf.c: Likewise.
7626         * tests/test-vasprintf-posix.c: Likewise.
7627         * tests/test-vasprintf.c: Likewise.
7628         * tests/test-verify.c: Likewise.
7629         * tests/test-vfprintf-posix.c: Likewise.
7630         * tests/test-vprintf-posix.c: Likewise.
7631         * tests/test-vsnprintf-posix.c: Likewise.
7632         * tests/test-vsnprintf.c: Likewise.
7633         * tests/test-vsprintf-posix.c: Likewise.
7634         * tests/test-wchar.c: Likewise.
7635         * tests/test-wctype.c: Likewise.
7636         * tests/test-wcwidth.c: Likewise.
7637         * tests/test-xstrtol.c: Likewise.
7638         * tests/test-xvasprintf.c: Likewise.
7639         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
7640         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
7641         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
7642         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
7643         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
7644         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
7645         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
7646         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
7647         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
7648         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
7649         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
7650         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
7651         * tests/uniname/test-uninames.c: Likewise.
7652         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
7653         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
7654         * tests/unistdio/test-u16-printf1.h: Likewise.
7655         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
7656         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
7657         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
7658         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
7659         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
7660         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
7661         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
7662         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
7663         * tests/unistdio/test-u32-printf1.h: Likewise.
7664         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
7665         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
7666         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
7667         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
7668         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
7669         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
7670         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
7671         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
7672         * tests/unistdio/test-u8-printf1.h: Likewise.
7673         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
7674         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
7675         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
7676         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
7677         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
7678         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
7679         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
7680         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
7681         * tests/unistdio/test-ulc-printf1.h: Likewise.
7682         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
7683         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
7684         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
7685         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
7686         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
7687         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
7688         * tests/uniwidth/test-u16-strwidth.c: Likewise.
7689         * tests/uniwidth/test-u16-width.c: Likewise.
7690         * tests/uniwidth/test-u32-strwidth.c: Likewise.
7691         * tests/uniwidth/test-u32-width.c: Likewise.
7692         * tests/uniwidth/test-u8-strwidth.c: Likewise.
7693         * tests/uniwidth/test-u8-width.c: Likewise.
7694         * tests/uniwidth/test-uc_width.c: Likewise.
7695         * config/srclist-update: Likewise.
7696         (fixlicense): Update to GPLv3+.
7697
7698         Change copyright notice from LGPLv2.1+ to LGPLv3+.
7699         * tests/test-tsearch.c: Change copyright notice.
7700
7701         Change copyright notice from LGPLv2.0+ to LGPLv3+.
7702         * lib/c-strcaseeq.h: Change copyright notice.
7703         * lib/streq.h: Likewise.
7704         * lib/uniconv.h: Likewise.
7705         * lib/uniconv/u-conv-from-enc.h: Likewise.
7706         * lib/uniconv/u-conv-to-enc.h: Likewise.
7707         * lib/uniconv/u-strconv-from-enc.h: Likewise.
7708         * lib/uniconv/u-strconv-to-enc.h: Likewise.
7709         * lib/uniconv/u16-conv-from-enc.c: Likewise.
7710         * lib/uniconv/u16-conv-to-enc.c: Likewise.
7711         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
7712         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
7713         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
7714         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
7715         * lib/uniconv/u32-conv-from-enc.c: Likewise.
7716         * lib/uniconv/u32-conv-to-enc.c: Likewise.
7717         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
7718         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
7719         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
7720         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
7721         * lib/uniconv/u8-conv-from-enc.c: Likewise.
7722         * lib/uniconv/u8-conv-to-enc.c: Likewise.
7723         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
7724         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
7725         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
7726         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
7727         * lib/uniname.h: Likewise.
7728         * lib/uniname/uniname.c: Likewise.
7729         * lib/unistdio.h: Likewise.
7730         * lib/unistdio/u-asnprintf.h: Likewise.
7731         * lib/unistdio/u-asprintf.h: Likewise.
7732         * lib/unistdio/u-printf-args.c: Likewise.
7733         * lib/unistdio/u-printf-args.h: Likewise.
7734         * lib/unistdio/u-printf-parse.h: Likewise.
7735         * lib/unistdio/u-snprintf.h: Likewise.
7736         * lib/unistdio/u-sprintf.h: Likewise.
7737         * lib/unistdio/u-vasprintf.h: Likewise.
7738         * lib/unistdio/u-vsnprintf.h: Likewise.
7739         * lib/unistdio/u-vsprintf.h: Likewise.
7740         * lib/unistdio/u16-asnprintf.c: Likewise.
7741         * lib/unistdio/u16-asprintf.c: Likewise.
7742         * lib/unistdio/u16-printf-parse.c: Likewise.
7743         * lib/unistdio/u16-snprintf.c: Likewise.
7744         * lib/unistdio/u16-sprintf.c: Likewise.
7745         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
7746         * lib/unistdio/u16-u16-asprintf.c: Likewise.
7747         * lib/unistdio/u16-u16-snprintf.c: Likewise.
7748         * lib/unistdio/u16-u16-sprintf.c: Likewise.
7749         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
7750         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
7751         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
7752         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
7753         * lib/unistdio/u16-vasnprintf.c: Likewise.
7754         * lib/unistdio/u16-vasprintf.c: Likewise.
7755         * lib/unistdio/u16-vsnprintf.c: Likewise.
7756         * lib/unistdio/u16-vsprintf.c: Likewise.
7757         * lib/unistdio/u32-asnprintf.c: Likewise.
7758         * lib/unistdio/u32-asprintf.c: Likewise.
7759         * lib/unistdio/u32-printf-parse.c: Likewise.
7760         * lib/unistdio/u32-snprintf.c: Likewise.
7761         * lib/unistdio/u32-sprintf.c: Likewise.
7762         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
7763         * lib/unistdio/u32-u32-asprintf.c: Likewise.
7764         * lib/unistdio/u32-u32-snprintf.c: Likewise.
7765         * lib/unistdio/u32-u32-sprintf.c: Likewise.
7766         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
7767         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
7768         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
7769         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
7770         * lib/unistdio/u32-vasnprintf.c: Likewise.
7771         * lib/unistdio/u32-vasprintf.c: Likewise.
7772         * lib/unistdio/u32-vsnprintf.c: Likewise.
7773         * lib/unistdio/u32-vsprintf.c: Likewise.
7774         * lib/unistdio/u8-asnprintf.c: Likewise.
7775         * lib/unistdio/u8-asprintf.c: Likewise.
7776         * lib/unistdio/u8-printf-parse.c: Likewise.
7777         * lib/unistdio/u8-snprintf.c: Likewise.
7778         * lib/unistdio/u8-sprintf.c: Likewise.
7779         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
7780         * lib/unistdio/u8-u8-asprintf.c: Likewise.
7781         * lib/unistdio/u8-u8-snprintf.c: Likewise.
7782         * lib/unistdio/u8-u8-sprintf.c: Likewise.
7783         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
7784         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
7785         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
7786         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
7787         * lib/unistdio/u8-vasnprintf.c: Likewise.
7788         * lib/unistdio/u8-vasprintf.c: Likewise.
7789         * lib/unistdio/u8-vsnprintf.c: Likewise.
7790         * lib/unistdio/u8-vsprintf.c: Likewise.
7791         * lib/unistdio/ulc-asnprintf.c: Likewise.
7792         * lib/unistdio/ulc-asprintf.c: Likewise.
7793         * lib/unistdio/ulc-printf-parse.c: Likewise.
7794         * lib/unistdio/ulc-snprintf.c: Likewise.
7795         * lib/unistdio/ulc-sprintf.c: Likewise.
7796         * lib/unistdio/ulc-vasnprintf.c: Likewise.
7797         * lib/unistdio/ulc-vasprintf.c: Likewise.
7798         * lib/unistdio/ulc-vsnprintf.c: Likewise.
7799         * lib/unistdio/ulc-vsprintf.c: Likewise.
7800         * lib/unistr.h: Likewise.
7801         * lib/unistr/u-cpy-alloc.h: Likewise.
7802         * lib/unistr/u-cpy.h: Likewise.
7803         * lib/unistr/u-endswith.h: Likewise.
7804         * lib/unistr/u-move.h: Likewise.
7805         * lib/unistr/u-set.h: Likewise.
7806         * lib/unistr/u-startswith.h: Likewise.
7807         * lib/unistr/u-stpcpy.h: Likewise.
7808         * lib/unistr/u-stpncpy.h: Likewise.
7809         * lib/unistr/u-strcat.h: Likewise.
7810         * lib/unistr/u-strcpy.h: Likewise.
7811         * lib/unistr/u-strcspn.h: Likewise.
7812         * lib/unistr/u-strdup.h: Likewise.
7813         * lib/unistr/u-strlen.h: Likewise.
7814         * lib/unistr/u-strncat.h: Likewise.
7815         * lib/unistr/u-strncpy.h: Likewise.
7816         * lib/unistr/u-strnlen.h: Likewise.
7817         * lib/unistr/u-strpbrk.h: Likewise.
7818         * lib/unistr/u-strspn.h: Likewise.
7819         * lib/unistr/u-strstr.h: Likewise.
7820         * lib/unistr/u-strtok.h: Likewise.
7821         * lib/unistr/u16-check.c: Likewise.
7822         * lib/unistr/u16-chr.c: Likewise.
7823         * lib/unistr/u16-cmp.c: Likewise.
7824         * lib/unistr/u16-cpy-alloc.c: Likewise.
7825         * lib/unistr/u16-cpy.c: Likewise.
7826         * lib/unistr/u16-endswith.c: Likewise.
7827         * lib/unistr/u16-mblen.c: Likewise.
7828         * lib/unistr/u16-mbsnlen.c: Likewise.
7829         * lib/unistr/u16-mbtouc-aux.c: Likewise.
7830         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
7831         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
7832         * lib/unistr/u16-mbtouc.c: Likewise.
7833         * lib/unistr/u16-mbtoucr.c: Likewise.
7834         * lib/unistr/u16-move.c: Likewise.
7835         * lib/unistr/u16-next.c: Likewise.
7836         * lib/unistr/u16-prev.c: Likewise.
7837         * lib/unistr/u16-set.c: Likewise.
7838         * lib/unistr/u16-startswith.c: Likewise.
7839         * lib/unistr/u16-stpcpy.c: Likewise.
7840         * lib/unistr/u16-stpncpy.c: Likewise.
7841         * lib/unistr/u16-strcat.c: Likewise.
7842         * lib/unistr/u16-strchr.c: Likewise.
7843         * lib/unistr/u16-strcmp.c: Likewise.
7844         * lib/unistr/u16-strcpy.c: Likewise.
7845         * lib/unistr/u16-strcspn.c: Likewise.
7846         * lib/unistr/u16-strdup.c: Likewise.
7847         * lib/unistr/u16-strlen.c: Likewise.
7848         * lib/unistr/u16-strmblen.c: Likewise.
7849         * lib/unistr/u16-strmbtouc.c: Likewise.
7850         * lib/unistr/u16-strncat.c: Likewise.
7851         * lib/unistr/u16-strncmp.c: Likewise.
7852         * lib/unistr/u16-strncpy.c: Likewise.
7853         * lib/unistr/u16-strnlen.c: Likewise.
7854         * lib/unistr/u16-strpbrk.c: Likewise.
7855         * lib/unistr/u16-strrchr.c: Likewise.
7856         * lib/unistr/u16-strspn.c: Likewise.
7857         * lib/unistr/u16-strstr.c: Likewise.
7858         * lib/unistr/u16-strtok.c: Likewise.
7859         * lib/unistr/u16-to-u32.c: Likewise.
7860         * lib/unistr/u16-to-u8.c: Likewise.
7861         * lib/unistr/u16-uctomb-aux.c: Likewise.
7862         * lib/unistr/u16-uctomb.c: Likewise.
7863         * lib/unistr/u32-check.c: Likewise.
7864         * lib/unistr/u32-chr.c: Likewise.
7865         * lib/unistr/u32-cmp.c: Likewise.
7866         * lib/unistr/u32-cpy-alloc.c: Likewise.
7867         * lib/unistr/u32-cpy.c: Likewise.
7868         * lib/unistr/u32-endswith.c: Likewise.
7869         * lib/unistr/u32-mblen.c: Likewise.
7870         * lib/unistr/u32-mbsnlen.c: Likewise.
7871         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
7872         * lib/unistr/u32-mbtouc.c: Likewise.
7873         * lib/unistr/u32-mbtoucr.c: Likewise.
7874         * lib/unistr/u32-move.c: Likewise.
7875         * lib/unistr/u32-next.c: Likewise.
7876         * lib/unistr/u32-prev.c: Likewise.
7877         * lib/unistr/u32-set.c: Likewise.
7878         * lib/unistr/u32-startswith.c: Likewise.
7879         * lib/unistr/u32-stpcpy.c: Likewise.
7880         * lib/unistr/u32-stpncpy.c: Likewise.
7881         * lib/unistr/u32-strcat.c: Likewise.
7882         * lib/unistr/u32-strchr.c: Likewise.
7883         * lib/unistr/u32-strcmp.c: Likewise.
7884         * lib/unistr/u32-strcpy.c: Likewise.
7885         * lib/unistr/u32-strcspn.c: Likewise.
7886         * lib/unistr/u32-strdup.c: Likewise.
7887         * lib/unistr/u32-strlen.c: Likewise.
7888         * lib/unistr/u32-strmblen.c: Likewise.
7889         * lib/unistr/u32-strmbtouc.c: Likewise.
7890         * lib/unistr/u32-strncat.c: Likewise.
7891         * lib/unistr/u32-strncmp.c: Likewise.
7892         * lib/unistr/u32-strncpy.c: Likewise.
7893         * lib/unistr/u32-strnlen.c: Likewise.
7894         * lib/unistr/u32-strpbrk.c: Likewise.
7895         * lib/unistr/u32-strrchr.c: Likewise.
7896         * lib/unistr/u32-strspn.c: Likewise.
7897         * lib/unistr/u32-strstr.c: Likewise.
7898         * lib/unistr/u32-strtok.c: Likewise.
7899         * lib/unistr/u32-to-u16.c: Likewise.
7900         * lib/unistr/u32-to-u8.c: Likewise.
7901         * lib/unistr/u32-uctomb.c: Likewise.
7902         * lib/unistr/u8-check.c: Likewise.
7903         * lib/unistr/u8-chr.c: Likewise.
7904         * lib/unistr/u8-cmp.c: Likewise.
7905         * lib/unistr/u8-cpy-alloc.c: Likewise.
7906         * lib/unistr/u8-cpy.c: Likewise.
7907         * lib/unistr/u8-endswith.c: Likewise.
7908         * lib/unistr/u8-mblen.c: Likewise.
7909         * lib/unistr/u8-mbsnlen.c: Likewise.
7910         * lib/unistr/u8-mbtouc-aux.c: Likewise.
7911         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
7912         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
7913         * lib/unistr/u8-mbtouc.c: Likewise.
7914         * lib/unistr/u8-mbtoucr.c: Likewise.
7915         * lib/unistr/u8-move.c: Likewise.
7916         * lib/unistr/u8-next.c: Likewise.
7917         * lib/unistr/u8-prev.c: Likewise.
7918         * lib/unistr/u8-set.c: Likewise.
7919         * lib/unistr/u8-startswith.c: Likewise.
7920         * lib/unistr/u8-stpcpy.c: Likewise.
7921         * lib/unistr/u8-stpncpy.c: Likewise.
7922         * lib/unistr/u8-strcat.c: Likewise.
7923         * lib/unistr/u8-strchr.c: Likewise.
7924         * lib/unistr/u8-strcmp.c: Likewise.
7925         * lib/unistr/u8-strcpy.c: Likewise.
7926         * lib/unistr/u8-strcspn.c: Likewise.
7927         * lib/unistr/u8-strdup.c: Likewise.
7928         * lib/unistr/u8-strlen.c: Likewise.
7929         * lib/unistr/u8-strmblen.c: Likewise.
7930         * lib/unistr/u8-strmbtouc.c: Likewise.
7931         * lib/unistr/u8-strncat.c: Likewise.
7932         * lib/unistr/u8-strncmp.c: Likewise.
7933         * lib/unistr/u8-strncpy.c: Likewise.
7934         * lib/unistr/u8-strnlen.c: Likewise.
7935         * lib/unistr/u8-strpbrk.c: Likewise.
7936         * lib/unistr/u8-strrchr.c: Likewise.
7937         * lib/unistr/u8-strspn.c: Likewise.
7938         * lib/unistr/u8-strstr.c: Likewise.
7939         * lib/unistr/u8-strtok.c: Likewise.
7940         * lib/unistr/u8-to-u16.c: Likewise.
7941         * lib/unistr/u8-to-u32.c: Likewise.
7942         * lib/unistr/u8-uctomb-aux.c: Likewise.
7943         * lib/unistr/u8-uctomb.c: Likewise.
7944         * lib/unitypes.h: Likewise.
7945         * lib/uniwidth.h: Likewise.
7946         * lib/uniwidth/cjk.h: Likewise.
7947         * lib/uniwidth/u16-strwidth.c: Likewise.
7948         * lib/uniwidth/u16-width.c: Likewise.
7949         * lib/uniwidth/u32-strwidth.c: Likewise.
7950         * lib/uniwidth/u32-width.c: Likewise.
7951         * lib/uniwidth/u8-strwidth.c: Likewise.
7952         * lib/uniwidth/u8-width.c: Likewise.
7953         * lib/uniwidth/width.c: Likewise.
7954
7955 2007-10-07  Bruno Haible  <bruno@clisp.org>
7956
7957         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
7958         The file is still under LGPL (see modules/inttypes).
7959
7960 2007-10-06  Bruno Haible  <bruno@clisp.org>
7961
7962         * modules/trunc (Dependencies): Add 'extensions'.
7963         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
7964         Reported by Ben Pfaff <blp@gnu.org>.
7965
7966 2007-10-06  Bruno Haible  <bruno@clisp.org>
7967
7968         * modules/freopen-tests: New file.
7969         * tests/test-freopen.c: New file.
7970
7971         * modules/fopen-tests: New file.
7972         * tests/test-fopen.c: New file.
7973
7974         * modules/fopen: New file.
7975         * lib/fopen.c: New file.
7976         * m4/fopen.m4: New file.
7977         * modules/freopen: New file.
7978         * lib/freopen.c: New file.
7979         * m4/freopen.m4: New file.
7980         * lib/stdio.in.h (fopen, freopen): New declarations.
7981         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
7982         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
7983         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
7984         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
7985         * doc/functions/fopen.texi: Mention the 'fopen' module.
7986         * doc/functions/freopen.texi: Mention the 'freopen' module.
7987
7988 2007-10-06  Bruno Haible  <bruno@clisp.org>
7989
7990         * modules/open-tests: New file.
7991         * tests/test-open.c: New file.
7992
7993         * modules/open: New file.
7994         * lib/open.c: New file.
7995         * m4/open.m4: New file.
7996         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
7997         lib/open.c does.
7998         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
7999         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
8000         macros.
8001         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
8002         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
8003         REPLACE_OPEN.
8004         * doc/functions/open.texi: Mention the 'open' module.
8005
8006 2007-10-04  Bruno Haible  <bruno@clisp.org>
8007
8008         * modules/ceill-tests: New file.
8009         * tests/test-ceill.c: New file.
8010
8011         * modules/ceill: New file.
8012         * lib/ceill.c: Replace entire file.
8013         * m4/ceill.m4: New file.
8014         * lib/math.in.h (ceill): Replace declaration.
8015         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
8016         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
8017         * doc/functions/ceill.texi: Mention the 'ceill' module.
8018         * modules/mathl (Files): Remove lib/ceill.c.
8019         (Depends-on): Add ceill.
8020
8021 2007-10-04  Bruno Haible  <bruno@clisp.org>
8022
8023         * modules/ceilf-tests: New file.
8024         * tests/test-ceilf.c: New file.
8025
8026         * modules/ceilf: New file.
8027         * lib/ceil.c: New file.
8028         * lib/ceilf.c: New file.
8029         * m4/ceilf.m4: New file.
8030         * lib/math.in.h (ceilf): New declaration.
8031         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
8032         HAVE_DECL_CEILF.
8033         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
8034         HAVE_DECL_CEILF.
8035         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
8036
8037 2007-10-04  Bruno Haible  <bruno@clisp.org>
8038
8039         * modules/floorl-tests: New file.
8040         * tests/test-floorl.c: New file.
8041
8042         * modules/floorl: New file.
8043         * lib/floorl.c: Replace entire file.
8044         * m4/floorl.m4: New file.
8045         * lib/math.in.h (floorl): Replace declaration.
8046         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
8047         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
8048         * doc/functions/floorl.texi: Mention the 'floorl' module.
8049         * modules/mathl (Files): Remove lib/floorl.c.
8050         (Depends-on): Add floorl.
8051
8052 2007-10-04  Bruno Haible  <bruno@clisp.org>
8053
8054         * modules/floorf-tests: New file.
8055         * tests/test-floorf.c: New file.
8056
8057         * modules/floorf: New file.
8058         * lib/floor.c: New file.
8059         * lib/floorf.c: New file.
8060         * m4/floorf.m4: New file.
8061         * lib/math.in.h (floorf): New declaration.
8062         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
8063         HAVE_DECL_FLOORF.
8064         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
8065         HAVE_DECL_FLOORF.
8066         * doc/functions/floorf.texi: Mention the 'floorf' module.
8067
8068 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
8069             Bruno Haible  <bruno@clisp.org>
8070
8071         Advertise for the Git server instead of the CVS server.
8072         * doc/gnulib-intro.texi (Steady Development): Mention the Git
8073         repository instead of the CVS one.
8074         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
8075         about all VCS systems generically.
8076         * doc/gnulib.texi (Introduction): Capitalize `Git'.
8077
8078 2007-10-04  Bruno Haible  <bruno@clisp.org>
8079
8080         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
8081         means.
8082         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
8083
8084 2007-10-04  Bruno Haible  <bruno@clisp.org>
8085
8086         * modules/truncl-tests: New file.
8087         * tests/test-truncl.c: New file.
8088
8089         * modules/truncl: New file.
8090         * lib/truncl.c: New file.
8091         * m4/truncl.m4: New file.
8092         * lib/math.in.h (truncl): New declaration.
8093         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
8094         HAVE_DECL_TRUNCL.
8095         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
8096         HAVE_DECL_TRUNCL.
8097         * doc/functions/truncl.texi: Mention the 'truncl' module.
8098
8099 2007-10-04  Bruno Haible  <bruno@clisp.org>
8100
8101         * modules/truncf-tests: New file.
8102         * tests/test-truncf.c: New file.
8103
8104         * modules/truncf: New file.
8105         * lib/trunc.c: Make paramerizable through USE_* macros.
8106         * lib/truncf.c: New file.
8107         * m4/truncf.m4: New file.
8108         * lib/math.in.h (truncf): New declaration.
8109         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
8110         HAVE_DECL_TRUNCF.
8111         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
8112         HAVE_DECL_TRUNCF.
8113         * doc/functions/truncf.texi: Mention the 'truncf' module.
8114
8115 2007-10-03  Bruno Haible  <bruno@clisp.org>
8116
8117         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
8118         augmentation also for tests modules.
8119         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
8120         * modules/atexit-tests (Makefile.am): Likewise.
8121         * modules/binary-io-tests (Makefile.am): Likewise.
8122         * modules/c-strcase-tests (Makefile.am): Likewise.
8123         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
8124         * modules/canonicalize-tests (Makefile.am): Likewise.
8125         * modules/closein-tests (Makefile.am): Likewise.
8126         * modules/fprintf-posix-tests (Makefile.am): Likewise.
8127         * modules/freadahead-tests (Makefile.am): Likewise.
8128         * modules/fseek-tests (Makefile.am): Likewise.
8129         * modules/fseeko-tests (Makefile.am): Likewise.
8130         * modules/ftell-tests (Makefile.am): Likewise.
8131         * modules/ftello-tests (Makefile.am): Likewise.
8132         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
8133         * modules/isnanl-tests (Makefile.am): Likewise.
8134         * modules/lseek-tests (Makefile.am): Likewise.
8135         * modules/mbscasecmp-tests (Makefile.am): Likewise.
8136         * modules/mbscasestr-tests (Makefile.am): Likewise.
8137         * modules/mbschr-tests (Makefile.am): Likewise.
8138         * modules/mbscspn-tests (Makefile.am): Likewise.
8139         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
8140         * modules/mbspbrk-tests (Makefile.am): Likewise.
8141         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
8142         * modules/mbsrchr-tests (Makefile.am): Likewise.
8143         * modules/mbsspn-tests (Makefile.am): Likewise.
8144         * modules/mbsstr-tests (Makefile.am): Likewise.
8145         * modules/printf-posix-tests (Makefile.am): Likewise.
8146         * modules/snprintf-posix-tests (Makefile.am): Likewise.
8147         * modules/sprintf-posix-tests (Makefile.am): Likewise.
8148         * modules/tsearch-tests (Makefile.am): Likewise.
8149         * modules/uniname/uniname-tests (Makefile.am): Likewise.
8150         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
8151         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
8152         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
8153         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
8154         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
8155         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
8156         * modules/vprintf-posix-tests (Makefile.am): Likewise.
8157         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
8158         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
8159         * modules/xstrtoimax-tests (Makefile.am): Likewise.
8160         * modules/xstrtol-tests (Makefile.am): Likewise.
8161         * modules/xstrtoumax-tests (Makefile.am): Likewise.
8162         * modules/yesno-tests (Makefile.am): Likewise.
8163
8164 2007-10-03  Bruno Haible  <bruno@clisp.org>
8165
8166         * modules/trunc-tests: New file.
8167         * tests/test-trunc.c: New file.
8168
8169         * modules/trunc: New file.
8170         * lib/trunc.c: New file.
8171         * m4/trunc.m4: New file.
8172         * lib/math.in.h (trunc): New declaration.
8173         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
8174         HAVE_DECL_TRUNC.
8175         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
8176         HAVE_DECL_TRUNC.
8177         * doc/functions/trunc.texi: Mention the 'trunc' module.
8178
8179 2007-10-03  Bruno Haible  <bruno@clisp.org>
8180
8181         * tests/test-fpending.c: New file, mostly copied
8182         from coreutils/lib/t-fpending.c.
8183         * modules/fpending-tests: New file.
8184
8185 2007-10-03  Bruno Haible  <bruno@clisp.org>
8186
8187         Port the stdio extensions to QNX (untested).
8188         * lib/fseterr.c (fseterr): Add support for QNX.
8189         * lib/fbufmode.c (fbufmode): Likewise.
8190         * lib/freadable.c (freadable): Likewise.
8191         * lib/fwritable.c (fwritable): Likewise.
8192         * lib/freading.c (freading): Likewise.
8193         * lib/fwriting.c (fwriting): Likewise.
8194         * lib/freadahead.c (freadahed): Likewise.
8195         * lib/fpurge.c (fpurge): Likewise.
8196         * lib/fseeko.c (rpl_fseeko): Likewise.
8197
8198 2007-10-03  Bruno Haible  <bruno@clisp.org>
8199             Jim Meyering  <jim@meyering.net>
8200             Eric Blake  <ebb9@byu.net>
8201
8202         * doc/relocatable.texi: Use @command instead of @program.
8203
8204 2007-10-02  Jim Meyering  <jim@meyering.net>
8205
8206         Perform one more "_.h" -> ".in.h" substitution.
8207         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
8208         instead of unistd_.h here, too.
8209
8210 2007-10-01  Bruno Haible  <bruno@clisp.org>
8211
8212         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
8213         Needed for the alloca-opt module.
8214
8215 2007-09-30  Bruno Haible  <bruno@clisp.org>
8216
8217         * lib/alloca.in.h: Renamed from lib/alloca_.h.
8218         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
8219         alloca_.h.
8220         * lib/argz.in.h: Renamed from lib/argz_.h.
8221         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
8222         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
8223         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
8224         byteswap_.h.
8225         * lib/dirent.in.h: Renamed from lib/dirent_.h.
8226         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
8227         dirent_.h.
8228         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
8229         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
8230         fcntl_.h.
8231         * lib/float.in.h: Renamed from lib/float_.h.
8232         * modules/float (Files, Makefile.am): Use float.in.h instead of
8233         float_.h.
8234         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
8235         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
8236         fnmatch_.h.
8237         * lib/getopt.in.h: Renamed from lib/getopt_.h.
8238         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
8239         getopt_.h.
8240         * lib/glob.in.h: Renamed from lib/glob_.h.
8241         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
8242         * lib/iconv.in.h: Renamed from lib/iconv_.h.
8243         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
8244         iconv_.h.
8245         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
8246         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
8247         inttypes_.h.
8248         * lib/locale.in.h: Renamed from lib/locale_.h.
8249         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
8250         locale_.h.
8251         * lib/math.in.h: Renamed from lib/math_.h.
8252         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
8253         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
8254         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
8255         of netinet_in_.h. Add dependency.
8256         * lib/poll.in.h: Renamed from lib/poll_.h.
8257         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
8258         * lib/search.in.h: Renamed from lib/search_.h.
8259         * modules/search (Files, Makefile.am): Use search.in.h instead of
8260         search_.h.
8261         * lib/signal.in.h: Renamed from lib/signal_.h.
8262         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
8263         _signal.h.
8264         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
8265         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
8266         stdbool_.h.
8267         * lib/stdint.in.h: Renamed from lib/stdint_.h.
8268         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
8269         stdint_.h.
8270         * lib/stdio.in.h: Renamed from lib/stdio_.h.
8271         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
8272         stdio_.h.
8273         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
8274         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
8275         stdlib_.h.
8276         * lib/string.in.h: Renamed from lib/string_.h.
8277         * modules/string (Files, Makefile.am): Use string.in.h instead of
8278         string_.h.
8279         * doc/gnulib-tool.texi (Initial import): Update.
8280         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
8281         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
8282         of sys_select_.h. Add dependency.
8283         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
8284         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
8285         of sys_socket_.h.
8286         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
8287         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
8288         sys_stat_.h.
8289         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
8290         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
8291         sys_time_.h.
8292         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
8293         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
8294         sysexits_.h.
8295         * lib/time.in.h: Renamed from lib/time_.h.
8296         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
8297         * lib/unistd.in.h: Renamed from lib/unistd_.h.
8298         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
8299         unistd_.h.
8300         * lib/wchar.in.h: Renamed from lib/wchar_.h.
8301         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
8302         wchar_.h.
8303         * lib/wctype.in.h: Renamed from lib/wctype_.h.
8304         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
8305         wctype_.h.
8306         * build-aux/bootstrap (slurp): Update.
8307         * lib/.cppi-disable: Update.
8308
8309 2007-09-30  Bruno Haible  <bruno@clisp.org>
8310
8311         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
8312         Needed on BeOS.
8313
8314 2007-09-30  Bruno Haible  <bruno@clisp.org>
8315
8316         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
8317
8318 2007-09-29  Bruno Haible  <bruno@clisp.org>
8319
8320         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
8321
8322 2007-09-29  Bruno Haible  <bruno@clisp.org>
8323
8324         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
8325         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
8326         * build-aux/install-reloc: Compile also areadlink.c.
8327         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
8328
8329 2007-09-29  Bruno Haible  <bruno@clisp.org>
8330
8331         * gnulib-tool (func_emit_initmacro_done): Indentation.
8332
8333 2007-09-29  Bruno Haible  <bruno@clisp.org>
8334
8335         * README: Add CVS checkout update instructions.
8336         Info from Bob Proulx <bob@proulx.com>.
8337
8338 2007-09-28  Eric Blake  <ebb9@byu.net>
8339
8340         Provide move-if-change.
8341         * build-aux/move-if-change: New file, based on best practice
8342         rather than any canonical upstream location.
8343
8344 2007-09-28  Jim Meyering  <jim@meyering.net>
8345
8346         Fix canonicalize loop-detection corner case.
8347         Do not attempt to stat the symlink values stored via seen_triple.
8348         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
8349         on linux-2.6.18, (but not 2.6.22).
8350         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
8351         triple_compare.  The former compares dev,ino,filename, while the latter
8352         would actually stat dirname(filename) when dev and ino were equal.
8353         * lib/hash-triple.c: Install <string.h>.
8354         (STREQ): Define.
8355         (triple_compare_ino_str): New function.
8356         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
8357
8358 2007-09-28  Eric Blake  <ebb9@byu.net>
8359
8360         Enforce that AC_REPLACE_FUNCS files exist.
8361         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
8362         override check for typos.
8363
8364         Fix test-closein on Solaris 10.
8365         * tests/test-closein.c (main): Don't assume stdin can be inherited
8366         closed on all systems.
8367         * tests/test-closein.sh: Likewise.
8368         Reported by Piotr Tarnowski.
8369
8370 2007-09-28  Jim Meyering  <jim@meyering.net>
8371
8372         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
8373
8374 2007-09-27  Jim Meyering  <jim@meyering.net>
8375
8376         canonicalize: Avoid a false-positive cycle failure.
8377         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
8378         Sort.  Remove cycle-check.
8379         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
8380         not cycle-check.h.
8381         (seen_triple): New function.
8382         (canonicalize_filename_mode): Use it instead of cycle-check.
8383         * tests/test-canonicalize.c: Add a test for this bug.
8384         * tests/test-canonicalize.sh: Set up and run the test.
8385
8386         New module, file-set, from coreutils.
8387         * modules/file-set: Define it.
8388         * lib/file-set.c, lib/file-set.h: Implement.
8389
8390         New module, hash-triple, from coreutils.
8391         * modules/hash-triple: Define it.
8392         * lib/hash-triple.c, lib/hash-triple.h: Implement.
8393
8394 2007-09-25  Eric Blake  <ebb9@byu.net>
8395
8396         Fix strerror on Interix.
8397         * lib/string_.h (strerror): Declare replacement.
8398         * doc/functions/strerror.texi (strerror): Document the Interix
8399         shortcoming.
8400         * modules/string (Makefile.am): Support new hooks.
8401         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
8402         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
8403         gl_FUNC_STRERROR_SEPARATE.
8404         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
8405         * lib/strerror.c (rpl_strerror): Provide replacement.
8406         * modules/strerror (Depends-on): Add string.
8407         (configure.ac): Detect use of module.
8408         * tests/test-strerror.c: New file.
8409         * modules/strerror-tests: New test module.
8410         * modules/argp (Depends-on): Add strerror.
8411         * modules/error (Depends-on): Likewise.
8412         Reported by Martin Koeppe.
8413
8414 2007-09-24  Bruno Haible  <bruno@clisp.org>
8415
8416         * README: Update git instructions.
8417
8418 2007-09-24  Eric Blake  <ebb9@byu.net>
8419
8420         Revert fpending breakage from 2007-09-08.
8421         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
8422         __fpending.c.
8423
8424 2007-09-24  Jim Meyering  <jim@meyering.net>
8425
8426         filenamecat.c: Add a test.
8427         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
8428         showing how the function works when DIR is the empty string.
8429
8430 2007-09-21  Simon Josefsson  <simon@josefsson.org>
8431
8432         * tests/test-canonicalize.sh: Turn on executable bit.
8433
8434 2007-09-19  Eric Blake  <ebb9@byu.net>
8435
8436         * README: Update CVS instructions.
8437
8438 2007-09-18  Bruno Haible  <bruno@clisp.org>
8439
8440         * modules/areadlink: New file.
8441         * lib/areadlink.h (areadlink): New declaration.
8442         * lib/areadlink.c: New file, based on lib/xreadlink.c.
8443
8444 2007-09-17  Jim Meyering  <jim@meyering.net>
8445
8446         * lib/savewd.c (ESTALE) [!defined]: Define.
8447         Reported to be required on Interix by Martin Koeppe.
8448
8449 2007-09-17  Bruno Haible  <bruno@clisp.org>
8450
8451         * gnulib-tool (func_version): Use $version.
8452
8453 2007-09-16  Bruno Haible  <bruno@clisp.org>
8454
8455         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
8456         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
8457         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
8458         Reported by Greg Schafer <gschafer@zip.com.au>.
8459
8460 2007-09-15  Bruno Haible  <bruno@clisp.org>
8461
8462         * gnulib-tool (sed): Try a little harder to make bash understand the
8463         alias.
8464         Reported by Bruce Korb <bruce.korb@gmail.com>.
8465
8466 2007-09-13  Eric Blake  <ebb9@byu.net>
8467
8468         * ChangeLog: Remove conflict markers.
8469
8470 2007-09-13  Simon Josefsson  <simon@josefsson.org>
8471
8472         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
8473         Reported by Bruno Haible <bruno@clisp.org>.
8474
8475 2007-09-12  Bruno Haible  <bruno@clisp.org>
8476
8477         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
8478         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
8479         is not defined.
8480
8481 2007-09-12  Eric Blake  <ebb9@byu.net>
8482
8483         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
8484         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
8485         Autoconf definition.
8486         * modules/euidaccess (Depends-on): Add extensions, for
8487         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
8488         * modules/fnmatch (Depends-on): Likewise.
8489         * modules/getaddrinfo (Depends-on): Likewise.
8490         * modules/getdelim (Depends-on): Likewise.
8491         * modules/getline (Depends-on): Likewise.
8492         * modules/getsubopt (Depends-on): Likewise.
8493         * modules/gettext (Depends-on): Likewise.
8494         * modules/group-member (Depends-on): Likewise.
8495         * modules/mbchar (Depends-on): Likewise.
8496         * modules/memmem (Depends-on): Likewise.
8497         * modules/mempcpy (Depends-on): Likewise.
8498         * modules/memrchr (Depends-on): Likewise.
8499         * modules/pagealign_alloc (Depends-on): Likewise.
8500         * modules/readutmp (Depends-on): Likewise.
8501         * modules/stpcpy (Depends-on): Likewise.
8502         * modules/stpncpy (Depends-on): Likewise.
8503         * modules/strchrnul (Depends-on): Likewise.
8504         * modules/strndup (Depends-on): Likewise.
8505         * modules/strsep (Depends-on): Likewise.
8506         * modules/strverscmp (Depends-on): Likewise.
8507         * modules/vasprintf (Depends-on): Likewise.
8508         * modules/wcwidth (Depends-on): Likewise.
8509         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
8510         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
8511         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
8512         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
8513         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
8514         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
8515         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
8516         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
8517         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
8518         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
8519         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
8520         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
8521         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
8522         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
8523         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
8524         * m4/readutmp.m4 (gl_READUTMP): Likewise.
8525         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
8526         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
8527         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
8528         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
8529         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
8530         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
8531         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
8532         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
8533         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
8534         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
8535         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
8536         so that lock.m4 can be used in gettext without extensions module.
8537
8538 2007-09-11  Bruno Haible  <bruno@clisp.org>
8539
8540         * m4/isc-posix.m4: Remove file.
8541         Suggested by Eric Blake.
8542
8543 2007-09-11  Eric Blake  <ebb9@byu.net>
8544
8545         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
8546
8547 2007-09-10  Bruno Haible  <bruno@clisp.org>
8548
8549         * posix-modules: Fix typo in error message.
8550         Reported by Matt <mkraai@beckman.com>.
8551
8552 2007-09-09  Bruno Haible  <bruno@clisp.org>
8553
8554         * doc/functions/getdelim.texi: Update list of platforms lacking the
8555         function.
8556         * doc/functions/getline.texi: Likewise.
8557
8558 2007-09-09  Jim Meyering  <jim@meyering.net>
8559
8560         * lib/hash.c (hash_initialize): Detect calloc failure.
8561         Reported by Bruno Haible.
8562
8563 2007-09-09  Bruno Haible  <bruno@clisp.org>
8564
8565         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
8566         malloc or realloc fails.
8567
8568 2007-09-09  Bruno Haible  <bruno@clisp.org>
8569
8570         * modules/getcwd (Depends-on): Add malloc-posix.
8571         * modules/glob (Depends-on): Likewise.
8572         * modules/putenv (Depends-on): Likewise.
8573         * modules/strdup (Depends-on): Likewise.
8574         * modules/getdelim (Depends-on): Add realloc-posix.
8575         * modules/read-file (Depends-on): Likewise.
8576
8577 2007-09-09  Bruno Haible  <bruno@clisp.org>
8578
8579         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
8580         (gl_FUNC_MALLOC_POSIX): Require it.
8581         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
8582         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
8583         * modules/realloc (Files): Add m4/malloc.m4.
8584         * modules/calloc (Files): Likewise.
8585
8586 2007-09-09  Bruno Haible  <bruno@clisp.org>
8587
8588         * modules/malloc-posix: New file.
8589         * modules/malloc (Depends-on): Add malloc-posix.
8590         * lib/malloc.c: Include errno.h.
8591         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
8592         and a POSIX-compatible malloc into a single function. Set ENOMEM
8593         when returning NULL.
8594         * m4/malloc.m4: New file.
8595         * doc/functions/malloc.texi: Mention the malloc-posix module.
8596         * lib/stdlib_.h (malloc): New declaration.
8597         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
8598         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
8599         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
8600         and HAVE_MALLOC_POSIX.
8601
8602 2007-09-09  Bruno Haible  <bruno@clisp.org>
8603
8604         * modules/realloc-posix: New file.
8605         * modules/realloc (Depends-on): Add realloc-posix.
8606         * lib/realloc.c: Include errno.h.
8607         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
8608         and a POSIX-compatible realloc into a single function. Set ENOMEM
8609         when returning NULL.
8610         * m4/realloc.m4: New file.
8611         * doc/functions/realloc.texi: Mention the realloc-posix module.
8612         * lib/stdlib_.h (realloc): New declaration.
8613         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
8614         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
8615         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
8616         and HAVE_REALLOC_POSIX.
8617
8618 2007-09-09  Bruno Haible  <bruno@clisp.org>
8619
8620         * modules/calloc-posix: New file.
8621         * modules/calloc (Depends-on): Add calloc-posix.
8622         * lib/calloc.c: Include errno.h.
8623         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
8624         and a POSIX-compatible calloc into a single function. Set ENOMEM
8625         when returning NULL.
8626         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
8627         * doc/functions/calloc.texi: Mention the calloc-posix module.
8628         * lib/stdlib_.h (calloc): New declaration.
8629         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
8630         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
8631         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
8632         and HAVE_CALLOC_POSIX.
8633
8634 2007-09-09  Bruno Haible  <bruno@clisp.org>
8635
8636         Allow for modules to show an arbitrary notice.
8637         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
8638         * gnulib-tool: New option --extract-notice.
8639         (func_usage): Document it.
8640         (sed_extract_prog): Update.
8641         (func_get_notice): New function.
8642         (func_modules_notice): New function.
8643         (func_import, func_create_testdir): Invoke it.
8644         Suggested by Jim Meyering.
8645
8646 2007-09-09  Bruno Haible  <bruno@clisp.org>
8647
8648         * gnulib-tool: New options --verbose, --quiet.
8649         (func_usage): Document them.
8650         (verbose): New variable.
8651         (func_execute_command): New function.
8652         (func_import): Don't show the module list and the file list if
8653         $verbose < 0.
8654         (func_create_testdir): Likewise. Use func_execute_command.
8655         (func_create_megatestdir): Use func_execute_command.
8656
8657 2007-09-08  Bruno Haible  <bruno@clisp.org>
8658
8659         * gnulib-tool (func_import): Prefer rsync over wget when available,
8660         for fetching the PO files.
8661
8662 2007-09-08  Bruno Haible  <bruno@clisp.org>
8663
8664         * posix-modules: New file. Portions copied from gnulib-tool.
8665         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
8666
8667 2007-09-08  Jim Meyering  <jim@meyering.net>
8668
8669         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
8670         * lib/fpending.h: Rename from __fpending.h.
8671         * lib/fpending.c: Rename from __fpending.c.
8672         Include "fpending.h", not "__fpending.h".
8673         * lib/__fpending.h, lib/__fpending.c: Remove files.
8674         * modules/fpending (Files): Reflect new file names.
8675         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
8676
8677 2007-09-08  Bruno Haible  <bruno@clisp.org>
8678
8679         * m4/inttypes-h.m4: Remove stub file.
8680
8681 2007-09-07  Simon Josefsson  <simon@josefsson.org>
8682
8683         * doc/headers/stdint.texi: Discuss #include_next issue.
8684
8685 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
8686
8687         * build-aux/bootstrap: Remove obsolete comment about wget --help.
8688
8689 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8690
8691         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
8692         in variable name.
8693
8694 2007-09-03  Jim Meyering  <jim@meyering.net>
8695
8696         New module: git-version-gen.
8697         * modules/git-version-gen: New file.
8698
8699         Import changes from coreutils for bootstrap script.
8700
8701         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
8702
8703         bootstrap: uses rsync to download the .po files
8704         * build-aux/bootstrap (po_download_command_format): New global.
8705         (download_po_files): Use rsync.
8706         (update_po_files): Don't remove .po files after download,
8707         so future rsync runs can take advantage of the copies.
8708
8709         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
8710
8711         Solve the unnecessary-.po-file-regeneration problem once and for all.
8712         * build-aux/bootstrap (download_po_files): New function, renamed from
8713         get_translations.  Now, downloads, but doesn't update LINGUAS.
8714         (update_po_files): New function.
8715
8716         bootstrap: Ignore more.
8717         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
8718         uniwidth to e.g., lib/.gitignore.
8719         (slurp): Handle the sys_stat_.h -> sys mapping, too.
8720
8721         * build-aux/bootstrap: New setting: vc_ignore.
8722         (insert_sorted_if_absent): Create $file if absent.
8723         Adapt to new, possibly empty, list: $vc_ignore.
8724
8725         bootstrap: generate more ignorable names
8726         * build-aux/bootstrap (slurp): When generating ignorable names,
8727         also map .sin to .sed, .gperf to .c, and .y to .c.
8728
8729 2007-09-03  Jim Meyering  <jim@meyering.net>
8730
8731         * build-aux/git-version-gen: New file, from coreutils.  For details, see
8732         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
8733
8734 2007-09-02  Bruno Haible  <bruno@clisp.org>
8735
8736         Fix mis-recognition of 'mcs' on QNX 6.
8737         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
8738         output contains the string "Mono".
8739         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
8740         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
8741
8742 2007-09-01  Bruno Haible  <bruno@clisp.org>
8743
8744         Fix collision between uniwidth/* and linebreak modules.
8745         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
8746         u32_width): Remove declarations.
8747         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
8748         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
8749         streq3, streq2, streq1, streq0): Remove functions.
8750         (STREQ): Remove macro.
8751         (is_cjk_encoding): Remove function.
8752         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
8753         (uc_width, u8_width, u16_width, u32_width): Remove functions.
8754         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
8755         * NEWS: Document the change.
8756
8757 2007-09-01  Bruno Haible  <bruno@clisp.org>
8758
8759         * lib/streq.h: Add double-inclusion guard.
8760
8761 2007-09-01  Karl Berry  <karl@gnu.org>
8762
8763         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
8764
8765 2007-08-28  Jim Meyering  <jim@meyering.net>
8766
8767         Rename mreadlink_with_size to areadlink_with_size.
8768         * NEWS: Document the change.
8769         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
8770         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
8771         * lib/mreadlink.h: Rename this to...
8772         * lib/areadlink.h: ...this.
8773         * modules/mreadlink-with-size: Rename this to...
8774         * modules/areadlink-with-size: ...this.
8775         * lib/canonicalize.c: Reflect the renaming.
8776         * modules/canonicalize: Likewise.
8777
8778 2007-08-26  Bruno Haible  <bruno@clisp.org>
8779
8780         * gnulib-tool (func_import): When deciding which files to remove,
8781         consider also dangling symbolic links.
8782         Reported by Eric Blake.
8783
8784 2007-08-26  Bruno Haible  <bruno@clisp.org>
8785
8786         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
8787
8788 2007-08-23  Simon Josefsson  <simon@josefsson.org>
8789
8790         * lib/readline.c: Don't include getline.h, the prototype is now
8791         found in stdio.h.
8792
8793 2007-08-23  Jim Meyering  <jim@meyering.net>
8794
8795         Getdelim touchup.
8796         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
8797         around the funlockfile call, since funlockfile never sets errno.
8798         Don't set errno upon failed realloc.
8799
8800 2007-08-22  Eric Blake  <ebb9@byu.net>
8801
8802         Getline touchups.
8803         * lib/getdelim.c (getdelim): Revert regression that required *n to
8804         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
8805         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
8806         getdelim, rather than whether implementation is missing.
8807         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
8808         * lib/stdio_.h (getline): Also declare if replacement is
8809         required.
8810         * doc/functions/getdelim.texi: New file.
8811         * doc/functions/getline.texi: Likewise.
8812         * doc/gnulib.texi (Function Substitutes): Add new files.
8813         Reported by Bruno Haible.
8814
8815 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
8816
8817         * users.txt: Add Guile.
8818
8819 2007-08-22  Eric Blake  <ebb9@byu.net>
8820
8821         * tests/test-getdelim.c (main): Use remove, not unlink.
8822         * tests/test-getline.c (main): Likewise.
8823
8824         Move getline and getdelim into stdio.h, per POSIX 200x.
8825         * modules/getline (Files): Remove getline.h.
8826         (Depends-on): Add stdio.
8827         (configure.ac): Add module indicator.
8828         * modules/getdelim (Files): Remove getdelim.h.
8829         (Depends-on): Add stdio.
8830         (configure.ac): Add module indicator.
8831         * modules/stdio (Makefile.am): Work with new indicators.
8832         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
8833         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
8834         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
8835         * lib/getdelim.h: Delete.
8836         * lib/getline.h: Delete.
8837         * lib/stdio_.h (getdelim, getline): Declare.
8838         * modules/getdelim-tests: New module.
8839         * modules/getline-tests: Likewise.
8840         * tests/test-getdelim.c: New file.
8841         * tests/test-getline.c: Likewise.
8842         * NEWS: Document the change.
8843         * lib/getline.c: Update choice of header.
8844         * lib/csharpcomp.c: Likewise.
8845         * lib/getpass.c: Likewise.
8846         * lib/javacomp.c: Likewise.
8847         * lib/javaversion.c: Likewise.
8848         * lib/yesno.c: Likewise.
8849         * lib/getdelim.c: Likewise.
8850         (getdelim): Set errno on failure, and avoid memory leak.
8851
8852 2007-08-19  Bruno Haible  <bruno@clisp.org>
8853
8854         * modules/closein (Depends-on): Add freadahead.
8855         * lib/closein.c: Include freadahead.h.
8856         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
8857         is zero.
8858
8859 2007-08-19  Bruno Haible  <bruno@clisp.org>
8860
8861         * modules/freadahead-tests: New file.
8862         * tests/test-freadahead.sh: New file.
8863         * tests/test-freadahead.c: New file.
8864
8865         * modules/freadahead: New file.
8866         * lib/freadahead.h: New file.
8867         * lib/freadahead.c: New file.
8868         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
8869         fbufmode, fpurge, freadable, fwritable.
8870
8871 2007-08-19  Eric Blake  <ebb9@byu.net>
8872
8873         Test yesno in combination with closein.
8874         * lib/yesno.c (yesno): Document use of stdin.
8875         * modules/yesno-tests (Files): New module.
8876         * tests/test-yesno.c (main): New file.
8877         * tests/test-yesno.sh: Likewise.
8878
8879 2007-08-19  Bruno Haible  <bruno@clisp.org>
8880
8881         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
8882         * lib/fseeko.c (rpl_fseeko): Likewise.
8883         * lib/fseterr.c (fseterr): Likewise.
8884
8885 2007-08-19  Bruno Haible  <bruno@clisp.org>
8886
8887         * tests/test-lseek.c (main): Disable a test for BeOS.
8888         * doc/functions/lseek.texi: Document the BeOS bug.
8889
8890 2007-08-19  Bruno Haible  <bruno@clisp.org>
8891             Eric Blake  <ebb9@byu.net>
8892
8893         * lib/lseek.c: Include <sys/stat.h>.
8894         (rpl_lseek): Add workaround code also for Unix platforms.
8895         Needed for BeOS.
8896         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
8897         * doc/functions/lseek.texi: Document BeOS definiency.
8898
8899 2007-08-18  Bruno Haible  <bruno@clisp.org>
8900
8901         * modules/fstrcmp-tests: New file.
8902         * tests/test-fstrcmp.c: New file.
8903
8904 2007-08-18  Bruno Haible  <bruno@clisp.org>
8905
8906         * modules/fstrcmp: New file, from GNU gettext with modifications.
8907         * lib/fstrcmp.h: New file, from GNU gettext.
8908         * lib/fstrcmp.c: New file, from GNU gettext.
8909         * MODULES.html.sh (String handling): Add fstrcmp.
8910
8911 2007-08-18  Bruno Haible  <bruno@clisp.org>
8912
8913         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
8914         'bool'.
8915         (diag, compareseq): Remove const from the ctxt argument.
8916         (USE_HEURISTIC): Undefine at the end.
8917
8918 2007-08-18  Jim Meyering  <jim@meyering.net>
8919
8920         New file: lib/idcache.h
8921         * NEWS: Mention the addition.
8922         * modules/idcache (Files): Add lib/idcache.h
8923         * lib/idcache.c: Include "idcache.h".
8924         Don't include <sys/types.h>.
8925         Add a FIXME comment.
8926         Move file-scoped "static" declarations to the top.
8927         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
8928
8929 2007-08-17  Bruno Haible  <bruno@clisp.org>
8930         and Paul Eggert  <eggert@cs.ucla.edu>
8931
8932         * MODULES.html.sh: Add diffseq.
8933         * modules/diffseq: New file.
8934         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
8935         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
8936
8937 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8938
8939         Import changes from coreutils for bootstrap script.
8940
8941         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
8942
8943         * build-aux/bootstrap (slurp): Work even in environments where
8944         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
8945         current code does not slurp files whose names start with ".", and
8946         this looks like it might be a troublesome area.
8947
8948         2007-07-11  Jim Meyering  <jim@meyering.net>
8949
8950         If there's a GPL vN copyright comment, require that N == 3.
8951
8952         2007-07-08  Jim Meyering  <jim@meyering.net>
8953
8954         Run the coreutils-specific code only if tests/Makefile.am.in exists.
8955         * build-aux/bootstrap (mam_template): Move definition out of loop.
8956
8957         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
8958
8959         * build-aux/bootstrap (symlink_to_dir): Rename function from
8960         symlink_to_gnulib.  Add a directory parameter.  Update all
8961         callers.
8962         (cp_mark_as_generated): Also check for -- and link to -- files in
8963         gl/.
8964
8965         2007-07-08  Jim Meyering  <jim@meyering.net>
8966
8967         Adapt to deeper hierarchy in gnulib.
8968         * build-aux/bootstrap (symlink_to_dir): If the destination
8969         directory doesn't exist, create it. This is required at least for
8970         "lib/uniwidth/cjk.h".
8971
8972         2007-05-15  Jim Meyering  <jim@meyering.net>
8973
8974         * build-aux/bootstrap: Now that generated Makefile.am files
8975         are no longer under version control, they must be created at
8976         bootstrap time.
8977
8978 2007-08-14  Ben Pfaff  <blp@gnu.org>
8979
8980         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
8981
8982 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
8983
8984         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
8985         given the changes below.
8986         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
8987         even on hosts that have padding bits beyond the supported 64.
8988
8989 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
8990
8991         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
8992         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
8993         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
8994         depends on it.
8995         (xstrtol_error): Remove.
8996         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
8997         but with a different signature.
8998         (ATTRIBUTE_NORETURN, __attribute__): New macros.
8999         * lib/xstrtol-error.c: Include exitfail.h.
9000         (xstrtol_fatal): New function, with a different signature from the
9001         old xstrtol_error, so that the caller need not worry about passing
9002         in an exit status, or about storage management of the option argument.
9003         (xstrtol_error): Now a static function.  Redo signature to
9004         implement xstrtol_fatal.  Output the correct number of hyphens in
9005         front of the option so that the caller need not worry about
9006         storage management.
9007         (N_): New macro.
9008         (_): Remove; not used now.
9009         * modules/xstrtol: Depend on getopt.
9010         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
9011         of old STRTOL_FATAL_ERROR macro.
9012         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
9013         of test program.
9014         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
9015         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
9016
9017 2007-08-08  Eric Blake  <ebb9@byu.net>
9018
9019         * lib/xstrtol-error.c: Add missing include.
9020
9021         Move xstrtol messages into gnulib domain, when --pobase is used.
9022         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
9023         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
9024         * modules/xstrtol (Files): Distribute new file.
9025         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
9026         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
9027         * tests/test-xstrtol.c: ...into new file.
9028         * tests/test-xstrtoul.c: Also test xstrtoul.
9029         * tests/test-xstrtoimax.c: Also test xstrtoimax.
9030         * tests/test-xstrtoumax.c: Also test xstrtoumax.
9031         * tests/test-xstrtol.sh: Drive the tests.
9032         * tests/test-xstrtoimax.sh: Likewise.
9033         * tests/test-xstrtoumax.sh: Likewise.
9034         * modules/xstrtol-tests: New module.
9035         * modules/xstrtoimax-tests: Likewise.
9036         * modules/xstrtoumax-tests: Likewise.
9037
9038 2007-08-08  Jim Meyering  <jim@meyering.net>
9039
9040         New function: mfile_name_concat.
9041         * lib/filenamecat.c (mfile_name_concat): New function, just like
9042         file_name_concat, but return NULL upon failure rather than exiting
9043         with a diagnostic.
9044         * lib/filenamecat.h: Declare it.
9045
9046 2007-08-07  Bruno Haible  <bruno@clisp.org>
9047
9048         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
9049         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
9050         warning from gcc.
9051         Reported by Eric Blake.
9052
9053 2007-08-07  Simon Josefsson  <simon@josefsson.org>
9054
9055         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
9056         * modules/crypto/arcfour (License): Likewise.
9057         * modules/crypto/des-tests (License): Likewise.
9058         * modules/crypto/gc-arctwo-tests (License): Likewise.
9059         * modules/crypto/gc-des-tests (License): Likewise.
9060         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
9061         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
9062         * modules/crypto/gc-md2-tests (License): Likewise.
9063         * modules/crypto/gc-md4-tests (License): Likewise.
9064         * modules/crypto/gc-md5-tests (License): Likewise.
9065         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
9066         * modules/crypto/gc-rijndael-tests (License): Likewise.
9067         * modules/crypto/gc-sha1-tests (License): Likewise.
9068         * modules/crypto/gc-tests (License): Likewise.
9069         * modules/crypto/hmac-md5 (License): Likewise.
9070         * modules/crypto/hmac-sha1 (License): Likewise.
9071         * modules/crypto/md2-tests (License): Likewise.
9072         * modules/crypto/md4-tests (License): Likewise.
9073         * modules/crypto/md5 (License): Likewise.
9074         * modules/crypto/rijndael (License): Likewise.
9075         * modules/crypto/sha1 (License): Likewise.
9076         * modules/memxor (License): Likewise.
9077
9078 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
9079         and Bruno Haible  <bruno@clisp.org>
9080
9081         * NEWS: Describe interface changes to human, xstrtol.
9082         * lib/human.h: Include <xstrtol.h>.
9083         (human_options): Return enum strtol_error, not int.  Remove
9084         bool arg; take int * instead.
9085         * lib/human.c: Don't include "gettext.h".
9086         (_): Remove; no longer used.
9087         Don't include <xstrtol.h>, since human.h does it.
9088         (human_options): Adjust to abovementioned interface changes.
9089         Do not report error to stderr; that's now the caller's
9090         responsibility.
9091         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
9092         interface change.
9093         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
9094         Str, Argument_type_string.  All uses changed.  Put " argument"
9095         in diagnostics to make them clearer.  Change wording of suffix
9096         message for clarity.
9097         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
9098         Argument_type_string.
9099         (STRTOL_FATAL_WARN): Remove; no longer used.
9100         * modules/human (Depends-on): Remove gettext-h.
9101
9102 2007-08-06  Simon Josefsson  <simon@josefsson.org>
9103
9104         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
9105
9106 2007-07-31  Bruno Haible  <bruno@clisp.org>
9107
9108         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
9109         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
9110         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
9111
9112 2007-07-31  Bruno Haible  <bruno@clisp.org>
9113
9114         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
9115         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
9116
9117 2007-07-30  Bruno Haible  <bruno@clisp.org>
9118
9119         * modules/base64 (License): Use the synonymous term "LGPLv2+".
9120         * modules/c-ctype (License): Likewise.
9121         * modules/c-strcase (License): Likewise.
9122         * modules/check-version (License): Likewise.
9123         * modules/iconv (License): Likewise.
9124         * modules/iconv_open (License): Likewise.
9125         * modules/read-file (License): Likewise.
9126         * modules/striconv (License): Likewise.
9127         * modules/strverscmp (License): Likewise.
9128         * modules/vasprintf (License): Likewise.
9129         * modules/crypto/des (License): Likewise.
9130         * modules/crypto/gc (License): Likewise.
9131         * modules/crypto/gc-arcfour (License): Likewise.
9132         * modules/crypto/gc-arctwo (License): Likewise.
9133         * modules/crypto/gc-des (License): Likewise.
9134         * modules/crypto/gc-hmac-md5 (License): Likewise.
9135         * modules/crypto/gc-hmac-sha1 (License): Likewise.
9136         * modules/crypto/gc-md2 (License): Likewise.
9137         * modules/crypto/gc-md4 (License): Likewise.
9138         * modules/crypto/gc-md5 (License): Likewise.
9139         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
9140         * modules/crypto/gc-random (License): Likewise.
9141         * modules/crypto/gc-rijndael (License): Likewise.
9142         * modules/crypto/gc-sha1 (License): Likewise.
9143         * modules/crypto/md2 (License): Likewise.
9144         * modules/crypto/md4 (License): Likewise.
9145
9146 2007-07-30  Jim Meyering  <jim@meyering.net>
9147
9148         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
9149         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
9150         it has valid stat data.  This bug would cause du not to count the
9151         sizes of inaccessible directories.
9152         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
9153         in <http://bugzilla.redhat.com/250077>.
9154
9155 2007-07-25  Peter O'Gorman  <peter@pogma.com>
9156             Bruno Haible  <bruno@clisp.org>
9157
9158         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
9159         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
9160         #include_next, gives a diagnostic about it, but reports no error in
9161         the exit code.
9162         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
9163
9164 2007-07-24  Ben Pfaff  <blp@gnu.org>
9165
9166         Improve name: "count-one-bits" is better than "popcount".
9167         * MODULES.html.sh: Update name.
9168         * lib/popcount.h: Renamed lib/count-one-bits.h.
9169         (popcount): Renamed count_one_bits.
9170         (popcountl): Renamed count_one_bits_l.
9171         (popcountll): Renamed count_one_bits_ll.
9172         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
9173         * modules/popcount: Renamed module/count-one-bits.
9174         * modules/popcount-tests: Renamed module/count-one-bits-tests.
9175         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
9176
9177 2007-07-23  Ben Pfaff  <blp@gnu.org>
9178
9179         * lib/popcount.h (popcount32): Reduce size of constants, to allow
9180         better code generation, and add U to large constants to avoid
9181         warnings, in non-GCC case.
9182         Suggested by Bruno Haible.
9183
9184 2007-07-23  Ben Pfaff  <blp@gnu.org>
9185
9186         * lib/popcount.h: Use verify_true instead of if...abort.
9187         * modules/popcount: Depend on verify module.
9188         Suggested by Jim Meyering.
9189
9190 2007-07-23  Bruno Haible  <bruno@clisp.org>
9191
9192         * gnulib-tool (func_import): Create a .cvsignore file also when the
9193         directory is not yet in CVS but the toplevel directory is. When
9194         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
9195         Reported by Karl Berry.
9196
9197 2007-07-22  Ben Pfaff  <blp@gnu.org>
9198
9199         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
9200         case.
9201         Suggested by Eric Blake.
9202
9203 2007-07-22  Ben Pfaff  <blp@gnu.org>
9204
9205         New module: popcount.
9206         * MODULES.html.sh: Add popcount.
9207         * modules/popcount: New file.
9208         * modules/popcount-tests: New file.
9209         * tests/test-popcount.c: New file.
9210         * lib/popcount.h: New file.
9211         * m4/popcount.m4: New file.
9212
9213 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
9214
9215         * build-aux/announce-gen: Update to GPLv3.
9216
9217         * build-aux/config.guess: Update from config.
9218
9219 2007-07-21  Bruno Haible  <bruno@clisp.org>
9220
9221         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
9222         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
9223
9224 2007-07-20  Jim Meyering  <jim@meyering.net>
9225
9226         * check-module: Diagnose a self-dependency.
9227
9228 2007-07-19  Bruno Haible  <bruno@clisp.org>
9229
9230         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
9231         empty.
9232         Reported by Eric Blake.
9233
9234 2007-07-18  Bruno Haible  <bruno@clisp.org>
9235
9236         * gnulib-tool: New options --po-base, --po-domain.
9237         (func_usage): Document them.
9238         (pobase, po_domain): New variables.
9239         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
9240         DEFAULT_TEXT_DOMAIN.
9241         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
9242         (func_import): Consider pobase and po_domain. Create a po/ directory.
9243         (func_create_testdir): Set pobase and po_domain to empty.
9244         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
9245         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
9246
9247 2007-07-18  Bruno Haible  <bruno@clisp.org>
9248
9249         * gnulib-tool (func_get_automake_snippet): Synthesize also an
9250         EXTRA_DIST augmentation for files in build-aux/.
9251
9252 2007-07-16  Bruno Haible  <bruno@clisp.org>
9253
9254         * modules/lseek (License): Use the synonymous term "LGPLv2+".
9255         * modules/getdelim (License): Likewise.
9256
9257 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9258
9259         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
9260         * modules/d-type (License): Likewise.
9261         * modules/extensions (License): Likewise.
9262         * modules/fnmatch (License): Likewise.
9263         * modules/fseeko (License): Likewise.
9264         * modules/getaddrinfo (License): Likewise.
9265         * modules/getline (License): Likewise.
9266         * modules/getlogin_r (License): Likewise.
9267         * modules/getpass (License): Likewise.
9268         * modules/gettimeofday (License): Likewise.
9269         * modules/glob (License): Likewise.
9270         * modules/inet_ntop (License): Likewise.
9271         * modules/malloc (License): Likewise.
9272         * modules/malloca (License): Likewise.
9273         * modules/memmem (License): Likewise.
9274         * modules/mempcpy (License): Likewise.
9275         * modules/memset (License): Likewise.
9276         * modules/minmax (License): Likewise.
9277         * modules/mktime (License): Likewise.
9278         * modules/netinet_in (License): Likewise.
9279         * modules/pathmax (License): Likewise.
9280         * modules/poll (License): Likewise.
9281         * modules/regex (License): Likewise.
9282         * modules/snprintf (License): Likewise.
9283         * modules/stdbool (License): Likewise.
9284         * modules/stdint (License): Likewise.
9285         * modules/stdio (License): Likewise.
9286         * modules/strcase (License): Likewise.
9287         * modules/strcasestr (License): Likewise.
9288         * modules/strdup (License): Likewise.
9289         * modules/string (License): Likewise.
9290         * modules/strndup (License): Likewise.
9291         * modules/strnlen (License): Likewise.
9292         * modules/strpbrk (License): Likewise.
9293         * modules/strptime (License): Likewise.
9294         * modules/strsep (License): Likewise.
9295         * modules/sys_select (License): Likewise.
9296         * modules/sys_socket (License): Likewise.
9297         * modules/sys_stat (License): Likewise.
9298         * modules/sys_time (License): Likewise.
9299         * modules/time (License): Likewise.
9300         * modules/time_r (License): Likewise.
9301         * modules/timegm (License): Likewise.
9302         * modules/unistd (License): Likewise.
9303         * modules/vsnprintf (License): Likewise.
9304         * modules/wctype (License): Likewise.
9305
9306 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9307
9308         * modules/argz (License): LGPLv2+.
9309
9310 2007-07-15  Karl Berry  <karl@gnu.org>
9311
9312         * doc/gnulib.texi: revise node structure per new fdl.texi.
9313
9314 2007-07-14  Bruno Haible  <bruno@clisp.org>
9315
9316         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
9317         the output file.
9318         * lib/uniname/uninames.h: Regenerated.
9319
9320 2007-07-14  Karl Berry  <karl@gnu.org>
9321
9322         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
9323         omitting sectioning and index commands.
9324
9325 2007-07-13  Bruno Haible  <bruno@clisp.org>
9326
9327         New gnulib-tool option --more-symlinks.
9328         * gnulib-tool (func_usage): Document --more-symlinks.
9329         (do_copyrights): New variable.
9330         Recognize option --more-symlinks.
9331         (func_import): Don't add a copyright notice transform to
9332         sed_transform_lib_file if do_copyrights is empty.
9333
9334 2007-07-13  Bruno Haible  <bruno@clisp.org>
9335
9336         * lib/vasnprintf.c (decimal_point_char): Define also if
9337         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
9338         && !NEED_PRINTF_DIRECTIVE_A.
9339         Reported by Clemens Koller <clemens.koller@anagramm.de> via
9340         Gary V. Vaughan <gary@gnu.org>.
9341
9342 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
9343
9344         * lib/inttypes_.h: Undo previous change, since it was fixed
9345         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
9346
9347 2007-07-13  Bruno Haible  <bruno@clisp.org>
9348
9349         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
9350         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
9351
9352 2007-07-13  Jim Meyering  <jim@meyering.net>
9353
9354         df: Don't fail for Tru64's "file-on-file mount".
9355         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
9356         so we fall through and use statfs instead.  Details here:
9357         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
9358         Reported by Albert Chin.
9359
9360 2007-07-13  Bruno Haible  <bruno@clisp.org>
9361
9362         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
9363         * modules/configmake (License): Likewise.
9364         * modules/gettext (License): Likewise.
9365         * modules/gettext-h (License): Likewise.
9366         * modules/include_next (License): Likewise.
9367         * modules/link-warning (License): Likewise.
9368         * modules/localcharset (License): Likewise.
9369         * modules/localename (License): Likewise.
9370         * modules/lock (License): Likewise.
9371         * modules/relocatable-lib-lgpl (License): Likewise.
9372         * modules/size_max (License): Likewise.
9373         * modules/vasnprintf (License): Likewise.
9374         * modules/wchar (License): Likewise.
9375         * modules/xsize (License): Likewise.
9376
9377 2007-07-13  Bruno Haible  <bruno@clisp.org>
9378
9379         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
9380         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
9381
9382 2007-07-12  Bruno Haible  <bruno@clisp.org>
9383
9384         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
9385         in the modules files.
9386
9387 2007-07-11  Karl Berry  <karl@gnu.org>
9388
9389         * MODULES.html.sh (func_module): use
9390          sed -e '\|^'"${includefile}"'$|d'
9391          instead of /.../d, to avoid errors on $includefile's containing /.
9392
9393 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
9394
9395         * gnulib-tool (func_import): Avoid duplication of --avoid
9396         statements
9397         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
9398         names to `_' in variable names.
9399
9400 2007-07-10  Eric Blake  <ebb9@byu.net>
9401
9402         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
9403         * NEWS: Document this change.
9404
9405 2007-07-08  Bruno Haible  <bruno@clisp.org>
9406
9407         Update to Unicode 5.0.
9408         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
9409         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
9410         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
9411         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
9412         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
9413         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
9414         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
9415         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
9416         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
9417         U+10A3F, U+1D242..U+1D244.
9418         (nonspacing_table_ind): Update.
9419         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
9420         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
9421
9422 2007-07-08  Bruno Haible  <bruno@clisp.org>
9423
9424         Update to Unicode 5.0.
9425         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
9426         code transform. Extend the name index field of unicode_name_to_code and
9427         unicode_code_to_name from 16 to 24 bits.
9428         * lib/uniname/uniname.c (unicode_character_name,
9429         unicode_name_character): Add the range 0x12xxx to the code transform.
9430         * lib/uniname/uninames.h: Regenerated.
9431         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
9432
9433 2007-07-07  Bruno Haible  <bruno@clisp.org>
9434
9435         * modules/wcwidth-tests: New file.
9436         * tests/test-wcwidth.c: New file.
9437
9438         Work around MacOS X wcwidth() bug.
9439         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
9440         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
9441         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
9442         original wcwidth in non-UTF-8 locales.
9443         * modules/wcwidth (Depends-on): Add localcharset, streq,
9444         uniwidth/width.
9445         * doc/functions/wcwidth.texi: Update.
9446
9447 2007-07-07  Bruno Haible  <bruno@clisp.org>
9448
9449         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
9450         (wcwidth): New declaration.
9451         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
9452         macros.
9453         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
9454         here. Prepare for creating <wchar.h> unconditionally.
9455         * modules/wchar (Depends-on): Add link-warning.
9456         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
9457         REPLACE_WCWIDTH, and GL_LINK_WARNING.
9458         * lib/wcwidth.h: Remove file.
9459         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
9460         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
9461         * modules/wcwidth (Files): Remove lib/wcwidth.h.
9462         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
9463         (Include): Replace wcwidth.h with <wchar.h>.
9464         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
9465         * lib/mbchar.h: Don't include wcwidth.h.
9466         * lib/mbswidth.c: Likewise.
9467         * NEWS: Mention the change.
9468
9469 2007-07-07  Bruno Haible  <bruno@clisp.org>
9470
9471         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
9472         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
9473         definition with an external declaration.
9474         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
9475         defined as a function. Remove AC_C_INLINE requirement.
9476         * modules/wcwidth (Files): Add lib/wcwidth.c.
9477         (Makefile.am): Remove redundant statement.
9478
9479 2007-07-07  Bruno Haible  <bruno@clisp.org>
9480
9481         * MODULES.html.sh (Unicode string functions): Add the new modules.
9482
9483         * tests/uniwidth/test-u32-strwidth.c: New file.
9484         * modules/uniwidth/u32-strwidth-tests: New file.
9485
9486         * lib/uniwidth/u32-strwidth.c: New file.
9487         * modules/uniwidth/u32-strwidth: New file.
9488
9489         * tests/uniwidth/test-u16-strwidth.c: New file.
9490         * modules/uniwidth/u16-strwidth-tests: New file.
9491
9492         * lib/uniwidth/u16-strwidth.c: New file.
9493         * modules/uniwidth/u16-strwidth: New file.
9494
9495         * tests/uniwidth/test-u8-strwidth.c: New file.
9496         * modules/uniwidth/u8-strwidth-tests: New file.
9497
9498         * lib/uniwidth/u8-strwidth.c: New file.
9499         * modules/uniwidth/u8-strwidth: New file.
9500
9501         * tests/uniwidth/test-u32-width.c: New file.
9502         * modules/uniwidth/u32-width-tests: New file.
9503
9504         * lib/uniwidth/u32-width.c: New file.
9505         * modules/uniwidth/u32-width: New file.
9506
9507         * tests/uniwidth/test-u16-width.c: New file.
9508         * modules/uniwidth/u16-width-tests: New file.
9509
9510         * lib/uniwidth/u16-width.c: New file.
9511         * modules/uniwidth/u16-width: New file.
9512
9513         * tests/uniwidth/test-u8-width.c: New file.
9514         * modules/uniwidth/u8-width-tests: New file.
9515
9516         * lib/uniwidth/u8-width.c: New file.
9517         * modules/uniwidth/u8-width: New file.
9518
9519         * tests/uniwidth/test-uc_width.c: New file.
9520         * modules/uniwidth/width-tests: New file.
9521
9522         * lib/uniwidth/width.c: New file, from GNU libiconv.
9523         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
9524         * modules/uniwidth/width: New file.
9525
9526         * lib/uniwidth.h: New file, from GNU libiconv.
9527         * modules/uniwidth/base: New file.
9528
9529 2007-07-07  Bruno Haible  <bruno@clisp.org>
9530
9531         * lib/uniname.h: New file, from GNU gettext.
9532         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
9533         * lib/uniname/uninames.h: New file, from GNU gettext.
9534         * lib/uniname/uniname.c: New file, from GNU gettext.
9535         * tests/uniname/test-uninames.sh: New file.
9536         * tests/uniname/test-uninames.c: New file, from GNU gettext.
9537         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
9538         * modules/uniname/base: New file.
9539         * modules/uniname/uniname: New file.
9540         * modules/uniname/uniname-tests: New file.
9541         * MODULES.html.sh (Unicode string functions): Add the new modules.
9542
9543 2007-07-06  Bruno Haible  <bruno@clisp.org>
9544
9545         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
9546
9547 2007-07-06  Bruno Haible  <bruno@clisp.org>
9548
9549         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
9550         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
9551         includes <cygwin/sys_time.h> which includes <sys/select.h> which
9552         include <sys/time.h>.
9553         Reported by Eric Blake.
9554
9555 2007-07-06  Eric Blake  <ebb9@byu.net>
9556
9557         Fix testing canonicalize on cygwin.
9558         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
9559         Revert patch from 2007-06-19.
9560         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
9561         canonicalize module is also in use.
9562         * tests/test-canonicalize.c: New file.
9563         * tests/test-canonicalize.sh: Likewise.
9564         * modules/canonicalize-tests: Likewise.
9565
9566 2007-07-06  Jim Meyering  <jim@meyering.net>
9567
9568         * lib/getugroups.c (getugroups): Detect getgrent failure.
9569         Adjust comment to reflect reality: this function may return -1.
9570
9571 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
9572
9573         * build-aux/bootstrap (TP_URL,get_translations): Update to use
9574         the new TP address.
9575         (usage): Fix typo
9576         (gnulib_mk): New variable.
9577
9578 2007-07-05  Jim Meyering  <jim@meyering.net>
9579
9580         Don't let endgrent clobber errno, no matter how improbable.
9581         * lib/getugroups.c (getugroups): Save and restore errno around
9582         endgrent call.
9583
9584         Close the group DB even when failing with 2^31 or more members.
9585         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
9586
9587 2007-07-04  Jim Meyering  <jim@meyering.net>
9588
9589         * lib/getugroups.h: New file.
9590         * lib/getugroups.c: Include "getugroups.h".
9591         Remove uses of "register" keyword.
9592         Move local variable, "cp", down into scope where used.
9593         Give "username" parameter the "const" attribute.
9594         * modules/getugroups (Files): Add lib/getugroups.h
9595
9596 2007-07-04  Karl Berry  <karl@gnu.org>
9597
9598         * MODULES.html.sh (func_all_modules): Complete rename of
9599         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
9600
9601 2007-07-02  Bruno Haible  <bruno@clisp.org>
9602
9603         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
9604         mode, when inttypes.h comes from gnulib.
9605         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
9606
9607 2007-07-02  Simon Josefsson  <simon@josefsson.org>
9608
9609         * NEWS: Mention lgpl module name change.
9610
9611         * modules/lgpl-2.1: Renamed from lgpl.
9612
9613         * NEWS: Mention gpl module name change.
9614
9615         * modules/gpl-3.0: New file, based on gpl-2.0.
9616
9617         * modules/gpl-2.0: Renamed from gpl.
9618
9619         * modules/gpl: Fix filename, doc/gpl.texi is now found at
9620         doc/gpl-2.0.texi.
9621
9622 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
9623
9624         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
9625         #define __STDC_LIMIT_MACROS temporarily while including
9626         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
9627         Problem reported by Joel E. Denny in
9628         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
9629
9630 2007-07-01  Bruno Haible  <bruno@clisp.org>
9631
9632         * lib/unistdio.h: New file.
9633         * lib/unistdio/u-asnprintf.h: New file.
9634         * lib/unistdio/u-asprintf.h: New file.
9635         * lib/unistdio/u-printf-args.c: New file.
9636         * lib/unistdio/u-printf-args.h: New file.
9637         * lib/unistdio/u-printf-parse.h: New file.
9638         * lib/unistdio/u-snprintf.h: New file.
9639         * lib/unistdio/u-sprintf.h: New file.
9640         * lib/unistdio/u-vasprintf.h: New file.
9641         * lib/unistdio/u-vsnprintf.h: New file.
9642         * lib/unistdio/u-vsprintf.h: New file.
9643         * lib/unistdio/ulc-asnprintf.c: New file.
9644         * lib/unistdio/ulc-asprintf.c: New file.
9645         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
9646         * lib/unistdio/ulc-printf-parse.c: New file.
9647         * lib/unistdio/ulc-snprintf.c: New file.
9648         * lib/unistdio/ulc-sprintf.c: New file.
9649         * lib/unistdio/ulc-vasnprintf.c: New file.
9650         * lib/unistdio/ulc-vasprintf.c: New file.
9651         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
9652         * lib/unistdio/ulc-vsnprintf.c: New file.
9653         * lib/unistdio/ulc-vsprintf.c: New file.
9654         * lib/unistdio/u8-asnprintf.c: New file.
9655         * lib/unistdio/u8-asprintf.c: New file.
9656         * lib/unistdio/u8-printf-parse.c: New file.
9657         * lib/unistdio/u8-snprintf.c: New file.
9658         * lib/unistdio/u8-sprintf.c: New file.
9659         * lib/unistdio/u8-vasnprintf.c: New file.
9660         * lib/unistdio/u8-vasprintf.c: New file.
9661         * lib/unistdio/u8-vsnprintf.c: New file.
9662         * lib/unistdio/u8-vsprintf.c: New file.
9663         * lib/unistdio/u8-u8-asnprintf.c: New file.
9664         * lib/unistdio/u8-u8-asprintf.c: New file.
9665         * lib/unistdio/u8-u8-snprintf.c: New file.
9666         * lib/unistdio/u8-u8-sprintf.c: New file.
9667         * lib/unistdio/u8-u8-vasnprintf.c: New file.
9668         * lib/unistdio/u8-u8-vasprintf.c: New file.
9669         * lib/unistdio/u8-u8-vsnprintf.c: New file.
9670         * lib/unistdio/u8-u8-vsprintf.c: New file.
9671         * lib/unistdio/u16-asnprintf.c: New file.
9672         * lib/unistdio/u16-asprintf.c: New file.
9673         * lib/unistdio/u16-printf-parse.c: New file.
9674         * lib/unistdio/u16-snprintf.c: New file.
9675         * lib/unistdio/u16-sprintf.c: New file.
9676         * lib/unistdio/u16-vasnprintf.c: New file.
9677         * lib/unistdio/u16-vasprintf.c: New file.
9678         * lib/unistdio/u16-vsnprintf.c: New file.
9679         * lib/unistdio/u16-vsprintf.c: New file.
9680         * lib/unistdio/u16-u16-asnprintf.c: New file.
9681         * lib/unistdio/u16-u16-asprintf.c: New file.
9682         * lib/unistdio/u16-u16-snprintf.c: New file.
9683         * lib/unistdio/u16-u16-sprintf.c: New file.
9684         * lib/unistdio/u16-u16-vasnprintf.c: New file.
9685         * lib/unistdio/u16-u16-vasprintf.c: New file.
9686         * lib/unistdio/u16-u16-vsnprintf.c: New file.
9687         * lib/unistdio/u16-u16-vsprintf.c: New file.
9688         * lib/unistdio/u32-asnprintf.c: New file.
9689         * lib/unistdio/u32-asprintf.c: New file.
9690         * lib/unistdio/u32-printf-parse.c: New file.
9691         * lib/unistdio/u32-snprintf.c: New file.
9692         * lib/unistdio/u32-sprintf.c: New file.
9693         * lib/unistdio/u32-vasnprintf.c: New file.
9694         * lib/unistdio/u32-vasprintf.c: New file.
9695         * lib/unistdio/u32-vsnprintf.c: New file.
9696         * lib/unistdio/u32-vsprintf.c: New file.
9697         * lib/unistdio/u32-u32-asnprintf.c: New file.
9698         * lib/unistdio/u32-u32-asprintf.c: New file.
9699         * lib/unistdio/u32-u32-snprintf.c: New file.
9700         * lib/unistdio/u32-u32-sprintf.c: New file.
9701         * lib/unistdio/u32-u32-vasnprintf.c: New file.
9702         * lib/unistdio/u32-u32-vasprintf.c: New file.
9703         * lib/unistdio/u32-u32-vsnprintf.c: New file.
9704         * lib/unistdio/u32-u32-vsprintf.c: New file.
9705         * tests/unistdio/test-ulc-asnprintf1.c: New file.
9706         * tests/unistdio/test-ulc-asnprintf1.h: New file.
9707         * tests/unistdio/test-ulc-printf1.h: New file.
9708         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
9709         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
9710         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
9711         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
9712         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
9713         * tests/unistdio/test-ulc-vasprintf1.c: New file.
9714         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
9715         * tests/unistdio/test-ulc-vsprintf1.c: New file.
9716         * tests/unistdio/test-u8-asnprintf1.c: New file.
9717         * tests/unistdio/test-u8-asnprintf1.h: New file.
9718         * tests/unistdio/test-u8-printf1.h: New file.
9719         * tests/unistdio/test-u8-vasnprintf1.c: New file.
9720         * tests/unistdio/test-u8-vasnprintf2.c: New file.
9721         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
9722         * tests/unistdio/test-u8-vasnprintf3.c: New file.
9723         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
9724         * tests/unistdio/test-u8-vasprintf1.c: New file.
9725         * tests/unistdio/test-u8-vsnprintf1.c: New file.
9726         * tests/unistdio/test-u8-vsprintf1.c: New file.
9727         * tests/unistdio/test-u16-asnprintf1.c: New file.
9728         * tests/unistdio/test-u16-asnprintf1.h: New file.
9729         * tests/unistdio/test-u16-printf1.h: New file.
9730         * tests/unistdio/test-u16-vasnprintf1.c: New file.
9731         * tests/unistdio/test-u16-vasnprintf2.c: New file.
9732         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
9733         * tests/unistdio/test-u16-vasnprintf3.c: New file.
9734         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
9735         * tests/unistdio/test-u16-vasprintf1.c: New file.
9736         * tests/unistdio/test-u16-vsnprintf1.c: New file.
9737         * tests/unistdio/test-u16-vsprintf1.c: New file.
9738         * tests/unistdio/test-u32-asnprintf1.c: New file.
9739         * tests/unistdio/test-u32-asnprintf1.h: New file.
9740         * tests/unistdio/test-u32-printf1.h: New file.
9741         * tests/unistdio/test-u32-vasnprintf1.c: New file.
9742         * tests/unistdio/test-u32-vasnprintf2.c: New file.
9743         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
9744         * tests/unistdio/test-u32-vasnprintf3.c: New file.
9745         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
9746         * tests/unistdio/test-u32-vasprintf1.c: New file.
9747         * tests/unistdio/test-u32-vsnprintf1.c: New file.
9748         * tests/unistdio/test-u32-vsprintf1.c: New file.
9749         * modules/unistdio/base: New file.
9750         * modules/unistdio/u-printf-args: New file.
9751         * modules/unistdio/ulc-asnprintf: New file.
9752         * modules/unistdio/ulc-asprintf: New file.
9753         * modules/unistdio/ulc-fprintf: New file.
9754         * modules/unistdio/ulc-printf-parse: New file.
9755         * modules/unistdio/ulc-snprintf: New file.
9756         * modules/unistdio/ulc-sprintf: New file.
9757         * modules/unistdio/ulc-vasnprintf: New file.
9758         * modules/unistdio/ulc-vasprintf: New file.
9759         * modules/unistdio/ulc-vfprintf: New file.
9760         * modules/unistdio/ulc-vsnprintf: New file.
9761         * modules/unistdio/ulc-vsprintf: New file.
9762         * modules/unistdio/u8-asnprintf: New file.
9763         * modules/unistdio/u8-asprintf: New file.
9764         * modules/unistdio/u8-printf-parse: New file.
9765         * modules/unistdio/u8-snprintf: New file.
9766         * modules/unistdio/u8-sprintf: New file.
9767         * modules/unistdio/u8-vasnprintf: New file.
9768         * modules/unistdio/u8-vasprintf: New file.
9769         * modules/unistdio/u8-vsnprintf: New file.
9770         * modules/unistdio/u8-vsprintf: New file.
9771         * modules/unistdio/u8-u8-asnprintf: New file.
9772         * modules/unistdio/u8-u8-asprintf: New file.
9773         * modules/unistdio/u8-u8-snprintf: New file.
9774         * modules/unistdio/u8-u8-sprintf: New file.
9775         * modules/unistdio/u8-u8-vasnprintf: New file.
9776         * modules/unistdio/u8-u8-vasprintf: New file.
9777         * modules/unistdio/u8-u8-vsnprintf: New file.
9778         * modules/unistdio/u8-u8-vsprintf: New file.
9779         * modules/unistdio/u16-asnprintf: New file.
9780         * modules/unistdio/u16-asprintf: New file.
9781         * modules/unistdio/u16-printf-parse: New file.
9782         * modules/unistdio/u16-snprintf: New file.
9783         * modules/unistdio/u16-sprintf: New file.
9784         * modules/unistdio/u16-vasnprintf: New file.
9785         * modules/unistdio/u16-vasprintf: New file.
9786         * modules/unistdio/u16-vsnprintf: New file.
9787         * modules/unistdio/u16-vsprintf: New file.
9788         * modules/unistdio/u16-u16-asnprintf: New file.
9789         * modules/unistdio/u16-u16-asprintf: New file.
9790         * modules/unistdio/u16-u16-snprintf: New file.
9791         * modules/unistdio/u16-u16-sprintf: New file.
9792         * modules/unistdio/u16-u16-vasnprintf: New file.
9793         * modules/unistdio/u16-u16-vasprintf: New file.
9794         * modules/unistdio/u16-u16-vsnprintf: New file.
9795         * modules/unistdio/u16-u16-vsprintf: New file.
9796         * modules/unistdio/u32-asnprintf: New file.
9797         * modules/unistdio/u32-asprintf: New file.
9798         * modules/unistdio/u32-printf-parse: New file.
9799         * modules/unistdio/u32-snprintf: New file.
9800         * modules/unistdio/u32-sprintf: New file.
9801         * modules/unistdio/u32-vasnprintf: New file.
9802         * modules/unistdio/u32-vasprintf: New file.
9803         * modules/unistdio/u32-vsnprintf: New file.
9804         * modules/unistdio/u32-vsprintf: New file.
9805         * modules/unistdio/u32-u32-asnprintf: New file.
9806         * modules/unistdio/u32-u32-asprintf: New file.
9807         * modules/unistdio/u32-u32-snprintf: New file.
9808         * modules/unistdio/u32-u32-sprintf: New file.
9809         * modules/unistdio/u32-u32-vasnprintf: New file.
9810         * modules/unistdio/u32-u32-vasprintf: New file.
9811         * modules/unistdio/u32-u32-vsnprintf: New file.
9812         * modules/unistdio/u32-u32-vsprintf: New file.
9813         * modules/unistdio/ulc-asnprintf-tests: New file.
9814         * modules/unistdio/ulc-vasnprintf-tests: New file.
9815         * modules/unistdio/ulc-vasprintf-tests: New file.
9816         * modules/unistdio/ulc-vsnprintf-tests: New file.
9817         * modules/unistdio/ulc-vsprintf-tests: New file.
9818         * modules/unistdio/u8-asnprintf-tests: New file.
9819         * modules/unistdio/u8-vasnprintf-tests: New file.
9820         * modules/unistdio/u8-vasprintf-tests: New file.
9821         * modules/unistdio/u8-vsnprintf-tests: New file.
9822         * modules/unistdio/u8-vsprintf-tests: New file.
9823         * modules/unistdio/u16-asnprintf-tests: New file.
9824         * modules/unistdio/u16-vasnprintf-tests: New file.
9825         * modules/unistdio/u16-vasprintf-tests: New file.
9826         * modules/unistdio/u16-vsnprintf-tests: New file.
9827         * modules/unistdio/u16-vsprintf-tests: New file.
9828         * modules/unistdio/u32-asnprintf-tests: New file.
9829         * modules/unistdio/u32-vasnprintf-tests: New file.
9830         * modules/unistdio/u32-vasprintf-tests: New file.
9831         * modules/unistdio/u32-vsnprintf-tests: New file.
9832         * modules/unistdio/u32-vsprintf-tests: New file.
9833         * MODULES.html.sh (Unicode string functions): Add the new modules.
9834
9835 2007-07-01  Bruno Haible  <bruno@clisp.org>
9836
9837         * lib/sprintf.c (sprintf): Limit the available length estimation,
9838         to avoid address wraparound.
9839         * lib/vsprintf.c (vsprintf): Likewise.
9840         * modules/sprintf-posix (Dependencies): Add stdint.
9841         * modules/vsprintf-posix (Dependencies): Likewise.
9842
9843 2007-07-01  Bruno Haible  <bruno@clisp.org>
9844
9845         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
9846         Windows PATH as well. Conservative double-quoting. Comments.
9847
9848 2007-07-01  Bruno Haible  <bruno@clisp.org>
9849             Eric Blake  <ebb9@byu.net>
9850             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9851
9852         * gnulib-tool (self_abspathname): Fix algorithm to cope with
9853         empty components in $PATH, denoting '.'.
9854
9855 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9856
9857         * gnulib-tool: Fix indentation.
9858         (func_create_megatestdir): Likewise.
9859         Report by Bruno Haible.
9860
9861 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9862
9863         Sync from Automake.
9864         * build-aux/gnupload: Fix shell portability issues with for loops.
9865         Report by Karl Berry.
9866
9867 2007-06-29  Simon Josefsson  <simon@josefsson.org>
9868
9869         * build-aux/maint.mk (POURL): Use translationproject.org.
9870
9871 2007-06-27  Simon Josefsson  <simon@josefsson.org>
9872             Bruno Haible  <bruno@clisp.org>
9873
9874         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
9875         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
9876         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
9877         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
9878         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
9879
9880 2007-06-27  Bruno Haible  <bruno@clisp.org>
9881
9882         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
9883         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
9884
9885 2007-06-26  Karl Berry  <karl@gnu.org>
9886
9887         * MODULES.html.sh: remove xreadlink-with-size.
9888
9889 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9890
9891         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
9892         method that I hope also handles the double-include problem noted
9893         by Bruno Haible in
9894         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
9895
9896 2007-06-23  Bruno Haible  <bruno@clisp.org>
9897
9898         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
9899         Don't let the 'mostlyclean' target fail if the last subdirectory could
9900         not be removed.
9901         Reported by Karl Berry.
9902
9903 2007-06-23  Bruno Haible  <bruno@clisp.org>
9904
9905         * gnulib-tool (echo): Add a speedier workaround for ksh.
9906         * tests/test-echo.sh: Likewise.
9907
9908 2007-06-23  Bruno Haible  <bruno@clisp.org>
9909
9910         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
9911         * tests/test-echo.sh: Likewise.
9912
9913 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9914
9915         * gnulib-tool (IFS): Initialize early, so we don't set it to
9916         empty later.
9917         (self_abspathname): Rewrite algorithm to set it, reindent.
9918         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
9919         (func_create_megatestdir): Merge some sed scripts.
9920
9921 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9922
9923         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
9924         exposed by Sun Studio 11 cc on Solaris 8.
9925
9926 2007-06-22  Bruno Haible  <bruno@clisp.org>
9927
9928         * gnulib-tool (echo): Ensure the echo primitive does not interpret
9929         backslashes.
9930         * tests/test-echo.sh: New file.
9931
9932 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9933
9934         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
9935         simplify `sed_replace_build_aux' scripts, they are portable but
9936         echoing them with `echo' is not.
9937         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
9938
9939 2007-06-21  Karl Berry  <karl@gnu.org>
9940
9941         * config/srclist.txt: guess we can't handle the licenses via
9942         srclist at the moment.
9943
9944 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
9945
9946         * MODULES.html.sh: Add include_next.
9947         * modules/include_next: New file.
9948
9949 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
9950
9951         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
9952         INCLUDE_NEXT.
9953         (gl_CHECK_NEXT_HEADERS): New macro.
9954         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
9955         the obsolescent gl_ABSOLUTE_HEADER.
9956         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
9957         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
9958         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
9959         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
9960         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
9961         * m4/math_h.m4 (gl_MATH_H): Likewise.
9962         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
9963         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
9964         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
9965         * m4/stdint.m4 (gl_STDINT_H): Likewise.
9966         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
9967         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
9968         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
9969         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
9970         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
9971         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
9972         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
9973         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
9974         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
9975         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
9976         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
9977         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
9978         * m4/inttypes.m4 (gl_INTTYPES_H): Define
9979         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
9980         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
9981         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
9982         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
9983         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
9984         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
9985         * lib/float_.h: Likewise.
9986         * lib/inttypes_.h: Likewise.
9987         * lib/math_.h: Likewise.
9988         * lib/search_.h: Likewise.
9989         * lib/signal_.h: Likewise.
9990         * lib/stdint_.h: Likewise.
9991         * lib/stdio_.h: Likewise.
9992         * lib/stdlib_.h: Likewise.
9993         * lib/string_.h: Likewise.
9994         * lib/sys_stat_.h: Likewise.
9995         * lib/sys_time_.h: Likewise.
9996         * lib/time_.h: Likewise.
9997         * lib/unistd_.h: Likewise.
9998         * lib/wchar_.h: Likewise.
9999         * lib/wctype_.h: Likewise.
10000         * lib/dirent_.h: Likewise.
10001         * lib/iconv_.h: Likewise.
10002         * lib/locale_.h: Likewise.
10003         * lib/netinet_in_.h: Likewise.
10004         * lib/sys_select_.h: Likewise.
10005         * lib/sys_socket_.h: Likewise.
10006         * lib/sysexits_.h: Likewise.
10007         * modules/fcntl (Depends-on): Depend on include_next, not
10008         absolute_header.
10009         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
10010         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
10011         * modules/fchdir: Likewise.
10012         * modules/float: Likewise.
10013         * modules/iconv_open: Likewise.
10014         * modules/inttypes: Likewise.
10015         * modules/locale: Likewise.
10016         * modules/math: Likewise.
10017         * modules/netinet_in: Likewise.
10018         * modules/search: Likewise.
10019         * modules/signal: Likewise.
10020         * modules/stdint: Likewise.
10021         * modules/stdio: Likewise.
10022         * modules/stdlib: Likewise.
10023         * modules/string: Likewise.
10024         * modules/sys_select: Likewise.
10025         * modules/sys_socket: Likewise.
10026         * modules/sys_stat: Likewise.
10027         * modules/sys_time: Likewise.
10028         * modules/sysexits: Likewise.
10029         * modules/time: Likewise.
10030         * modules/unistd: Likewise.
10031         * modules/wchar: Likewise.
10032         * modules/wctype: Likewise.
10033         * modules/sys_stat: Change maintainer to "all".
10034         * modules/unistd: Likewise.
10035
10036 2007-06-20  Karl Berry  <karl@gnu.org>
10037
10038         * config/srclist.txt: track www changes in license files.
10039
10040 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
10041
10042         * build-aux/bootstrap: Remove stray dot.
10043         Make sure build_aux settings are honored when linking
10044         gnulib_extra_files.
10045
10046 2007-06-19  Eric Blake  <ebb9@byu.net>
10047
10048         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
10049         Allow compilation on cygwin.
10050
10051 2007-06-19  Jim Meyering  <jim@meyering.net>
10052
10053         xreadlink-with-size: Remove module.  No longer used.
10054         Ex-callers now use xreadlink or mreadlink-with-size.
10055         * modules/xreadlink-with-size: Remove module.
10056         * lib/xreadlink-with-size.c: Remove file.
10057         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
10058         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
10059         just before the function definition *is* accurate.
10060
10061         Eliminate one way canonicalize_filename_mode could exit.
10062         * lib/canonicalize.c (canonicalize_filename_mode):
10063         Use mreadlink_with_size, not xreadlink_with_size.
10064
10065 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
10066
10067         Detect porting problems to FreeBSD/arm, which has time_t wider than
10068         long int.  Original problem reported for GNU diff by Xin Li in
10069         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
10070         * modules/getdate (Depends-on): Add intprops, verify.
10071         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
10072         is an integer type no wider than long int.
10073
10074 2007-06-18  Jim Meyering  <jim@meyering.net>
10075
10076         New module: mreadlink-with-size.
10077         * MODULES.html.sh: Add mreadlink-with-size.
10078         * modules/mreadlink-with-size: New module
10079         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
10080         not xreadlink-with-size.
10081         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
10082
10083 2007-06-16  Bruno Haible  <bruno@clisp.org>
10084
10085         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
10086         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
10087         Reported by Gary V. Vaughan <gary@gnu.org>.
10088
10089 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
10090
10091         Revamp lchown so that it lives in unistd.h where it belongs.
10092         * lib/lchown.h: Remove.
10093         * lib/dirchownmod.c: Don't include lib/lchown.h.
10094         * lib/fchownat.c: Likewise.
10095         * lib/openat.c: Likewise.
10096         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
10097         does not follow symlinks.
10098         (EOPNOTSUPP): Define if not defined.
10099         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
10100         is defined to 0.
10101         (lchown): New decl.
10102         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
10103         Do not check for lchown decl.
10104         Set REPLACE_LCHOWN.
10105         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
10106         REPLACE_LCHOWN.
10107         * modules/chown: Make it clear it follows symlinks.
10108         * modules/lchown: Make it clear it doesn't follow symlinks.
10109         (Files): Remove lib/lchown.h
10110         (Depends-on): Add unistd.
10111         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
10112         (Include): Include <unistd.h>, not "lchown.h".
10113         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
10114         REPLACE_LCHOWN.
10115
10116 2007-06-15  Jim Meyering  <jim@meyering.net>
10117
10118         Change license (GPL to LGPL) of fsusage and dependents.
10119         * modules/fsusage (License): Change to LGPL.
10120         * modules/full-read (License): Likewise.
10121         * modules/full-write (License): Likewise.
10122         * modules/safe-read (License): Likewise.
10123         * modules/safe-write (License): Likewise.
10124
10125 2007-06-14  Ben Pfaff  <blp@gnu.org>
10126
10127         Missing part of allocsa -> malloca transition.
10128         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
10129         gl_MALLOCA.
10130
10131 2007-06-12  Bruno Haible  <bruno@clisp.org>
10132
10133         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
10134         to ia64, x86_64, i386.
10135         Reported by Eric Blake.
10136
10137 2007-06-12  Bruno Haible  <bruno@clisp.org>
10138
10139         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
10140         cross-compiling to x86_64.
10141
10142 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
10143
10144         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
10145         glitch reported by Ralf Wildenhues in
10146         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
10147
10148         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
10149         Vin Shelton.
10150
10151 2007-06-11  Bruno Haible  <bruno@clisp.org>
10152
10153         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
10154         replacement string.
10155         Reported by Eric Blake.
10156
10157 2007-06-10  Bruno Haible  <bruno@clisp.org>
10158
10159         Prepare vasnprintf code for use with Unicode strings.
10160         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
10161         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
10162         TYPE_U32_STRING.
10163         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
10164         a_u32_string variants.
10165         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
10166         * lib/printf-args.c: Don't include config.h and the specification
10167         header if PRINTF_FETCHARGS is already defined.
10168         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
10169         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
10170         TYPE_U16_STRING, TYPE_U32_STRING.
10171         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
10172         u16_directive, u16_directives, u32_directive, u32_directives): New
10173         types.
10174         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
10175         New declarations.
10176         * lib/printf-parse.c: Don't include config.h and the specification
10177         header if PRINTF_PARSE is already defined. Eliminate the set of
10178         parameters for WIDE_CHAR_VERSION; the user of this file must provide
10179         them now. Include c-ctype.h.
10180         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
10181         directive and CHAR_T_ONLY_ASCII.
10182         * lib/vasnprintf.c: Don't include config.h and the specification header
10183         if VASNPRINTF is already defined.
10184         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
10185         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
10186         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
10187         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
10188         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
10189         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
10190         code accordingly.
10191         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
10192         pad_ourselves also in this case, with the 'c' and 's' directives, and
10193         with a different notion of "width".
10194         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
10195
10196 2007-06-10  Bruno Haible  <bruno@clisp.org>
10197
10198         * modules/unistr/u32-mbsnlen: New file.
10199         * lib/unistr/u32-mbsnlen.c: New file.
10200
10201         * modules/unistr/u16-mbsnlen: New file.
10202         * lib/unistr/u16-mbsnlen.c: New file.
10203
10204         * modules/unistr/u8-mbsnlen: New file.
10205         * lib/unistr/u8-mbsnlen.c: New file.
10206
10207         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
10208         declarations.
10209
10210 2007-06-10  Bruno Haible  <bruno@clisp.org>
10211
10212         * lib/string_.h (mbsnlen): New declaration.
10213         * lib/mbsnlen.c: New file.
10214         * m4/mbsnlen.m4: New file.
10215         * modules/mbsnlen: New file.
10216         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
10217         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
10218         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
10219
10220 2007-06-10  Bruno Haible  <bruno@clisp.org>
10221
10222         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
10223
10224 2007-06-10  Bruno Haible  <bruno@clisp.org>
10225
10226         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
10227         * lib/mbuiter.h: Likewise.
10228
10229 2007-06-10  Bruno Haible  <bruno@clisp.org>
10230
10231         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
10232         declaration.
10233
10234 2007-06-10  Karl Berry  <karl@gnu.org>
10235
10236         * config/srclist.txt: remove gettext entries, Bruno prefers
10237         to update individually.
10238
10239 2007-06-10  Bruno Haible  <bruno@clisp.org>
10240
10241         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
10242         'maxlen'. Ensure only length + width bytes are allocated, not
10243         length + 1 + width.
10244
10245 2007-06-09  Bruno Haible  <bruno@clisp.org>
10246
10247         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
10248         (CHAR_T): Remove macro.
10249         (VASNPRINTF): Update.
10250
10251 2007-06-09  Bruno Haible  <bruno@clisp.org>
10252
10253         * MODULES.html.sh (Unicode string functions): Add the new modules.
10254
10255         * modules/uniconv/u32-conv-to-enc: New file.
10256         * lib/uniconv/u32-conv-to-enc.c: New file.
10257         * modules/uniconv/u32-conv-to-enc-tests: New file.
10258         * tests/uniconv/test-u32-conv-to-enc.c: New file.
10259
10260         * modules/uniconv/u16-conv-to-enc: New file.
10261         * lib/uniconv/u16-conv-to-enc.c: New file.
10262         * lib/uniconv/u-conv-to-enc.h: New file.
10263         * modules/uniconv/u16-conv-to-enc-tests: New file.
10264         * tests/uniconv/test-u16-conv-to-enc.c: New file.
10265
10266         * modules/uniconv/u8-conv-to-enc: New file.
10267         * lib/uniconv/u8-conv-to-enc.c: New file.
10268         * modules/uniconv/u8-conv-to-enc-tests: New file.
10269         * tests/uniconv/test-u8-conv-to-enc.c: New file.
10270
10271         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
10272         u32_conv_to_encoding): New declarations.
10273
10274 2007-06-09  Bruno Haible  <bruno@clisp.org>
10275
10276         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
10277
10278 2007-06-09  Bruno Haible  <bruno@clisp.org>
10279
10280         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
10281         * modules/malloca: Renamed from modules/allocsa, updated.
10282         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
10283         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
10284         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
10285         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
10286         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
10287         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
10288         * modules/xmalloca: Renamed from modules/xallocsa, updated.
10289         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
10290         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
10291         * modules/c-strcasestr (Depends-on): Update.
10292         * lib/c-strcasestr.c: Update.
10293         * modules/c-strstr (Depends-on): Update.
10294         * lib/c-strstr.c: Update.
10295         * modules/canonicalize-lgpl (Depends-on): Update.
10296         * lib/canonicalize-lgpl.c: Update.
10297         * modules/clean-temp (Depends-on): Update.
10298         * lib/clean-temp.c: Update.
10299         * modules/csharpcomp (Depends-on): Update.
10300         * lib/csharpcomp.c: Update.
10301         * modules/csharpexec (Depends-on): Update.
10302         * lib/csharpexec.c: Update.
10303         * modules/javacomp (Depends-on): Update.
10304         * lib/javacomp.c: Update.
10305         * modules/javaexec (Depends-on): Update.
10306         * lib/javaexec.c: Update.
10307         * modules/mbscasestr (Depends-on): Update.
10308         * lib/mbscasestr.c: Update.
10309         * modules/mbsstr (Depends-on): Update.
10310         * lib/mbsstr.c: Update.
10311         * modules/setenv (Depends-on): Update.
10312         * lib/setenv.c: Update.
10313         * modules/strcasestr (Depends-on): Update.
10314         * lib/strcasestr.c: Update.
10315         * modules/striconveha (Depends-on): Update.
10316         * lib/striconveha.c: Update.
10317         * modules/relocatable-prog-wrapper (Files): Update.
10318         * lib/relocwrapper.c: Update.
10319         * build-aux/install-reloc: Update.
10320         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
10321
10322 2007-06-08  Bruno Haible  <bruno@clisp.org>
10323
10324         Port to uClibc.
10325         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
10326         * lib/fpurge.c (fpurge): Likewise.
10327         * lib/freading.c (freading): Likewise.
10328         * lib/fseeko.c (rpl_fseeko): Likewise.
10329         * lib/fseterr.c (fseterr): Likewise.
10330         * lib/fwriting.c (fwriting): Likewise.
10331         * tests/test-fflush.c (main): Avoid a failure on uClibc.
10332
10333 2007-06-08  Bruno Haible  <bruno@clisp.org>
10334
10335         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
10336         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
10337         * modules/gettext (Files): Add m4/intlmacosx.m4.
10338
10339 2007-06-07  Bruno Haible  <bruno@clisp.org>
10340
10341         * modules/localename-tests: New file.
10342         * tests/test-localename.c: New file.
10343
10344         New module 'localename'.
10345         * lib/localename.h: New file.
10346         * lib/localename.c: New file, from GNU gettext.
10347         * m4/localename.m4: New file.
10348         * modules/localename: New file.
10349
10350 2007-06-07  Bruno Haible  <bruno@clisp.org>
10351
10352         Work around the lack of <wchar.h> on some builds of uClibc.
10353         * doc/headers/wchar.texi: Update.
10354         * lib/wchar_.h: Include <wchar.h> only if it exists.
10355         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
10356         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
10357         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
10358         doesn't exist.
10359         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
10360         * modules/mbfile (Depends-on): Add wchar.
10361         * modules/mbiter (Depends-on): Likewise.
10362         * modules/mbuiter (Depends-on): Likewise.
10363         Reported by Simon Josefsson.
10364
10365 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
10366
10367         Work around problem reported by Steven M. Schweda in
10368         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
10369         Tru64 5.1B with the Compaq compiler environment installed declares
10370         an 'isblank' function but does not define it in the C library.
10371         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
10372         * lib/regex_internal.h (isblank): Likewise.
10373         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
10374         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
10375
10376 2007-06-05  Bruno Haible  <bruno@clisp.org>
10377
10378         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
10379         ia64.
10380         * modules/printf-safe: New file.
10381         * modules/fprintf-posix (Depends-on): Add printf-safe.
10382         * modules/printf-posix (Depends-on): Likewise.
10383         * modules/snprintf-posix (Depends-on): Likewise.
10384         * modules/sprintf-posix (Depends-on): Likewise.
10385         * modules/vasnprintf-posix (Depends-on): Likewise.
10386         * modules/vasprintf-posix (Depends-on): Likewise.
10387         * modules/vfprintf-posix (Depends-on): Likewise.
10388         * modules/vprintf-posix (Depends-on): Likewise.
10389         * modules/vsnprintf-posix (Depends-on): Likewise.
10390         * modules/vsprintf-posix (Depends-on): Likewise.
10391         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
10392         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
10393         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
10394         "no" on i386, x86_64, ia64.
10395         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
10396         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10397         on i386, x86_64, ia64.
10398         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
10399         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10400         on i386, x86_64, ia64.
10401         * tests/test-vasnprintf-posix.c: Include float.h.
10402         (LDBL80_WORDS): New macro.
10403         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10404         on i386, x86_64, ia64.
10405         * tests/test-vasprintf-posix.c: Include float.h.
10406         (LDBL80_WORDS): New macro.
10407         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10408         on i386, x86_64, ia64.
10409         * tests/test-snprintf-posix.c: Include float.h.
10410         * tests/test-sprintf-posix.c: Likewise.
10411         * tests/test-vsnprintf-posix.c: Likewise.
10412         * tests/test-vsprintf-posix.c: Likewise.
10413
10414 2007-06-05  Bruno Haible  <bruno@clisp.org>
10415
10416         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
10417         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
10418         non-IEEE numbers on i386, x86_64, ia64.
10419         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
10420         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
10421         * tests/test-isnanl.h: Include float.h.
10422         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
10423
10424 2007-06-05  Bruno Haible  <bruno@clisp.org>
10425
10426         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
10427         also the %a / %A. Handle the %a / %A code before this extra handling.
10428
10429 2007-06-05  Bruno Haible  <bruno@clisp.org>
10430
10431         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
10432         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
10433
10434 2007-06-05  Bruno Haible  <bruno@clisp.org>
10435
10436         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
10437         typo in variable name.
10438
10439 2007-06-05  Eric Blake  <ebb9@byu.net>
10440
10441         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
10442         Reported by Simon Josefsson.
10443
10444 2007-06-04  Bruno Haible  <bruno@clisp.org>
10445
10446         Avoid test failures on some PowerPC platforms.
10447         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
10448         Define differently for PowerPC.
10449         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
10450         Reported by Gary V. Vaughan <gary@gnu.org>.
10451
10452 2007-06-02  Bruno Haible  <bruno@clisp.org>
10453
10454         Fix test-stdint failure on FreeBSD/ia64.
10455         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
10456         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
10457         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
10458         * doc/headers/stdint.texi: Update.
10459
10460 2007-06-01  Bruno Haible  <bruno@clisp.org>
10461
10462         * tests/test-binary-io.c (main): Pass a third argument to open().
10463         Reported by Gary V. Vaughan <gary@gnu.org>.
10464
10465 2007-06-01  Bruno Haible  <bruno@clisp.org>
10466
10467         * doc/functions/frexpl.texi: Update for mingw.
10468
10469 2007-06-01  Bruno Haible  <bruno@clisp.org>
10470
10471         * tests/test-lseek.c (main): Disable test of errno for invalid third
10472         argument.
10473         * doc/functions/lseek.texi: Update.
10474         Reported by Gary V. Vaughan <gary@gnu.org>.
10475
10476 2007-05-28  Bruno Haible  <bruno@clisp.org>
10477
10478         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
10479
10480 2007-05-31  Eric Blake  <ebb9@byu.net>
10481
10482         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
10483         cross compiling.
10484
10485 2007-05-30  Eric Blake  <ebb9@byu.net>
10486         and Bruno Haible  <bruno@clisp.org>
10487
10488         Work around mingw test failures exposed by m4-1.4.9b.
10489         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
10490         * tests/test-unistd.c: Disable uid_t and git_t tests for the
10491         moment.
10492
10493 2007-05-30  Bruno Haible  <bruno@clisp.org>
10494
10495         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
10496         assuming that they are closed. Needed on HP-UX 11.
10497
10498 2007-05-29  Bruno Haible  <bruno@clisp.org>
10499
10500         Fix a problem with #include_next.
10501         * lib/dirent_.h: Split the double-inclusion guard.
10502         * lib/fcntl_.h: Likewise.
10503         * lib/float_.h: Likewise.
10504         * lib/iconv_.h: Likewise.
10505         * lib/inttypes_.h: Likewise.
10506         * lib/locale_.h: Likewise.
10507         * lib/math_.h: Likewise.
10508         * lib/netinet_in_.h: Likewise.
10509         * lib/search_.h: Likewise.
10510         * lib/signal_.h: Likewise.
10511         * lib/stdint_.h: Likewise.
10512         * lib/stdio_.h: Likewise.
10513         * lib/stdlib_.h: Likewise.
10514         * lib/string_.h: Likewise.
10515         * lib/sys_select_.h: Likewise.
10516         * lib/sys_socket_.h: Likewise.
10517         * lib/sys_stat_.h: Likewise.
10518         * lib/sys_time_.h: Likewise.
10519         * lib/sysexits_.h: Likewise.
10520         * lib/time_.h: Likewise.
10521         * lib/unistd_.h: Likewise.
10522         * lib/wchar_.h: Likewise.
10523         * lib/wctype_.h: Likewise.
10524
10525 2007-05-29  Bruno Haible  <bruno@clisp.org>
10526
10527         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
10528         for the moment.
10529
10530 2007-05-29  Bruno Haible  <bruno@clisp.org>
10531
10532         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
10533         invocation.
10534         Reported by Eric Blake.
10535
10536 2007-05-29  Bruno Haible  <bruno@clisp.org>
10537
10538         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
10539         compiling case.
10540
10541 2007-05-29  Eric Blake  <ebb9@byu.net>
10542             Bruno Haible  <bruno@clisp.org>
10543
10544         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
10545         cross compiles.
10546
10547 2007-05-28  Eric Blake  <ebb9@byu.net>
10548
10549         * modules/closein-tests (test_closein_LDADD): Support test on
10550         cygwin with libtool.
10551
10552 2007-05-28  Bruno Haible  <bruno@clisp.org>
10553
10554         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
10555         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
10556         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
10557         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
10558         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
10559         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
10560         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
10561         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
10562         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
10563
10564 2007-05-28  Eric Blake  <ebb9@byu.net>
10565
10566         Unconditionally include <config.h> in unit tests.
10567         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
10568         * tests/test-allocsa.c, tests/test-arcfour.c,
10569         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
10570         tests/test-array_list.c, tests/test-array_oset.c,
10571         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
10572         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
10573         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
10574         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
10575         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
10576         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
10577         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
10578         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
10579         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
10580         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
10581         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
10582         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
10583         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
10584         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
10585         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
10586         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
10587         test-md5.c, test-memmem.c, test-printf-posix.c,
10588         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
10589         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
10590         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
10591         test-strcasestr.c, test-striconv.c, test-striconveh.c,
10592         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
10593         test-vasnprintf-posix2.c, test-vasnprintf.c,
10594         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
10595         test-vfprintf-posix.c, test-vprintf-posix.c,
10596         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
10597         test-xvasprintf.c: Likewise.
10598
10599 2007-05-28  Bruno Haible  <bruno@clisp.org>
10600
10601         * gnulib-tool (func_import): Remember the --with-tests command-line
10602         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
10603         Reported by Eric Blake.
10604
10605 2007-05-28  Bruno Haible  <bruno@clisp.org>
10606
10607         * modules/ftell-tests: New file.
10608         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
10609         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
10610
10611         * lib/ftell.c: New file.
10612         * modules/ftell: New file.
10613         * m4/ftell.m4: New file.
10614         * doc/functions/ftell.texi: Update.
10615         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
10616         REPLACE_FTELL.
10617         * lib/stdio_.h (rpl_ftell): New declaration.
10618         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
10619         REPLACE_FTELL.
10620
10621 2007-05-28  Eric Blake  <ebb9@byu.net>
10622
10623         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
10624
10625 2007-05-28  Bruno Haible  <bruno@clisp.org>
10626
10627         * modules/fseek-tests: New file.
10628         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
10629         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
10630
10631         * lib/fseek.c: New file.
10632         * modules/fseek: New file.
10633         * m4/fseek.m4: New file.
10634         * doc/functions/fseek.texi: Update.
10635         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
10636         REPLACE_FSEEK.
10637         * lib/stdio_.h (rpl_fseek): New declaration.
10638         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
10639         REPLACE_FSEEK.
10640
10641 2007-05-28  Bruno Haible  <bruno@clisp.org>
10642
10643         * lib/stdio_.h (fflush): More comments.
10644
10645 2007-05-28  Bruno Haible  <bruno@clisp.org>
10646
10647         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
10648         runtime test.
10649
10650 2007-05-28  Eric Blake  <ebb9@byu.net>
10651
10652         Improve lseek module.
10653         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
10654         * lib/unistd_.h (lseek): Scale back link warning message.
10655         * tests/test-lseek.c: Beef up test.
10656         * tests/test-lseek.sh: Exercise more facets of lseek.
10657         Reported by Bruno Haible.
10658
10659 2007-05-28  Bruno Haible  <bruno@clisp.org>
10660
10661         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
10662         to define.
10663
10664 2007-05-27  Bruno Haible  <bruno@clisp.org>
10665
10666         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
10667
10668 2007-05-27  Bruno Haible  <bruno@clisp.org>
10669
10670         * modules/openmp: New file.
10671         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
10672         Noah Misch.
10673
10674 2007-05-26  Bruno Haible  <bruno@clisp.org>
10675
10676         * modules/chdir-long (Depends-on): Add fchdir.
10677         * modules/chdir-safer (Depends-on): Likewise.
10678         * modules/fts (Depends-on): Likewise.
10679         * modules/fts-lgpl (Depends-on): Likewise.
10680         * modules/openat (Depends-on): Likewise.
10681         * modules/savewd (Depends-on): Likewise.
10682
10683 2007-05-24  Eric Blake  <ebb9@byu.net>
10684
10685         Fix lseek on mingw.
10686         * modules/lseek: New module.
10687         * m4/lseek.m4: New file.
10688         * lib/lseek.c: New file.
10689         * modules/lseek-tests: New file.
10690         * tests/test-lseek.c: New file.
10691         * tests/test-lseek.sh: New file.
10692         * MODULES.html.sh: Document lseek module.
10693         * modules/fflush (Depends-on): Add lseek, fseeko.
10694         * modules/fseeko (Depends-on): Likewise.
10695         * modules/ftello (Depends-on): Likewise.
10696         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
10697         broken.
10698         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
10699         broken.
10700         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
10701         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
10702         * lib/ftello.c (rpl_ftello): Likewise.
10703         * tests/test-fseeko.c (main): Test this.
10704         * tests/test-fseeko.sh: Likewise.
10705         * tests/test-ftello.c (main): Likewise.
10706         * tests/test-ftello.sh: Likewise.
10707         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
10708         implies replacing fseek.
10709         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
10710         HAVE_FTELLO.
10711         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
10712         * modules/unistd (Makefile.am): Likewise.
10713         * lib/unistd_.h (lseek): Declare a replacement.
10714         * doc/functions/lseek.texi (lseek): Document this fix.
10715         * doc/functions/fseek.texi (fseek): Likewise.
10716         * doc/functions/ftell.texi (ftell): Likewise.
10717
10718 2007-05-24  Bruno Haible  <bruno@clisp.org>
10719
10720         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
10721         in the printed representation of a NaN.
10722         * tests/test-vasprintf-posix.c (test_function): Likewise.
10723         * tests/test-snprintf-posix.h (test_function): Likewise.
10724         * tests/test-sprintf-posix.h (test_function): Likewise.
10725         Reported by Eric Blake.
10726
10727 2007-05-23  Eric Blake  <ebb9@byu.net>
10728
10729         Fix fseeko/ftello on cygwin 1.5.24.
10730         * doc/functions/fseeko.texi (fseeko): Document the fix.
10731         * doc/functions/ftello.texi (ftello): Document the fix.
10732         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
10733         * doc/functions/stdout.text (stdout): New file.
10734         * doc/functions/stderr.text (stderr): New file.
10735         * doc/gnulib.texi (Function Substitutes): Use new files.
10736         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
10737         prior to 1.7.0.
10738         * tests/test-ftello.c (main): Likewise for ftello.
10739         * tests/test-fseeko.sh: New file.
10740         * tests/test-ftello.sh: New file.
10741         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
10742         with seekable stdin.
10743         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
10744         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
10745         (gl_REPLACE_FSEEKO): New macro.
10746         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
10747         * modules/fseeko (Files): Distribute fseeko.c.
10748         * modules/ftello (Files): Distribute ftello.c.
10749         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
10750         mode.
10751         * lib/ftello.c (rpl_ftello): New file.
10752         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
10753         fseeko, ftello.
10754         (gl_STDIN_LARGE_OFFSET): New macro.
10755         * modules/stdio (Makefile.am): Perform the replacement.
10756         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
10757
10758 2007-05-23  Bruno Haible  <bruno@clisp.org>
10759
10760         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
10761         GNULIB_POSIXCHECK is defined.
10762
10763 2007-05-21  Bruno Haible  <bruno@clisp.org>
10764
10765         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
10766         Check also the output for NaN arguments. When cross-compiling, guess
10767         no on IRIX.
10768         * lib/vasnprintf.c: Update comments.
10769         * tests/test-vasnprintf-posix.c (strisnan): New function.
10770         (test_function): Use it.
10771         * tests/test-vasprintf-posix.c (strisnan): New function.
10772         (test_function): Use it.
10773         * tests/test-snprintf-posix.h (strisnan): New function.
10774         (test_function): Use it.
10775         * tests/test-sprintf-posix.h (strisnan): New function.
10776         (test_function): Use it.
10777         Reported by Eric Blake.
10778
10779 2007-05-20  Bruno Haible  <bruno@clisp.org>
10780
10781         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
10782         numbers that fails on BeOS.
10783         * doc/functions/frexpl.texi: Update.
10784
10785 2007-05-20  Jim Meyering  <jim@meyering.net>
10786
10787         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
10788         forced upon us by glibc-2.6.
10789
10790 2007-05-20  Bruno Haible  <bruno@clisp.org>
10791
10792         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
10793         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
10794         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
10795         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
10796         NEED_PRINTF_INFINITE.
10797         (is_infinitel): New function.
10798         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
10799         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
10800         gl_PREREQ_VASNPRINTF_INFINITE.
10801         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
10802         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
10803         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
10804         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
10805         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
10806         gl_PREREQ_VASNPRINTF_INFINITE.
10807         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
10808         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10809         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10810         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10811         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10812         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10813         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10814         * doc/functions/fprintf.texi: Update.
10815         * doc/functions/printf.texi: Update.
10816         * doc/functions/snprintf.texi: Update.
10817         * doc/functions/sprintf.texi: Update.
10818         * doc/functions/vfprintf.texi: Update.
10819         * doc/functions/vprintf.texi: Update.
10820         * doc/functions/vsnprintf.texi: Update.
10821         * doc/functions/vsprintf.texi: Update.
10822
10823 2007-05-20  Bruno Haible  <bruno@clisp.org>
10824
10825         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
10826         was not found in libc.
10827         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
10828
10829 2007-05-20  Bruno Haible  <bruno@clisp.org>
10830
10831         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
10832         printed as "-nan" instead of "nan".
10833         * tests/test-vasprintf-posix.c (test_function): Likewise.
10834         * tests/test-snprintf-posix.h (test_function): Likewise.
10835         * tests/test-sprintf-posix.h (test_function): Likewise.
10836         Needed for HP-UX 11.
10837
10838 2007-05-20  Jim Meyering  <jim@meyering.net>
10839
10840         Fix buggy test for the fchownat-deref bug.
10841         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
10842         symlink required for the run-test.  Without it, this test would
10843         always declare that fchownat doesn't work, and client code would
10844         unnecessarily use the replacement function with fixed libc.
10845         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
10846         Reported by Greg Schafer.
10847
10848 2007-05-19  Bruno Haible  <bruno@clisp.org>
10849
10850         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
10851         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
10852         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
10853         Needed for IRIX 6.5 and Solaris 2.5.1.
10854
10855 2007-05-19  Bruno Haible  <bruno@clisp.org>
10856
10857         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
10858         (test_function): Skip tests involving -0.0 on platforms where
10859         -0.0 = 0.0.
10860         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
10861         (test_function): Skip tests involving -0.0 on platforms where
10862         -0.0 = 0.0.
10863         * tests/test-snprintf-posix.h (have_minus_zero): New function.
10864         (test_function): Skip tests involving -0.0 on platforms where
10865         -0.0 = 0.0.
10866         * tests/test-sprintf-posix.h (have_minus_zero): New function.
10867         (test_function): Skip tests involving -0.0 on platforms where
10868         -0.0 = 0.0.
10869         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
10870         tests.
10871         * tests/test-printf-posix.h (test_function): Likewise.
10872         * tests/test-printf-posix.output: Remove all -0.0 related results.
10873         Needed for IRIX 6.5.
10874
10875 2007-05-19  Bruno Haible  <bruno@clisp.org>
10876
10877         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
10878         printed as "nan0x7fffffff" instead of "nan".
10879         * tests/test-vasprintf-posix.c (test_function): Likewise.
10880         * tests/test-snprintf-posix.h (test_function): Likewise.
10881         * tests/test-sprintf-posix.h (test_function): Likewise.
10882         * tests/test-fprintf-posix.h (NaN): Remove macro.
10883         (test_function): Remove all NaN related tests.
10884         * tests/test-printf-posix.h (NaN): Remove macro.
10885         (test_function): Remove all NaN related tests.
10886         * tests/test-printf-posix.output: Remove all NaN related results.
10887         Needed for IRIX 6.5.
10888
10889 2007-05-19  Bruno Haible  <bruno@clisp.org>
10890
10891         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
10892         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
10893
10894 2007-05-19  Bruno Haible  <bruno@clisp.org>
10895
10896         * lib/float_.h: New file.
10897         * m4/float_h.m4: New file.
10898         * modules/float: New file.
10899         * modules/isnanl (Dependencies): Add float.
10900         * modules/isnanl-nolibm (Dependencies): Likewise.
10901         * modules/mathl (Dependencies): Likewise.
10902         * modules/printf-frexpl (Dependencies): Likewise.
10903         * modules/signbit (Dependencies): Likewise.
10904         * modules/vasnprintf (Dependencies): Likewise.
10905         * doc/headers/float.texi: Update.
10906
10907 2007-05-19  Jim Meyering  <jim@meyering.net>
10908
10909         * lib/utimens.c (gl_futimens): Rename from futimens,
10910         now that glibc-2.6 declares futimens.
10911         * lib/utimens.h: Likewise.
10912
10913 2007-05-19  Bruno Haible  <bruno@clisp.org>
10914
10915         Avoid test failures on mingw.
10916         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
10917         * tests/test-printf-posix.sh: Likewise.
10918         * tests/test-vfprintf-posix.sh: Likewise.
10919         * tests/test-vprintf-posix.sh: Likewise.
10920
10921 2007-05-19  Bruno Haible  <bruno@clisp.org>
10922
10923         Fix *printf result for NaN, Inf, -0.0 on mingw.
10924         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
10925         * lib/vasnprintf.c: Include math.h and isnan.h.
10926         (is_infinite_or_zero): New function.
10927         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
10928         values in the %f, %F, %e, %E, %g, %G directives.
10929         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
10930         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
10931         gl_PRINTF_INFINITE and test its result. Invoke
10932         gl_PREREQ_VASNPRINTF_INFINITE.
10933         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
10934         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10935         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10936         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10937         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10938         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10939         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10940         * doc/functions/fprintf.texi: Update.
10941         * doc/functions/printf.texi: Update.
10942         * doc/functions/snprintf.texi: Update.
10943         * doc/functions/sprintf.texi: Update.
10944         * doc/functions/vfprintf.texi: Update.
10945         * doc/functions/vprintf.texi: Update.
10946         * doc/functions/vsnprintf.texi: Update.
10947         * doc/functions/vsprintf.texi: Update.
10948
10949 2007-05-19  Bruno Haible  <bruno@clisp.org>
10950
10951         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
10952         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
10953         Instead of multiplying with 10^k, set extra_zeroes to k.
10954         (scale10_round_long_double): Remove function.
10955
10956 2007-05-18  Bruno Haible  <bruno@clisp.org>
10957
10958         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
10959         introduced on 2007-05-06.
10960
10961 2007-05-18  Bruno Haible  <bruno@clisp.org>
10962
10963         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
10964         %g directives.
10965         * tests/test-vasprintf-posix.c (test_function): Likewise.
10966         * tests/test-snprintf-posix.h (test_function): Likewise.
10967         * tests/test-sprintf-posix.h (test_function): Likewise.
10968
10969 2007-05-18  Bruno Haible  <bruno@clisp.org>
10970
10971         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
10972         (strmatch): New function.
10973         (test_function): Test the %f directive on numbers of various exponents.
10974         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
10975         (strmatch): New function.
10976         (test_function): Test the %f directive on numbers of various exponents.
10977         * tests/test-snprintf-posix.h (strmatch): New function.
10978         (test_function): Test the %f directive on numbers of various exponents.
10979         * tests/test-sprintf-posix.h (strmatch): New function.
10980         (test_function): Test the %f directive on numbers of various exponents.
10981         * tests/test-snprintf-posix.c (SIZEOF): New macro.
10982         * tests/test-sprintf-posix.c (SIZEOF): New macro.
10983         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
10984         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
10985
10986 2007-05-18  Bruno Haible  <bruno@clisp.org>
10987
10988         Add support for 'long double' number output.
10989         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
10990         * lib/vasnprintf.c: Include math.h and float+.h.
10991         (mp_limb_t): New type.
10992         (GMP_LIMB_BITS): New macro.
10993         (mp_twolimb_t): New type.
10994         (GMP_TWOLIMB_BITS): New macro.
10995         (mpn_t): New type.
10996         (multiply, divide, convert_to_decimal, decode_long_double,
10997         scale10_round_long_double, scale10_round_decimal_long_double,
10998         floorlog10l): New functions.
10999         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
11000         for the %f, %F, %e, %E, %g, %G directives.
11001         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
11002         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11003         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
11004         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
11005         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11006         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11007         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11008         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11009         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11010         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11011         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11012         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
11013         * modules/snprintf-posix (Depends-on): Likewise.
11014         * modules/sprintf-posix (Depends-on): Likewise.
11015         * modules/vasnprintf-posix (Depends-on): Likewise.
11016         * modules/vasprintf-posix (Depends-on): Likewise.
11017         * modules/vfprintf-posix (Depends-on): Likewise.
11018         * modules/vsnprintf-posix (Depends-on): Likewise.
11019         * modules/vsprintf-posix (Depends-on): Likewise.
11020         * modules/vasnprintf (Files): Add lib/float+.h.
11021         * doc/functions/fprintf.texi: Update.
11022         * doc/functions/printf.texi: Update.
11023         * doc/functions/snprintf.texi: Update.
11024         * doc/functions/sprintf.texi: Update.
11025         * doc/functions/vfprintf.texi: Update.
11026         * doc/functions/vprintf.texi: Update.
11027         * doc/functions/vsnprintf.texi: Update.
11028         * doc/functions/vsprintf.texi: Update.
11029
11030 2007-05-18  Bruno Haible  <bruno@clisp.org>
11031
11032         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
11033
11034 2007-05-18  Bruno Haible  <bruno@clisp.org>
11035
11036         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
11037         for printing 64-bit integers. Needed for mingw.
11038
11039 2007-05-18  Bruno Haible  <bruno@clisp.org>
11040
11041         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
11042         gl_FUNC_FREXPL_WORKS.
11043         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
11044
11045 2007-05-18  Bruno Haible  <bruno@clisp.org>
11046
11047         * modules/frexpl-nolibm-tests: New file.
11048
11049         * modules/frexpl-nolibm: New file.
11050         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
11051
11052 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
11053
11054         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
11055         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
11056         GCC 4.2, which otherwise issues a lot of warnings.
11057         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
11058         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
11059         Likewise.
11060         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
11061         * modules/iconv_open (iconv.h): Likewise.
11062         * modules/locale (locale.h): Likewise.
11063         * modules/netinet_in (netinet/in.h): Likewise.
11064         * modules/sys_select (sys_select.h): Likewise.
11065         * modules/sys_socket (sys/socket.h): Likewise.
11066         * modules/sys_stat (sys/stat.h): Likewise.
11067         * modules/sysexits (sysexits.h): Likewise.
11068         * modules/unistd (unistd.h): Likewise.
11069
11070 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11071
11072         * modules/closein-tests (Makefile.am): Distribute
11073         `test-closein.sh'.
11074
11075 2007-05-17  Bruno Haible  <bruno@clisp.org>
11076
11077         * tests/test-printf-posix.output: Renamed from
11078         tests/test-fprintf-posix.out.
11079         * modules/fprintf-posix-tests: Update.
11080         * modules/printf-posix-tests: Update.
11081         * modules/vfprintf-posix-tests: Update.
11082         * modules/vprintf-posix-tests: Update.
11083         * tests/test-fprintf-posix.sh: Update.
11084         * tests/test-printf-posix.sh: Update.
11085         * tests/test-vfprintf-posix.sh: Update.
11086         * tests/test-vprintf-posix.sh: Update.
11087         Reported by Ralf Wildenhues.
11088
11089 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
11090
11091         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
11092         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
11093         GCC 4.2, which otherwise issues a lot of warnings.
11094         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
11095         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
11096         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
11097         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
11098         it should no longer be needed.
11099         * lib/string_.h: Likewise.
11100         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
11101         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
11102         * modules/inttypes (inttypes.h): Likewise.
11103         * modules/math (math.h): Likewise.
11104         * modules/search (search.h): Likewise.
11105         * modules/signal (signal.h): Likewise.
11106         * modules/stdint (stdint.h): Likewise.
11107         * modules/stdio (stdio.h): Likewise.
11108         * modules/stdlib (stdlib.h): Likewise.
11109         * modules/string (string.h): Likewise.
11110         * modules/sys_time (sys/time.h): Likewise.
11111         * modules/time (time.h): Likewise.
11112         * modules/wchar (wchar.h): Likewise.
11113         * modules/wctype (wtype.h): Likewise.
11114
11115 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
11116
11117         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
11118
11119 2007-05-13  Bruno Haible  <bruno@clisp.org>
11120
11121         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
11122         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
11123         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
11124         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
11125         (gl_PREREQ_STRTOK_R): Don't require it here.
11126
11127 2007-05-13  Bruno Haible  <bruno@clisp.org>
11128
11129         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
11130         when used in C++ mode.
11131
11132 2007-05-12  Bruno Haible  <bruno@clisp.org>
11133
11134         * lib/linebuffer.h: Tweak doc.
11135         * lib/linebuffer.c: Likewise.
11136
11137 2007-05-12  James Youngman  <jay@gnu.org>
11138
11139         * lib/linebuffer.c (readlinebuffer_delim): New function,
11140         like readlinebuffer, but use a caller-specified delimiter.
11141         (readlinebuffer): Just call readlinebuffer_delim with '\n'
11142         as the delimiter.
11143         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
11144
11145 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
11146
11147         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
11148         * modules/openat (Files): Remove openat-die.c.
11149         (Depends-on): Add openat-die.
11150         * modules/openat-die: New module.
11151
11152 2007-05-06  Bruno Haible  <bruno@clisp.org>
11153
11154         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
11155         Update with info about Cygwin.
11156         * doc/functions/fprintf.texi: Update.
11157         * doc/functions/printf.texi: Update.
11158         * doc/functions/snprintf.texi: Update.
11159         * doc/functions/sprintf.texi: Update.
11160         * doc/functions/vfprintf.texi: Update.
11161         * doc/functions/vprintf.texi: Update.
11162         * doc/functions/vsnprintf.texi: Update.
11163         * doc/functions/vsprintf.texi: Update.
11164         Reported by Eric Blake.
11165
11166 2007-05-06  Bruno Haible  <bruno@clisp.org>
11167
11168         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
11169         padding ourselves for the floating-point directives.
11170         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
11171         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
11172         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11173         gl_PRINTF_FLAG_ZERO and test its result. Invoke
11174         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
11175         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11176         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
11177         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11178         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11179         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11180         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11181         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11182         * tests/test-snprintf-posix.h (test_function): Also check the width
11183         and some flags in the %f directive.
11184         * tests/test-sprintf-posix.h (test_function): Likewise.
11185         * tests/test-vasnprintf-posix.c (test_function): Likewise.
11186         * tests/test-vasprintf-posix.c (test_function): Likewise.
11187         * doc/functions/fprintf.texi: Update.
11188         * doc/functions/printf.texi: Update.
11189         * doc/functions/snprintf.texi: Update.
11190         * doc/functions/sprintf.texi: Update.
11191         * doc/functions/vfprintf.texi: Update.
11192         * doc/functions/vprintf.texi: Update.
11193         * doc/functions/vsnprintf.texi: Update.
11194         * doc/functions/vsprintf.texi: Update.
11195
11196 2007-05-06  Bruno Haible  <bruno@clisp.org>
11197
11198         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
11199         pass the ' flag character to sprintf or snprintf.
11200         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
11201         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
11202         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11203         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
11204         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
11205         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11206         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
11207         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11208         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11209         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11210         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11211         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11212         * tests/test-snprintf-posix.h (test_function): Also check the grouping
11213         flag.
11214         * tests/test-sprintf-posix.h (test_function): Likewise.
11215         * tests/test-vasnprintf-posix.c (test_function): Likewise.
11216         * tests/test-vasprintf-posix.c (test_function): Likewise.
11217         * doc/functions/fprintf.texi: Update.
11218         * doc/functions/printf.texi: Update.
11219         * doc/functions/snprintf.texi: Update.
11220         * doc/functions/sprintf.texi: Update.
11221         * doc/functions/vfprintf.texi: Update.
11222         * doc/functions/vprintf.texi: Update.
11223         * doc/functions/vsnprintf.texi: Update.
11224         * doc/functions/vsprintf.texi: Update.
11225
11226 2007-05-01  Bruno Haible  <bruno@clisp.org>
11227
11228         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
11229
11230 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
11231
11232         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
11233         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
11234
11235 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
11236
11237         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
11238         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
11239         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
11240
11241 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
11242
11243         * lib/argp-help.c (struct hol_entry): New member `ord'.
11244         (HOL_ENTRY_PTRCMP): Use ord for comparison
11245         (hol_sort): Initialize ord.
11246
11247 2007-05-01  Bruno Haible  <bruno@clisp.org>
11248
11249         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
11250         Reported by Eric Blake.
11251         * doc/gnulib.texi (Function Substitutes): Update.
11252
11253 2007-05-01  Bruno Haible  <bruno@clisp.org>
11254
11255         * doc/functions.texi: Remove file, now redundant through
11256         doc/functions/*.texi.
11257
11258 2007-05-01  Bruno Haible  <bruno@clisp.org>
11259
11260         * modules/argp (Depends-on): Add sleep.
11261
11262 2007-05-01  Bruno Haible  <bruno@clisp.org>
11263
11264         * modules/sleep-tests: New file.
11265         * tests/test-sleep.c: New file.
11266
11267         * modules/sleep: New file.
11268         * lib/sleep.c: New file.
11269         * m4/sleep.m4: New file.
11270         * lib/unistd_.h (sleep): New declaration.
11271         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
11272         HAVE_SLEEP.
11273         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
11274         * doc/functions/sleep.texi: Document the sleep module.
11275
11276 2007-05-01  Bruno Haible  <bruno@clisp.org>
11277
11278         * lib/sigprocmask.h: Remove file.
11279         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
11280         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
11281         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
11282         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
11283         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
11284         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
11285         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
11286         HAVE_SIGSET_T as a shell variable.
11287         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
11288         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
11289         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
11290         (Depends-on): Add signal. Remove verify.
11291         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
11292         (Include): Mention <signal.h> instead of sigprocmask.h.
11293         * NEWS: Mention the change.
11294         * lib/fatal-signal.c: Don't include sigprocmask.h.
11295
11296 2007-05-01  Bruno Haible  <bruno@clisp.org>
11297
11298         * modules/signal: New file.
11299         * lib/signal_.h: New file.
11300         * m4/signal_h.m4: New file.
11301
11302 2007-05-01  Bruno Haible  <bruno@clisp.org>
11303
11304         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
11305         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
11306         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
11307         HAVE_WCTYPE_CTMP_BUG into wctype.h.
11308
11309 2007-05-01  Bruno Haible  <bruno@clisp.org>
11310
11311         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
11312         configure time.
11313         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
11314         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
11315         * modules/sys_stat (Makefile.am): Substitute their values into
11316         sys/stat.h.
11317
11318 2007-05-01  Bruno Haible  <bruno@clisp.org>
11319
11320         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
11321         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
11322         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
11323
11324 2007-05-01  Bruno Haible  <bruno@clisp.org>
11325
11326         * doc/header/assert.texi: Undo last change: don't mention the gnulib
11327         'assert' module here.
11328
11329 2007-05-01  Bruno Haible  <bruno@clisp.org>
11330
11331         * doc/functions/*.texi: New files.
11332         * doc/functions/google-ranking.txt: New file.
11333         * doc/gnulib.texi (Function Substitutes): New chapter.
11334         (ctime, inet_ntoa): Remove sections.
11335         * doc/ctime.texi: Remove file.
11336         * doc/inet_ntoa.texi: Remove file.
11337         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
11338         dependencies.
11339         (%.info): New rule, specifying a --reference-limit.
11340
11341 2007-05-01  Bruno Haible  <bruno@clisp.org>
11342
11343         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
11344
11345 2007-05-01  Bruno Haible  <bruno@clisp.org>
11346
11347         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
11348         the portability of 'mkdir' to mingw systems.
11349
11350 2007-05-01  Bruno Haible  <bruno@clisp.org>
11351
11352         * doc/headers/google-ranking.txt: New file.
11353
11354 2007-04-30  Eric Blake  <ebb9@byu.net>
11355
11356         Prefer fseeko to fseek.
11357         * modules/getpass (Depends-on): Add fseeko.
11358         * lib/getpass.c (getpass): Use fseeko, not fseek.
11359
11360 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
11361
11362         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
11363         assumes the sorting is stable, while most qsort implementations
11364         are not.  Use argument addresses to ensure they never compare as
11365         equal.
11366
11367         * tests/test-argp-2.sh (usage-indent test): Fix output
11368         (func_compare): Restore diff options
11369         * tests/test-argp.c: Restore #include "progname.h"
11370
11371 2007-04-29  Bruno Haible  <bruno@clisp.org>
11372
11373         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
11374         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11375         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
11376         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11377         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
11378         (configure.ac): Define CHECK_SNPRINTF_POSIX.
11379         (TESTS, check_PROGRAMS): Add test-snprintf.
11380         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
11381         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
11382         (TESTS, check_PROGRAMS): Add test-vsnprintf.
11383         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
11384         assertions that fail on HP-UX, OSF/1, or IRIX.
11385         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
11386
11387 2007-04-29  Bruno Haible  <bruno@clisp.org>
11388
11389         * MODULES.html.sh (posix_functions): Remove 'contents'.
11390
11391 2007-04-29  Karl Berry  <karl@gnu.org>
11392
11393         * config/srclist.txt (gendocs_template_min): new entry.
11394
11395 2007-04-29  Bruno Haible  <bruno@clisp.org>
11396
11397         Work around fpurge bug on BSD systems.
11398         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
11399         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
11400         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
11401         fpurge to rpl_fpurge if the system already has this function.
11402         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
11403         the case where the system already has this function. Correct invariants
11404         on BSD systems.
11405         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
11406         BSD systems.
11407
11408 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
11409
11410         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
11411         proposed by Sven Verdoolaege.
11412
11413         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
11414         options.
11415         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
11416         (usage and help tests): Update
11417
11418 2007-04-29  Bruno Haible  <bruno@clisp.org>
11419
11420         * tests/test-fflush.c (main): Use a file of size 17, not 10.
11421         Print more information in case of failure. Disable a test on BeOS.
11422
11423 2007-04-29  Bruno Haible  <bruno@clisp.org>
11424
11425         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
11426         This helps debugging on systems on which no gdb is available.
11427
11428 2007-04-29  Bruno Haible  <bruno@clisp.org>
11429
11430         * lib/freading.h: Improve comments.
11431         * lib/fwriting.h: Likewise.
11432         * tests/test-freading.c (main): Don't check freading immediately after
11433         repositioning. Needed for glibc.
11434
11435 2007-04-29  Bruno Haible  <bruno@clisp.org>
11436
11437         * lib/freading.c (freading): Trivial simplification.
11438
11439 2007-04-28  Bruno Haible  <bruno@clisp.org>
11440
11441         * tests/test-fwriting.c (main): Also test the interaction between
11442         fflush and fwriting.
11443         * modules/fwriting-tests (Depends-on): Add fflush.
11444
11445         * tests/test-freading.c (main): Also test the interaction between
11446         fflush and freading.
11447         * modules/freading-tests (Depends-on): Add fflush.
11448
11449 2007-04-28  Bruno Haible  <bruno@clisp.org>
11450
11451         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
11452         fseeko and ftello.
11453         Suggested by Eric Blake.
11454
11455 2007-04-28  Jim Meyering  <jim@meyering.net>
11456
11457         Avoid false-negative in gl_STDINT_H's C99 conformance test.
11458         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
11459         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
11460
11461 2007-04-27  Eric Blake  <ebb9@byu.net>
11462
11463         * doc/headers/assert.texi (assert.h): Document assert module use.
11464
11465 2007-04-27  Bruno Haible  <bruno@clisp.org>
11466
11467         * doc/headers/*.texi: New files.
11468         * doc/gnulib.texi (Header File Substitutes): New chapter.
11469         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
11470         dependencies.
11471         (standards.info ,standards.html, standards.dvi): Update dependencies.
11472         (mostlyclean, clean): New targets.
11473
11474 2007-04-27  Bruno Haible  <bruno@clisp.org>
11475
11476         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
11477         * modules/sysexits (Files, Makefile.am): Update.
11478
11479         * lib/sys_socket_.h: Renamed from lib/socket_.h.
11480         * modules/sys_socket (Files, Makefile.am): Update.
11481
11482         * lib/sys_stat_.h: Renamed from lib/stat_.h.
11483         * modules/sys_stat (Files, Makefile.am): Update.
11484
11485 2007-04-27  Eric Blake  <ebb9@byu.net>
11486
11487         * lib/freading.h: Improve comments.
11488         * lib/fwriting.h: Likewise.
11489         * lib/fflush.c: Likewise.
11490
11491         Fix closein for mingw.
11492         * modules/closein-tests: Add tests for closein.
11493         * tests/test-closein.c: New file.
11494         * tests/test-closein.sh: Likewise.
11495         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
11496         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
11497
11498 2007-04-27  Bruno Haible  <bruno@clisp.org>
11499
11500         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
11501         version is < 6.
11502         * lib/math_.h [__DECC]: Likewise.
11503         * lib/stdio_.h [__DECC]: Likewise.
11504         * lib/stdlib_.h [__DECC]: Likewise.
11505         * lib/string_.h [__DECC]: Likewise.
11506         * lib/time_.h [__DECC]: Likewise.
11507         * lib/wchar_.h [__DECC]: Likewise.
11508         * lib/wctype_.h [__DECC]: Likewise.
11509
11510 2007-04-27  Bruno Haible  <bruno@clisp.org>
11511
11512         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
11513
11514 2007-04-27  Bruno Haible  <bruno@clisp.org>
11515
11516         * lib/fflush.c: Add comments.
11517         * modules/fpurge-tests (Depends-on): Add fflush.
11518         * modules/freadable-tests (Depends-on): Likewise.
11519         * modules/fwritable-tests (Depends-on): Likewise.
11520
11521 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
11522
11523         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
11524         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
11525         Report by Bruno Haible <bruno@clisp.org>.
11526
11527 2007-04-26  Eric Blake  <ebb9@byu.net>
11528
11529         Fix fflush on mingw.
11530         * modules/fflush (Depends-on): Add freading.
11531         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
11532         but unread data.
11533
11534 2007-04-26  Eric Blake  <ebb9@byu.net>
11535         and Bruno Haible  <bruno@clisp.org>
11536
11537         Implement freading and fwriting.
11538         * lib/freading.c: New file.
11539         * lib/freading.h: Likewise.
11540         * m4/freading.m4: Likewise.
11541         * modules/freading: Likewise.
11542         * modules/freading-tests: Likewise.
11543         * tests/test-freading.c: Likewise.
11544         * lib/fwriting.c: New file.
11545         * lib/fwriting.h: Likewise.
11546         * m4/fwriting.m4: Likewise.
11547         * modules/fwriting: Likewise.
11548         * modules/fwriting-tests: Likewise.
11549         * tests/test-fwriting.c: Likewise.
11550         * MODULES.html.sh (File stream based Input/Output): Mention them.
11551
11552 2007-04-26  Bruno Haible  <bruno@clisp.org>
11553
11554         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
11555         'long' when we assume it.
11556         Suggested by Eric Blake.
11557
11558 2007-04-26  Bruno Haible  <bruno@clisp.org>
11559
11560         Ensure fseeko, ftello are declared on glibc systems.
11561         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
11562         * modules/fseeko (configure.ac-early): Likewise.
11563         * modules/ftello (configure.ac-early): Likewise.
11564         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
11565         AC_FUNC_FSEEKO for this.
11566         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
11567         (gl_CHECK_FSEEKO): Remove macro.
11568
11569 2007-04-26  Bruno Haible  <bruno@clisp.org>
11570
11571         * tests/test-fflush.c (main): Also check the ftell result after
11572         fflush and fseek/fseeko.
11573         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
11574         file descriptor position cache in the stream.
11575         * lib/fseeko.c (rpl_fseeko): Likewise.
11576
11577 2007-04-26  Bruno Haible  <bruno@clisp.org>
11578
11579         * modules/fflush-tests (Depends-on): Add fseeko.
11580
11581 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
11582             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11583
11584         * lib/argz_.h: ensure error_t definition is obtained in same
11585         mechanism system argz.h would have.
11586         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
11587         argz facilities are known bad.  Err on the side of caution if
11588         cross-compiling.
11589
11590 2007-04-25  Eric Blake  <ebb9@byu.net>
11591
11592         * lib/fpurge.c (includes): Use stdlib.h for free.
11593         * tests/test-fflush.c (main): Also test fflush-fseeko.
11594
11595 2007-04-25  Bruno Haible  <bruno@clisp.org>
11596
11597         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
11598         * lib/fseeko.c: New file.
11599         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
11600         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
11601         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
11602         gl_FUNC_FSEEKO.
11603         (gl_FUNC_FSEEKO): Invoke it.
11604         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
11605         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
11606         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
11607
11608 2007-04-25  Bruno Haible  <bruno@clisp.org>
11609
11610         * modules/fflush (Depends-on): Add ftello.
11611
11612 2007-04-25  Bruno Haible  <bruno@clisp.org>
11613
11614         * modules/ftello-tests: New file.
11615         * tests/test-ftello.c: New file.
11616
11617         * modules/ftello: New file.
11618         * m4/ftello.m4: New file.
11619         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
11620         HAVE_FTELLO.
11621         * lib/stdio_.h (ftello): New declaration.
11622         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
11623         HAVE_FTELLO.
11624
11625 2007-04-25  Bruno Haible  <bruno@clisp.org>
11626
11627         * modules/fseeko-tests: New file.
11628         * tests/test-fseeko.c: New file.
11629
11630         * modules/fseeko: New file.
11631         * m4/fseeko.m4: New file.
11632         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
11633         HAVE_FSEEKO.
11634         * lib/stdio_.h (fseeko): New declaration.
11635         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
11636         HAVE_FSEEKO.
11637
11638 2007-04-25  Bruno Haible  <bruno@clisp.org>
11639
11640         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
11641
11642 2007-04-25  Bruno Haible  <bruno@clisp.org>
11643
11644         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
11645         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
11646         * tests/test-unistd.c: Likewise.
11647         * tests/test-fcntl.c: Likewise.
11648
11649 2007-04-23  Eric Blake  <ebb9@byu.net>
11650
11651         * lib/fflush.c: Fix missing include.
11652         Reported by Bruno Haible.
11653
11654 2007-04-23  Bruno Haible  <bruno@clisp.org>
11655
11656         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
11657         Reported by Eric Blake.
11658
11659 2007-04-23  Bruno Haible  <bruno@clisp.org>
11660
11661         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
11662
11663 2007-04-23  Bruno Haible  <bruno@clisp.org>
11664
11665         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
11666
11667 2007-04-23  Bruno Haible  <bruno@clisp.org>
11668
11669         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
11670         Needed on HP-UX 11.
11671
11672 2007-04-16  Eric Blake  <ebb9@byu.net>
11673
11674         Make fflush rely on fpurge.
11675         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
11676         open coding all variants.
11677         * modules/fflush (Depends-on): Add fpurge and unistd.
11678         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
11679         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
11680
11681         Fix --with-tests compilation on cygwin.
11682         * modules/argmatch-tests (Makefile.am): List gnulib library first
11683         in LDADD.
11684         * modules/argp-tests (Makefile.am): Likewise.
11685         * modules/array-list-tests (Makefile.am): Likewise.
11686         * modules/array-oset-tests (Makefile.am): Likewise.
11687         * modules/avltree-list-tests (Makefile.am): Likewise.
11688         * modules/avltree-oset-tests (Makefile.am): Likewise.
11689         * modules/avltreehash-list-tests (Makefile.am): Likewise.
11690         * modules/carray-list-tests (Makefile.am): Likewise.
11691         * modules/dirname-tests (Makefile.am): Likewise.
11692         * modules/frexp-tests (Makefile.am): Likewise.
11693         * modules/isnanl-tests (Makefile.am): Likewise.
11694         * modules/linked-list-tests (Makefile.am): Likewise.
11695         * modules/linkedhash-list-tests (Makefile.am): Likewise.
11696         * modules/lock-tests (Makefile.am): Likewise.
11697         * modules/rbtree-list-tests (Makefile.am): Likewise.
11698         * modules/rbtree-oset-tests (Makefile.am): Likewise.
11699         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
11700         * modules/tls-tests (Makefile.am): Likewise.
11701         * modules/tsearch-tests (Makefile.am): Likewise.
11702         * modules/xvasprintf-tests (Makefile.am): Likewise.
11703
11704         Fix fpurge for cygwin.
11705         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
11706         value.
11707         * modules/fpurge-tests (Depends-on): Clean up trash.
11708
11709 2007-04-16  Simon Josefsson  <simon@josefsson.org>
11710
11711         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
11712
11713         * m4/autobuild.m4: Re-indent.
11714
11715 2007-04-13  Bruno Haible  <bruno@clisp.org>
11716
11717         * modules/fpurge-tests: New file.
11718         * tests/test-fpurge.c: New file.
11719
11720         * modules/fpurge: New file.
11721         * lib/fpurge.h: New file.
11722         * lib/fpurge.c: New file.
11723         * m4/fpurge.m4: New file.
11724
11725 2007-04-13  Bruno Haible  <bruno@clisp.org>
11726
11727         * modules/fbufmode-tests: New file.
11728         * tests/test-fbufmode.c: New file.
11729
11730         * modules/fbufmode: New file.
11731         * lib/fbufmode.h: New file.
11732         * lib/fbufmode.c: New file.
11733         * m4/fbufmode.m4: New file.
11734
11735 2007-04-13  Bruno Haible  <bruno@clisp.org>
11736
11737         * modules/fwritable-tests: New file.
11738         * tests/test-fwritable.c: New file.
11739
11740         * modules/fwritable: New file.
11741         * lib/fwritable.h: New file.
11742         * lib/fwritable.c: New file.
11743         * m4/fwritable.m4: New file.
11744
11745 2007-04-13  Bruno Haible  <bruno@clisp.org>
11746
11747         * modules/freadable-tests: New file.
11748         * tests/test-freadable.c: New file.
11749
11750         * modules/freadable: New file.
11751         * lib/freadable.h: New file.
11752         * lib/freadable.c: New file.
11753         * m4/freadable.m4: New file.
11754
11755 2007-04-13  Bruno Haible  <bruno@clisp.org>
11756
11757         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
11758         MOSTLYCLEANFILES.
11759
11760 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
11761
11762         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
11763         gzip bootstrap.conf to avoid dragging in i18n machinery.
11764         (gnulib_tool_option): Use it.
11765
11766 2007-04-13  Bruno Haible  <bruno@clisp.org>
11767
11768         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
11769         %F directives.
11770         * tests/test-vasprintf-posix.c (test_function): Likewise.
11771         * tests/test-snprintf-posix.h (test_function): Likewise.
11772         * tests/test-sprintf-posix.h (test_function): Likewise.
11773         * tests/test-fprintf-posix.h (test_function): Likewise.
11774         * tests/test-printf-posix.h (test_function): Likewise.
11775         * tests/test-fprintf-posix.out: Likewise.
11776
11777 2007-04-13  Bruno Haible  <bruno@clisp.org>
11778
11779         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
11780         * modules/tls-tests (configure.ac): Likewise.
11781         Reported by Arto C. Nirkko <anirkko@insel.ch>.
11782
11783 2007-04-13  Bruno Haible  <bruno@clisp.org>
11784
11785         * lib/tls.c (glthread_tls_get): Fix return type.
11786         Patch by Arto C. Nirkko <anirkko@insel.ch>.
11787
11788 2007-04-12  Eric Blake  <ebb9@byu.net>
11789
11790         * modules/gettime (Depends-on): Remove gettime.
11791         Reported by Dmitry V. Levin.
11792
11793 2007-04-12  Bruno Haible  <bruno@clisp.org>
11794
11795         * modules/fflush (Include): Mention <stdio.h>.
11796         * modules/strtoimax (Include): Mention <inttypes.h>.
11797         * modules/strtoumax (Include): Likewise.
11798
11799 2007-04-12  Eric Blake  <ebb9@byu.net>
11800
11801         * .cvsignore: New file.
11802         * .gitignore: Likewise.
11803
11804 2007-04-12  Bruno Haible  <bruno@clisp.org>
11805
11806         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
11807         not before, since $(LDADD) often contains libgnu.a.
11808         * modules/striconv-tests (test_striconv_LDADD): Likewise.
11809         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
11810         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
11811         Needed on Cygwin.
11812
11813 2007-04-12  Eric Blake  <ebb9@byu.net>
11814
11815         Work around glibc's failure to flush stdin on fclose.
11816         * lib/closein.c (close_stdin): Flush stdin before closing.
11817
11818         Work around glibc's failure to reset seekable stdin on exit.
11819         * modules/closein: New module.
11820         * lib/closein.c: New file.
11821         * lib/closein.h: Likewise.
11822         * m4/closein.m4: Likewise.
11823         * MODULES.html.sh (File stream based Input/Output): Document it.
11824
11825 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11826
11827         * gnulib-tool: Rename generated 'autobuild' script to
11828         'do-autobuild' in --create-megatestdir output.
11829
11830         * doc/gnulib.texi (Build robot for gnulib): Fix.
11831
11832 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11833
11834         * modules/sysexits (Depends-on): Add absolute-header.
11835
11836 2007-04-12  Eric Blake  <ebb9@byu.net>
11837
11838         No need to preserve errno on success.
11839         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
11840         Reported by Bruno Haible.
11841
11842 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11843
11844         * MODULES.html.sh (Support for maintaining and releasing
11845         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
11846
11847 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11848
11849         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
11850
11851 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11852
11853         * modules/autobuild: New module.
11854
11855         * m4/autobuild.m4: New file.
11856
11857 2007-04-11  Bruno Haible  <bruno@clisp.org>
11858
11859         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
11860         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
11861         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
11862         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
11863         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11864         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11865         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11866         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11867         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11868         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11869         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
11870         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11871         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11872         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
11873         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11874         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11875         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
11876         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11877         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11878         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
11879         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11880         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11881         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
11882         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11883         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11884         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
11885         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11886         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11887         Reported by Eric Blake.
11888
11889 2007-04-11  Bruno Haible  <bruno@clisp.org>
11890
11891         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
11892
11893 2007-04-10  Bruno Haible  <bruno@clisp.org>
11894
11895         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
11896         for NaN and Infinity. Needed on FreeBSD 6.1.
11897         * tests/test-vasnprintf-posix.c (test_function): Undo last change
11898         regarding results for "%010a" of Infinity and NaN.
11899         * tests/test-vasprintf-posix.c (test_function): Likewise.
11900         * tests/test-snprintf-posix.h (test_function): Likewise.
11901         * tests/test-sprintf-posix.h (test_function): Likewise.
11902         * tests/test-fprintf-posix.h (test_function): Likewise.
11903         * tests/test-printf-posix.h (test_function): Likewise.
11904         * tests/test-fprintf-posix.out: Likewise.
11905
11906 2007-04-10  Bruno Haible  <bruno@clisp.org>
11907
11908         * modules/locale-tests: New file.
11909         * tests/test-locale.c: New file.
11910
11911         * modules/locale: New file.
11912         * lib/locale_.h: New file.
11913         * m4/locale_h.m4: New file.
11914
11915 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
11916             Bruno Haible  <bruno@clisp.org>
11917
11918         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
11919         be determined, test for availability of the copysignf, copysign,
11920         copysignl functions.
11921         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
11922         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
11923         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
11924
11925 2007-04-09  Eric Blake  <ebb9@byu.net>
11926
11927         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
11928         * modules/stdio (Makefile.am): Support fflush.
11929         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
11930         * modules/fflush: New file.
11931         * lib/fflush.c: Likewise.
11932         * m4/fflush.m4: Likewise.
11933         * modules/fflush-tests: New test.
11934         * tests/test-fflush.c: Likewise.
11935         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
11936
11937 2007-04-06  Bruno Haible  <bruno@clisp.org>
11938
11939         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
11940         (VASNPRINTF): Use signbit for faster determination whether to print a
11941         minus sign.
11942         * modules/vasnprintf (Files): Remove lib/float+.h.
11943         * modules/fprintf-posix (Depends-on): Add signbit.
11944         * modules/snprintf-posix (Depends-on): Likewise.
11945         * modules/sprintf-posix (Depends-on): Likewise.
11946         * modules/vasnprintf-posix (Depends-on): Likewise.
11947         * modules/vasprintf-posix (Depends-on): Likewise.
11948         * modules/vfprintf-posix (Depends-on): Likewise.
11949         * modules/vsnprintf-posix (Depends-on): Likewise.
11950         * modules/vsprintf-posix (Depends-on): Likewise.
11951
11952 2007-04-06  Bruno Haible  <bruno@clisp.org>
11953
11954         * tests/test-frexp.c (main): Test also the sign bit of zero results.
11955         * tests/test-frexpl.c (main): Likewise.
11956         * tests/test-ldexpl.c (main): Likewise.
11957         * modules/frexp-tests (Depends-on): Add signbit.
11958         * modules/frexpl-tests (Depdends-on): Likewise.
11959         * modules/ldexpl-tests (Depdends-on): Likewise.
11960
11961 2007-04-06  Bruno Haible  <bruno@clisp.org>
11962
11963         * modules/signbit-tests: New file.
11964         * tests/test-signbit.c: New file.
11965
11966         * modules/signbit: New file.
11967         * lib/signbitf.c: New file.
11968         * lib/signbitd.c: New file.
11969         * lib/signbitl.c: New file.
11970         * m4/signbit.m4: New file.
11971         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
11972         (signbit): New macro.
11973         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
11974         REPLACE_SIGNBIT.
11975         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
11976         REPLACE_FREXPL into math.h.
11977
11978 2007-04-06  Bruno Haible  <bruno@clisp.org>
11979
11980         * modules/isnanf-nolibm-tests: New file.
11981         * tests/test-isnanf.c: New file.
11982
11983         * modules/isnanf-nolibm: New file.
11984         * lib/isnanf.h: New file.
11985         * lib/isnanf.c: New file.
11986         * lib/isnan.c: Consider the USE_FLOAT macro.
11987         * m4/isnanf.m4: New file.
11988
11989 2007-04-06  Bruno Haible  <bruno@clisp.org>
11990
11991         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
11992         (Link): New section.
11993
11994         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
11995
11996 2007-04-06  Bruno Haible  <bruno@clisp.org>
11997
11998         Assume the 'long double' type.
11999         * m4/longdouble.m4: Remove file.
12000         * config/srclist.txt: Don't mention longdouble.m4.
12001         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
12002         * lib/float+.h: Likewise.
12003         * lib/frexp.c: Likewise.
12004         * lib/printf-args.h: Likewise.
12005         * lib/printf-args.c: Likewise.
12006         * lib/printf-frexp.c: Likewise.
12007         * lib/printf-parse.c: Likewise.
12008         * lib/vasnprintf.c: Likewise.
12009         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
12010         * m4/intl.m4: Likewise.
12011         * m4/isnanl.m4: Likewise.
12012         * m4/printf.m4: Likewise.
12013         * m4/printf-frexpl.m4: Likewise.
12014         * m4/vasnprintf.m4: Likewise.
12015         * modules/allocsa (Files): Remove m4/longdouble.m4.
12016         * modules/gettext (Files): Likewise.
12017         * modules/relocatable-prog-wrapper (Files): Likewise.
12018         * modules/vasnprintf (Files): Likewise.
12019         * modules/isnanl (Files): Likewise.
12020         (Include): Simplify.
12021         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
12022         (Include): Simplify.
12023         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
12024         (Include): Simplify.
12025         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
12026         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12027         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
12028         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12029         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
12030         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12031         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
12032         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12033         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
12034         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12035         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
12036         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12037         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
12038         * tests/test-isnanl.c: Likewise.
12039         * tests/test-snprintf-posix.h: Likewise.
12040         * tests/test-sprintf-posix.h: Likewise.
12041         * tests/test-vasnprintf-posix.c: Likewise.
12042         * tests/test-vasnprintf-posix2.c: Likewise.
12043         * tests/test-vasprintf-posix.c: Likewise.
12044
12045 2007-04-06  Bruno Haible  <bruno@clisp.org>
12046
12047         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
12048         * lib/math_.h [__DECC]: Include the overridden include file through
12049         #include_next, outside the double-inclusion guard.
12050         * lib/stdio_.h [__DECC]: Likewise.
12051         * lib/stdlib_.h [__DECC]: Likewise.
12052         * lib/string_.h [__DECC]: Likewise.
12053         * lib/time_.h [__DECC]: Likewise.
12054         * lib/wchar_.h [__DECC]: Likewise.
12055         * lib/wctype_.h [__DECC]: Likewise.
12056         * lib/inttypes_.h [__DECC]: Likewise.
12057         Reported by Albert Chin <china@thewrittenword.com> in
12058         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
12059
12060 2007-04-04  Eric Blake  <ebb9@byu.net>
12061
12062         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
12063         1.5.x.
12064
12065 2007-04-04  Bruno Haible  <bruno@clisp.org>
12066
12067         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
12068         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
12069
12070 2007-04-04  Bruno Haible  <bruno@clisp.org>
12071
12072         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
12073         results for "%010a" of Infinity and NaN.
12074         * tests/test-vasprintf-posix.c (test_function): Likewise.
12075         * tests/test-snprintf-posix.h (test_function): Likewise.
12076         * tests/test-sprintf-posix.h (test_function): Likewise.
12077         * tests/test-fprintf-posix.h (test_function): Remove these tests.
12078         * tests/test-printf-posix.h (test_function): Likewise.
12079         * tests/test-fprintf-posix.out: Update.
12080         Needed for FreeBSD 6.1.
12081
12082 2007-04-04  Bruno Haible  <bruno@clisp.org>
12083
12084         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
12085         directly used by the gnulib modules nor by gnulib-tool.
12086
12087 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
12088
12089         * DEPENDENCIES: Give overall description of version dependency
12090         desirability.  Use more-typical names for apps.
12091         Add shell, coreutils, diffutils, grep, tar, gzip.
12092
12093 2007-04-04  Simon Josefsson  <simon@josefsson.org>
12094
12095         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
12096
12097 2007-04-04  Karl Berry  <karl@gnu.org>
12098
12099         * MODULES.html.sh (func_module): missing '.
12100
12101 2007-04-03  Bruno Haible  <bruno@clisp.org>
12102
12103         * modules/argmatch-tests (Makefile.am): New variable
12104         test_argmatch_LDADD.
12105         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
12106         * modules/array-list-tests (Makefile.am): New variable
12107         test_array_list_LDADD.
12108         * modules/array-oset-tests (Makefile.am): New variable
12109         test_array_oset_LDADD.
12110         * modules/avltree-list-tests (Makefile.am): New variable
12111         test_avltree_list_LDADD.
12112         * modules/avltree-oset-tests (Makefile.am): New variable
12113         test_avltree_oset_LDADD.
12114         * modules/avltreehash-list-tests (Makefile.am): New variable
12115         test_avltreehash_list_LDADD.
12116         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
12117         test_canonicalize_lgpl_LDADD.
12118         * modules/carray-list-tests (Makefile.am): New variable
12119         test_carray_list_LDADD.
12120         * modules/dirname-tests (Makefile.am): New variable
12121         test_dirname_LDADD.
12122         * modules/linked-list-tests (Makefile.am): New variable
12123         test_linked_list_LDADD.
12124         * modules/linkedhash-list-tests (Makefile.am): New variable
12125         test_linkedhash_list_LDADD.
12126         * modules/rbtree-list-tests (Makefile.am): New variable
12127         test_rbtree_list_LDADD.
12128         * modules/rbtree-oset-tests (Makefile.am): New variable
12129         test_rbtree_oset_LDADD.
12130         * modules/rbtreehash-list-tests (Makefile.am): New variable
12131         test_rbtreehash_list_LDADD.
12132         * modules/xvasprintf-tests (Makefile.am): New variable
12133         test_xvasprintf_LDADD.
12134         Reported by Eric Blake.
12135
12136 2007-04-03  Eric Blake  <ebb9@byu.net>
12137
12138         * DEPENDENCIES: Weaken m4 requirements.
12139
12140 2007-04-03  Bruno Haible  <bruno@clisp.org>
12141
12142         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
12143         * modules/isnanl-tests (configure.ac): Likewise.
12144
12145 2007-04-03  Ben Pfaff  <blp@gnu.org>
12146
12147         * modules/iconv_open: Add $(srcdir)/ to source directory
12148         references in Makefile fragments that call gperf, to fix VPATH
12149         builds.
12150
12151 2007-04-03  Bruno Haible  <bruno@clisp.org>
12152
12153         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
12154         * lib/ldexpl.c: Undo last change.
12155
12156 2007-04-03  Bruno Haible  <bruno@clisp.org>
12157
12158         * modules/printf-frexpl (Depends-on): Undo last change.
12159         (Files): Add m4/ldexpl.m4.
12160
12161 2007-04-03  Bruno Haible  <bruno@clisp.org>
12162
12163         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
12164         * modules/isnanl (Link): New section.
12165
12166         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
12167         * modules/frexp (Link): New section.
12168
12169         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
12170         * modules/frexpl (Link): New section.
12171
12172         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
12173         * modules/ldexpl (Link): New section.
12174
12175 2007-04-03  Bruno Haible  <bruno@clisp.org>
12176
12177         * modules/TEMPLATE-EXTENDED: New file.
12178         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
12179
12180 2007-04-03  Bruno Haible  <bruno@clisp.org>
12181
12182         * DEPENDENCIES: New file.
12183         Suggested by Simon Josefsson.
12184
12185 2007-04-03  Bruno Haible  <bruno@clisp.org>
12186
12187         * doc/gnulib.texi: Escape @.
12188
12189 2007-04-03  James Youngman  <jay@gnu.org>
12190         and Paul Eggert  <eggert@cs.ucla.edu>
12191
12192         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
12193         birthtime on all systems that have birthtime, not just those which
12194         use st_birthtimensec rather than st_birthtim.  Putting zero in
12195         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
12196         that the birth time is not available for files on an NFS mount.
12197
12198 2007-04-03  Simon Josefsson  <simon@josefsson.org>
12199
12200         * modules/memxor: Move back from crypto/, suggested by Bruno.
12201         * modules/crypto/hmac-sha1: Fix memxor dependency.
12202
12203         * modules/crypto/gc: Moved from ../.
12204
12205 2007-04-02  Eric Blake  <ebb9@byu.net>
12206
12207         * lib/ldexpl.c (includes): Avoid libm.
12208
12209         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
12210
12211 2007-04-02  Bruno Haible  <bruno@clisp.org>
12212
12213         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
12214         on IRIX.
12215
12216 2007-04-02  Bruno Haible  <bruno@clisp.org>
12217
12218         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
12219         x86 or x86_64 platforms running MacOS X.
12220         Reported by Ryan Schmidt <@ryandesign.com>.
12221
12222 2007-04-02  Bruno Haible  <bruno@clisp.org>
12223
12224         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
12225         i386.
12226
12227 2007-04-01  Simon Josefsson  <simon@josefsson.org>
12228
12229         * modules/crypto/arcfour: Moved from ../.
12230         * modules/crypto/arcfour-tests: Moved from ../.
12231         * modules/crypto/arctwo: Moved from ../.
12232         * modules/crypto/arctwo-tests: Moved from ../.
12233         * modules/crypto/des: Moved from ../.
12234         * modules/crypto/des-tests: Moved from ../.
12235         * modules/crypto/gc-arcfour: Moved from ../.
12236         * modules/crypto/gc-arcfour-tests: Moved from ../.
12237         * modules/crypto/gc-arctwo: Moved from ../.
12238         * modules/crypto/gc-arctwo-tests: Moved from ../.
12239         * modules/crypto/gc-des: Moved from ../.
12240         * modules/crypto/gc-des-tests: Moved from ../.
12241         * modules/crypto/gc-hmac-md5: Moved from ../.
12242         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
12243         * modules/crypto/gc-hmac-sha1: Moved from ../.
12244         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
12245         * modules/crypto/gc-md2: Moved from ../.
12246         * modules/crypto/gc-md2-tests: Moved from ../.
12247         * modules/crypto/gc-md4: Moved from ../.
12248         * modules/crypto/gc-md4-tests: Moved from ../.
12249         * modules/crypto/gc-md5: Moved from ../.
12250         * modules/crypto/gc-md5-tests: Moved from ../.
12251         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
12252         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
12253         * modules/crypto/gc-random: Moved from ../.
12254         * modules/crypto/gc-rijndael: Moved from ../.
12255         * modules/crypto/gc-rijndael-tests: Moved from ../.
12256         * modules/crypto/gc-sha1: Moved from ../.
12257         * modules/crypto/gc-sha1-tests: Moved from ../.
12258         * modules/crypto/gc-tests: Moved from ../.
12259         * modules/crypto/hmac-md5: Moved from ../.
12260         * modules/crypto/hmac-md5-tests: Moved from ../.
12261         * modules/crypto/hmac-sha1: Moved from ../.
12262         * modules/crypto/hmac-sha1-tests: Moved from ../.
12263         * modules/crypto/md2: Moved from ../.
12264         * modules/crypto/md2-tests: Moved from ../.
12265         * modules/crypto/md4: Moved from ../.
12266         * modules/crypto/md4-tests: Moved from ../.
12267         * modules/crypto/md5: Moved from ../.
12268         * modules/crypto/md5-tests: Moved from ../.
12269         * modules/crypto/memxor: Moved from ../.
12270         * modules/crypto/rijndael: Moved from ../.
12271         * modules/crypto/rijndael-tests: Moved from ../.
12272         * modules/crypto/sha1: Moved from ../.
12273
12274 2007-03-30  James Youngman  <jay@gnu.org>
12275
12276         * tests/test-stat-time.c (prepare_test): use chmod() rather than
12277         rename() to change the ctime of a file (because ctime is unaffected
12278         by rename on jfs2 on AIX 5.1).
12279         (main): Start by doing cleanup, in case a previous run failed leaving
12280         test files behind.
12281
12282 2007-03-31  Bruno Haible  <bruno@clisp.org>
12283
12284         Support old proprietary implementations of iconv.
12285         * modules/iconv_open: New file.
12286         * lib/iconv_.h: New file.
12287         * m4/iconv_h.m4: New file.
12288         * lib/iconv_open.c: New file.
12289         * lib/iconv_open-aix.gperf: New file.
12290         * lib/iconv_open-hpux.gperf: New file.
12291         * lib/iconv_open-irix.gperf: New file.
12292         * lib/iconv_open-osf.gperf: New file.
12293         * m4/iconv_open.m4: New file.
12294         * modules/linebreak (Depends-on): Add iconv_open.
12295         * modules/striconv (Depends-on): Likewise.
12296         * modules/striconveh (Depends-on): Likewise.
12297         * modules/unicodeio (Depends-on): Likewise.
12298         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
12299         (iconv_t)(-1).
12300         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
12301         conversion if cd is (iconv_t)(-1).
12302         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
12303         is not possible.
12304
12305 2007-03-31  Bruno Haible  <bruno@clisp.org>
12306
12307         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
12308         work on Solaris either. Protect also second use of "autodetect_jp".
12309
12310 2007-03-31  Bruno Haible  <bruno@clisp.org>
12311
12312         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
12313         the function is not present.
12314
12315 2007-03-31  Bruno Haible  <bruno@clisp.org>
12316
12317         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
12318         the function is not present.
12319
12320 2007-03-31  Bruno Haible  <bruno@clisp.org>
12321
12322         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
12323         a bug in HP-UX iconv_open().
12324
12325 2007-03-31  Bruno Haible  <bruno@clisp.org>
12326
12327         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
12328         (Mathematics <math.h>): New section, add fpieee.
12329         (Input/output <stdio.h>): Add fseterr.
12330         (Mathematics <math.h>): New section, add printf-frexp.
12331         (Container data structures): Add sublist.
12332         (Core language properties): Add fpucw, inline.
12333         (Functions for greatest-width integer types <inttypes.h>): Add
12334         imaxabs, imaxdiv, inttypes.
12335         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
12336         isnanl-nolibm, ldexp.
12337         (Mathematics <math.h>): New section, add printf-frexpl.
12338         (Support for systems lacking POSIX:2001): Add fprintf-posix,
12339         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
12340         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
12341         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
12342         (Unicode string functions): Add unistr/u*-mbtoucr.
12343         (Java): Add javacomp-script, javaexec-script.
12344         (C#): Add csharpcomp-script, csharpexec-script.
12345         (Support for building libraries and executables): Add havelib,
12346         relocatable-*.
12347         (Support for maintaining and releasing projects): Renamed from
12348         'Support for maintaining and release projects'. Add announce-gen.
12349
12350 2007-03-31  Bruno Haible  <bruno@clisp.org>
12351
12352         * README: Talk primarily about git.
12353         (git and CVS): Renamed from CVS.
12354         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
12355         gnulib is available through git.
12356         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
12357
12358 2007-03-30  Bruno Haible  <bruno@clisp.org>
12359
12360         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
12361         * lib/poll_.h: Likewise.
12362         * lib/stat_.h: Likewise.
12363         * lib/sys_time_.h: Likewise.
12364         * lib/sysexit_.h: Likewise.
12365         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
12366         * lib/stdbool_.h: Likewise.
12367         * lib/byteswap_.h: Add double-inclusion guard.
12368
12369 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
12370
12371         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
12372
12373 2007-03-30  Karl Berry  <karl@gnu.org>
12374
12375         * config/srclist-update: double space after USA in the license
12376         substitution, since that's how it's usually (?) written.
12377
12378 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
12379
12380         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
12381         reported by Bruno Haible.
12382
12383 2007-03-29  Bruno Haible  <bruno@clisp.org>
12384
12385         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
12386         a bug in AIX iconv().
12387
12388 2007-03-29  Bruno Haible  <bruno@clisp.org>
12389
12390         * modules/ldexpl-tests: New file.
12391         * tests/test-ldexpl.c: New file.
12392
12393 2007-03-29  Bruno Haible  <bruno@clisp.org>
12394
12395         * lib/ldexpl.c: Include fpucw.h.
12396         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
12397         multiplication.
12398         * modules/ldexpl (Depends-on): Add fpucw.
12399
12400 2007-03-29  Bruno Haible  <bruno@clisp.org>
12401
12402         * modules/ldexpl: New file.
12403         * m4/ldexpl.m4: New file.
12404         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
12405         set.
12406         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
12407         REPLACE_LDEXPL.
12408         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
12409         REPLACE_LDEXPL.
12410         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
12411         gl_FUNC_LDEXPL_WORKS.
12412         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
12413         * modules/mathl (Files): Remove lib/ldexpl.c.
12414         (Depends-on): Add ldexpl.
12415
12416 2007-03-29  Bruno Haible  <bruno@clisp.org>
12417
12418         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
12419
12420 2007-03-29  Bruno Haible  <bruno@clisp.org>
12421
12422         * tests/test-striconveh.c (main): Don't assume that a direct conversion
12423         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
12424         and possibly also HP-UX.
12425         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
12426         work on AIX, IRIX, HP-UX, OSF/1.
12427         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
12428         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
12429         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
12430         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
12431         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
12432         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
12433
12434 2007-03-29  Bruno Haible  <bruno@clisp.org>
12435
12436         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
12437
12438 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
12439
12440         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
12441         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
12442
12443 2007-03-29  Eric Blake  <ebb9@byu.net>
12444
12445         * lib/acl-internal.h: Remove redundant include.
12446         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
12447         Cygwin when a file is locked.
12448
12449 2007-03-29  Bruno Haible  <bruno@clisp.org>
12450
12451         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
12452         file.
12453         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
12454
12455 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
12456
12457         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
12458         try to remove a parent directory if the child couldn't be removed
12459         (except for the first rmdir, which could fail because the child
12460         doesn't exist).  Problem reported by Jeff Blaine in
12461         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
12462
12463 2007-03-28  Bruno Haible  <bruno@clisp.org>
12464
12465         * lib/striconveh.c (utf8conv_carefully): New function.
12466         (mem_cd_iconveh_internal): Invoke it.
12467
12468 2007-03-28  Bruno Haible  <bruno@clisp.org>
12469
12470         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
12471         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
12472         input.
12473         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
12474         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
12475         unistr/u8-uctomb.
12476
12477 2007-03-28  Bruno Haible  <bruno@clisp.org>
12478
12479         * modules/unistr/u8-mbtoucr: New file.
12480         * lib/unistr/u8-mbtoucr.c: New file.
12481         * modules/unistr/u16-mbtoucr: New file.
12482         * lib/unistr/u16-mbtoucr.c: New file.
12483         * modules/unistr/u16-mbtoucr: New file.
12484         * lib/unistr/u16-mbtoucr.c: New file.
12485         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
12486
12487 2007-03-27  Simon Josefsson  <simon@josefsson.org>
12488             Bruno Haible  <bruno@clisp.org>
12489
12490         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
12491         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
12492         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
12493
12494         * m4/stdio_h.m4: Add stubs for vasprintf too.
12495
12496         * modules/stdio: Support vasprintf in sed command.
12497
12498         * modules/vasprintf: Depend on stdio for prototypes.  Remove
12499         vasprintf.h.  Add stdio module indicator.
12500
12501         * lib/stdio_.h: Declare asprintf and vasprintf, based on
12502         vasprintf.h.
12503
12504         * lib/vasprintf.h: File removed.
12505
12506         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
12507         * lib/vasprintf.c: Ditto.
12508         * lib/xvasprintf.c: Ditto.
12509         * tests/test-vasprintf-posix.c: Ditto.
12510         * tests/test-vasprintf.c: Ditto.
12511
12512 2007-03-27  Bruno Haible  <bruno@clisp.org>
12513
12514         Make vasnprintf multithread-safe.
12515         * lib/vasnprintf.c (decimal_point_char): New function.
12516         (VASNPRINTF): Use it.
12517         Suggested by Simon Josefsson.
12518
12519 2007-03-27  Eric Blake  <ebb9@byu.net>
12520
12521         Support sub-second birthtime on cygwin.
12522         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
12523         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
12524         (get_stat_birthtime): Also work with st_birthtim.
12525
12526 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
12527
12528         * lib/stat-time.h (USE_BIRTHTIME): Remove.
12529         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
12530         (get_stat_birthtime_ns): Do not try to use "spare" fields.
12531         (get_stat_birthtime_ns): Simplify compile-time tests.
12532         (get_stat_birthtime): Change the API to look like
12533         get_stat_mtime etc., except return a negative tv_nsec on error.
12534         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
12535         Don't check for "spare" fields.
12536         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
12537         or for struct stat.st_birthtime, as these tests aren't used.
12538         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
12539
12540 2007-03-27  Bruno Haible  <bruno@clisp.org>
12541
12542         * lib/stat-time.h: Include <sys/stat.h>.
12543
12544 2007-03-27  James Youngman  <jay@gnu.org>
12545
12546         * lib/stat-time.h (get_stat_birthtime): New function for
12547           retrieving st_birthtime as provided by UFS2 (hence *BSD).
12548         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
12549           and its variants.
12550         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
12551         * modules/stat-time-test: New file.
12552         * tests/test-stat-time.c: New test, devised by Bruno Haible.
12553
12554 2007-03-26  Bruno Haible  <bruno@clisp.org>
12555
12556         Better support of signalling NaNs.
12557         * lib/atanl.c: Include isnanl.h.
12558         (atanl): Perform test for NaN at the beginning of the function and
12559         through a call to isnanl.
12560         * lib/cosl.c: Include isnanl.h.
12561         (cosl): Perform test for NaN at the beginning of the function and
12562         through a call to isnanl.
12563         * lib/ldexpl.c: Include isnanl.h.
12564         (ldexpl): Perform test for NaN through a call to isnanl.
12565         * lib/logl.c: Include isnanl.h.
12566         (logl): Perform test for NaN at the beginning of the function and
12567         through a call to isnanl.
12568         * lib/sinl.c: Include isnanl.h.
12569         (sinl): Perform test for NaN at the beginning of the function and
12570         through a call to isnanl.
12571         * lib/sqrtl.c: Include isnanl.h.
12572         (sqrtl): Perform test for NaN at the beginning of the function and
12573         through a call to isnanl.
12574         * lib/tanl.c: Include isnanl.h.
12575         (tanl): Perform test for NaN at the beginning of the function and
12576         through a call to isnanl.
12577         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
12578         * modules/mathl (Depends-on): Add isnanl.
12579
12580 2007-03-26  Eric Blake  <ebb9@byu.net>
12581
12582         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
12583         regression in logic sense of previous patch.
12584
12585 2007-03-26  Bruno Haible  <bruno@clisp.org>
12586
12587         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
12588         unportable shell command "if ! ...".
12589         Reported by Ralf Wildenhues.
12590
12591 2007-03-25  Bruno Haible  <bruno@clisp.org>
12592
12593         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
12594         <sysexits.h> file, and only add EX_CONFIG.
12595         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
12596         absolute file name and whether it is sufficient. Substitute also
12597         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
12598         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
12599         ABSOLUTE_SYSEXITS_H into sysexits.h.
12600
12601 2007-03-25  Bruno Haible  <bruno@clisp.org>
12602
12603         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
12604         hints is NULL.
12605
12606 2007-03-25  Bruno Haible  <bruno@clisp.org>
12607
12608         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
12609         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
12610
12611 2007-03-25  Bruno Haible  <bruno@clisp.org>
12612
12613         * lib/vasnprintf.c: Include langinfo.h.
12614         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
12615         multithread-safe.
12616         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
12617         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
12618         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12619         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12620         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12621         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12622         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12623         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
12624         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12625         Reported by Simon Josefsson.
12626
12627 2007-03-25  Bruno Haible  <bruno@clisp.org>
12628
12629         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
12630         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
12631         * modules/vasnprintf (Depends-on): Add stdint.
12632
12633 2007-03-25  Bruno Haible  <bruno@clisp.org>
12634
12635         * modules/fpieee: New file.
12636         * m4/fpieee.m4: New file.
12637         * modules/isnan-nolibm (Depends-on): Add fpieee.
12638         * modules/isnanl-nolibm (Depends-on): Add fpieee.
12639         * modules/isnanl (Depends-on): Add fpieee.
12640
12641 2007-03-25  Bruno Haible  <bruno@clisp.org>
12642
12643         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
12644
12645 2007-03-25  Bruno Haible  <bruno@clisp.org>
12646
12647         Avoid test failures on IRIX 6.5.
12648         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
12649         (main): Use it.
12650         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
12651         macros.
12652         (main): Use them.
12653
12654 2007-03-25  Bruno Haible  <bruno@clisp.org>
12655
12656         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
12657         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
12658         exists but doesn't work.
12659         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
12660         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
12661         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
12662         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
12663
12664 2007-03-25  Bruno Haible  <bruno@clisp.org>
12665
12666         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
12667         returns inf. Needed on IRIX 6.5.
12668
12669 2007-03-25  Bruno Haible  <bruno@clisp.org>
12670
12671         * tests/test-frexpl.c: Include isnanl-nolibm.h.
12672         (main): Use isnanl instead of x != x idiom.
12673         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
12674
12675         * tests/test-frexp.c: Include isnan.h.
12676         (main): Use isnan instead of x != x idiom.
12677         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
12678
12679 2007-03-25  Bruno Haible  <bruno@clisp.org>
12680
12681         * tests/test-frexp.c (NaN): New function/macro.
12682         (main): Use it instead of 0.0 / 0.0.
12683         * tests/test-isnan.c (NaN): New function/macro.
12684         (main): Use it instead of 0.0 / 0.0.
12685         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
12686         (test_function): Use it instead of 0.0 / 0.0.
12687         * tests/test-vasprintf-posix.c (NaN): New function/macro.
12688         (test_function): Use it instead of 0.0 / 0.0.
12689         * tests/test-snprintf-posix.h (NaN): New function/macro.
12690         (test_function): Use it instead of 0.0 / 0.0.
12691         * tests/test-sprintf-posix.h (NaN): New function/macro.
12692         (test_function): Use it instead of 0.0 / 0.0.
12693         * tests/test-fprintf-posix.h (NaN): New function/macro.
12694         (test_function): Use it instead of 0.0 / 0.0.
12695         * tests/test-printf-posix.h (NaN): New function/macro.
12696         (test_function): Use it instead of 0.0 / 0.0.
12697
12698         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
12699
12700 2007-03-25  Bruno Haible  <bruno@clisp.org>
12701
12702         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
12703
12704 2007-03-25  Bruno Haible  <bruno@clisp.org>
12705
12706         * lib/regexec.c (merge_state_with_log): Make static.
12707
12708 2007-03-25  Bruno Haible  <bruno@clisp.org>
12709
12710         * lib/trigl.c (kernel_rem_pio2): Make static.
12711
12712 2007-03-25  Bruno Haible  <bruno@clisp.org>
12713
12714         * lib/sincosl.c (sincosl_table): Make static.
12715
12716 2007-03-25  Bruno Haible  <bruno@clisp.org>
12717
12718         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
12719         if the compiler does not support C99.
12720
12721 2007-03-25  Bruno Haible  <bruno@clisp.org>
12722
12723         * modules/time (Makefile.am): Ensure all rule action lines start with a
12724         tab.
12725
12726 2007-03-24  Bruno Haible  <bruno@clisp.org>
12727
12728         * modules/tsearch-tests: New file.
12729         * tests/test-tsearch.sh: New file.
12730         * tests/test-tsearch.c: New file, mostly copied from glibc.
12731
12732         * modules/search-tests: New file.
12733         * tests/test-search.c: New file.
12734
12735         * modules/search: New file.
12736         * lib/search_.h: New file, incorporating lib/tsearch.h.
12737         * m4/search_h.m4: New file.
12738         * lib/tsearch.h: Remove file.
12739         * lib/tsearch.c: Include search.h instead of tsearch.h.
12740         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
12741         HAVE_TSEARCH.
12742         * modules/tsearch (Files): Remove lib/tsearch.h.
12743         (Depends-on): Add search.
12744         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
12745         (Include): Change tsearch.h into search.h.
12746
12747 2007-03-24  Bruno Haible  <bruno@clisp.org>
12748
12749         * modules/fpucw: New file.
12750         * lib/fpucw.h: New file.
12751         * lib/frexp.c: Include fpucw.h.
12752         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
12753         (FUNC): Use them.
12754         * lib/printf-frexp.c: Include fpucw.h.
12755         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
12756         (FUNC): Use them.
12757         * lib/vasnprintf.c: Include fpucw.h.
12758         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
12759         'long double' calculations.
12760         * tests/test-frexpl.c: Include fpucw.h.
12761         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
12762         * tests/test-printf-frexpl.c: Include fpucw.h.
12763         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
12764         * modules/frexpl (Depends-on): Add fpucw.
12765         * modules/printf-frexpl (Depends-on): Likewise.
12766         * modules/fprintf-posix (Depends-on): Likewise.
12767         * modules/snprintf-posix (Depends-on): Likewise.
12768         * modules/sprintf-posix (Depends-on): Likewise.
12769         * modules/vasnprintf-posix (Depends-on): Likewise.
12770         * modules/vasprintf-posix (Depends-on): Likewise.
12771         * modules/vfprintf-posix (Depends-on): Likewise.
12772         * modules/vsnprintf-posix (Depends-on): Likewise.
12773         * modules/vsprintf-posix (Depends-on): Likewise.
12774         * modules/frexpl-tests (Depends-on): Likewise.
12775         * modules/printf-frexpl-tests (Depends-on): Likewise.
12776
12777 2007-03-24  Bruno Haible  <bruno@clisp.org>
12778
12779         * lib/float+.h: New file.
12780         * lib/isnan.c: Include float+.h.
12781         (SIZE): New macro.
12782         (FUNC): Compare only SIZE bytes of the value.
12783         * lib/vasnprintf.c: Include float+.h.
12784         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
12785         SIZEOF_LDBL or SIZEOF_DBL bytes.
12786         * modules/isnan-nolibm (Files): Add lib/float+.h.
12787         * modules/isnanl-nolibm (Files): Add lib/float+.h.
12788         * modules/isnanl (Files): Add lib/float+.h.
12789         * modules/vasnprintf (Files): Add lib/float+.h.
12790
12791 2007-03-24  Bruno Haible  <bruno@clisp.org>
12792
12793         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
12794         include isnanl-nolibm.h.
12795
12796 2007-03-24  Bruno Haible  <bruno@clisp.org>
12797
12798         * tests/test-read-file.c (main): Don't produce spurious output for
12799         expected situations. Make the test fail if it encountered unexpected
12800         results.
12801
12802 2007-03-24  Bruno Haible  <bruno@clisp.org>
12803
12804         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
12805         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
12806
12807 2007-03-24  Bruno Haible  <bruno@clisp.org>
12808
12809         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
12810
12811 2007-03-24  Bruno Haible  <bruno@clisp.org>
12812
12813         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
12814         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
12815
12816         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
12817         * modules/utf8-ucs4: Turn into a symbolic link to module
12818         unistr/u8-mbtouc.
12819
12820         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
12821         utf8-ucs4-unsafe.
12822         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
12823         unistr/u8-mbtouc-unsafe.
12824
12825         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
12826         * modules/utf16-ucs4: Turn into a symbolic link to module
12827         unistr/u16-mbtouc.
12828
12829         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
12830         utf16-ucs4-unsafe.
12831         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
12832         unistr/u16-mbtouc-unsafe.
12833
12834         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
12835         * modules/ucs4-utf8: Turn into a symbolic link to module
12836         unistr/u8-ubtomb.
12837
12838         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
12839         * modules/ucs4-utf16: Turn into a symbolic link to module
12840         unistr/u16-ubtomb.
12841
12842 2007-03-24  Bruno Haible  <bruno@clisp.org>
12843
12844         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
12845         Enable the function only if HAVE_INLINE.
12846         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
12847         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
12848         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
12849         Enable the function only if HAVE_INLINE.
12850         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
12851         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
12852         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
12853         Enable the function only if HAVE_INLINE.
12854         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
12855         Enable the function only if HAVE_INLINE.
12856         * modules/utf8-ucs4: Update.
12857         * modules/utf8-ucs4-unsafe: Update.
12858         * modules/utf16-ucs4: Update.
12859         * modules/utf16-ucs4-unsafe: Update.
12860         * modules/ucs4-utf8: Update.
12861         * modules/ucs4-utf16: Update.
12862
12863 2007-03-24  Bruno Haible  <bruno@clisp.org>
12864
12865         * lib/utf8-ucs4.h: Remove file.
12866         * lib/utf8-ucs4-unsafe.h: Remove file.
12867         * lib/utf16-ucs4.h: Remove file.
12868         * lib/utf16-ucs4-unsafe.h: Remove file.
12869         * lib/ucs4-utf8.h: Remove file.
12870         * lib/ucs4-utf16.h: Remove file.
12871         * lib/unistr.h: Include their previous contents.
12872         * m4/utf-ucs4.m4: Remove file.
12873         * m4/ucs4-utf.m4: Remove file.
12874         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
12875         (Depends-on): Add unistr/base.
12876         (configure.ac): Remove gl_UTF_UCS4.
12877         (Makefile.am): Update.
12878         (Include): Change to unistr.h.
12879         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
12880         (Depends-on): Add unistr/base.
12881         (configure.ac): Remove gl_UTF_UCS4.
12882         (Makefile.am): Update.
12883         (Include): Change to unistr.h.
12884         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
12885         (Depends-on): Add unistr/base.
12886         (configure.ac): Remove gl_UTF_UCS4.
12887         (Makefile.am): Update.
12888         (Include): Change to unistr.h.
12889         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
12890         (Depends-on): Add unistr/base.
12891         (configure.ac): Remove gl_UTF_UCS4.
12892         (Makefile.am): Update.
12893         (Include): Change to unistr.h.
12894         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
12895         (Depends-on): Add unistr/base.
12896         (configure.ac): Remove gl_UCS4_UTF.
12897         (Makefile.am): Update.
12898         (Include): Change to unistr.h.
12899         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
12900         (Depends-on): Add unistr/base.
12901         (configure.ac): Remove gl_UCS4_UTF.
12902         (Makefile.am): Update.
12903         (Include): Change to unistr.h.
12904         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
12905         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
12906         utf8-ucs4-unsafe.h.
12907         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
12908         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
12909         utf16-ucs4-unsafe.h.
12910         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
12911         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
12912         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
12913         * lib/unistr/u8-strchr.c: Likewise.
12914         * lib/unistr/u8-strrchr.c: Likewise.
12915         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
12916         * lib/unistr/u16-strchr.c: Likewise.
12917         * lib/unistr/u16-strrchr.c: Likewise.
12918         * lib/striconveh.c: Update.
12919         * lib/linebreak.c: Update.
12920
12921 2007-03-24  Bruno Haible  <bruno@clisp.org>
12922
12923         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
12924         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
12925
12926 2007-03-22  Bruno Haible  <bruno@clisp.org>
12927
12928         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
12929
12930 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
12931
12932         * MODULES.html.sh (File system functions): New module write-any-file.
12933         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
12934         * m4/write-any-file.m4: New files.
12935
12936 2007-03-23  Eric Blake  <ebb9@byu.net>
12937
12938         * gnulib-tool: Rearrange space-tab sequences, since some editors
12939         like to eat them.
12940
12941 2007-03-23  Eric Blake  <ebb9@byu.net>
12942
12943         * lib/version-etc.c (version_etc_va): Update license wording to
12944         be more concise.  Recommended by Richard Stallman.
12945
12946 2007-03-22  Bruno Haible  <bruno@clisp.org>
12947
12948         * lib/poll.c (MSG_PEEK): New fallback definition.
12949
12950 2007-03-22  Bruno Haible  <bruno@clisp.org>
12951
12952         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
12953         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
12954         (main): Update.
12955         Fixes a compilation error on BeOS.
12956
12957 2007-03-22  Bruno Haible  <bruno@clisp.org>
12958
12959         * modules/frexpl-tests: New file.
12960         * tests/test-frexpl.c: New file.
12961
12962         * modules/frexpl: New file.
12963         * m4/frexpl.m4: New file.
12964         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
12965         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
12966         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
12967         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
12968         (Depends-on): Add frexpl. Remove isnanl-nolibm.
12969         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
12970
12971 2007-03-22  Bruno Haible  <bruno@clisp.org>
12972
12973         * lib/frexpl.c: Share code with lib/frexp.c.
12974         * modules/mathl (Files): Add lib/frexp.c.
12975         (Depends-on): Add isnanl-nolibm.
12976
12977 2007-03-22  Bruno Haible  <bruno@clisp.org>
12978
12979         * modules/printf-frexp (Files): Add m4/frexp.m4.
12980         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
12981         only if the found frexp function actually works.
12982
12983 2007-03-22  Bruno Haible  <bruno@clisp.org>
12984
12985         * lib/frexp.c: Remove older implementation that uses divisions.
12986
12987 2007-03-21  Bruno Haible  <bruno@clisp.org>
12988
12989         * modules/frexp-tests: New file.
12990         * tests/test-frexp.c: New file.
12991
12992         * modules/frexp: New file.
12993         * lib/frexp.c: New file.
12994         * m4/frexp.m4: New file.
12995         * lib/math_.h (frexp): New declaration.
12996         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
12997         REPLACE_FREXP.
12998         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
12999
13000 2007-03-21  Bruno Haible  <bruno@clisp.org>
13001
13002         * modules/isnanl-tests: New file.
13003         * tests/test-isnanl.c: New file.
13004
13005         * modules/isnanl: New file.
13006         * lib/isnanl.h: New file.
13007         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
13008         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
13009         gl_FUNC_ISNANL_WORKS.
13010         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
13011         New macros.
13012
13013 2007-03-21  Bruno Haible  <bruno@clisp.org>
13014
13015         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
13016         lib/isnanl.h.
13017         (Include): Update.
13018         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
13019         * lib/vasnprintf.c: Update.
13020         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
13021         tests/test-isnanl.h, remove tests/test-isnanl.c.
13022         (Makefile.am): Update.
13023         * tests/test-isnanl-nolibm.c: New file.
13024         * tests/test-isnanl.h: New file.
13025         * tests/test-isnanl.c: Remove file.
13026
13027 2007-03-21  Jim Meyering  <jim@meyering.net>
13028
13029         When trying to open ".", treat ESTALE like EACCES.
13030         * lib/savewd.c (savewd_save): Resort to forking not just upon
13031         failure with EACCES, but also when errno is ESTALE.
13032
13033 2007-03-20  Bruno Haible  <bruno@clisp.org>
13034
13035         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
13036         Needed on AIX 5.1. Reported by Matthew Woehlke.
13037
13038 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
13039
13040         Suggestions by Bruno Haible:
13041         * lib/acl-internal.h: Include "gettext.h" rather than rolling
13042         our own.
13043         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
13044         * modules/acl (Depends-on): Add gettext.
13045
13046 2007-03-19  Bruno Haible  <bruno@clisp.org>
13047
13048         * modules/iconvme: Remove file.
13049         * lib/iconvme.h: Remove file.
13050         * lib/iconvme.c: Remove file.
13051         * m4/iconvme.m4: Remove file.
13052
13053 2007-03-19  Bruno Haible  <bruno@clisp.org>
13054
13055         * doc/relocatable-maint.texi: Break long shell script line.
13056         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
13057
13058 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
13059
13060         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
13061         handle file_has_acl.
13062         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
13063         * lib/acl.c: Move header inclusions and related macro defns into
13064         lib/acl-internal.h.
13065         (S_ISLNK): Remove defn, since that's now done for us.
13066         (file_has_acl): Move to lib/file-has-acl.c.
13067         Call acl_trivial if available.  This is the crucial part of the fix.
13068         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
13069         shared within the library.  Rewrite a bit, partly to make it compatible
13070         with the GNU coding style.
13071         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
13072         Remove unnecessary double-quotes.
13073         Don't test for acl_to_text; the build will catch that.
13074         Replace acl_entries if it doesn't exist and it is needed.
13075         Check for -lsec and acl_trivial (as used on Solaris 10).
13076         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
13077         lib/file-has-acl.c.
13078         (Depends-on): Add sys_stat, for S_ISLNK.
13079
13080 2007-03-19  Ben Pfaff  <blp@gnu.org>
13081
13082         * doc/gnulib.texi: Fix typos.
13083         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
13084
13085 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
13086
13087         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
13088         If size is zero here, buf must be zero.
13089
13090 2007-03-19  Simon Josefsson  <simon@josefsson.org>
13091
13092         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
13093         <bruno@clisp.org>.
13094
13095 2007-03-18  Bruno Haible  <bruno@clisp.org>
13096
13097         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
13098         Suggested by Eric Blake.
13099
13100 2007-03-18  Ben Pfaff  <blp@gnu.org>
13101
13102         * doc/relocatable.texi: Recommend using as prefix a directory
13103         that does not exist and will never be created.  Based on
13104         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
13105         and others.
13106
13107 2007-03-17  Bruno Haible  <bruno@clisp.org>
13108
13109         * lib/fchownat.c: Include lchown.h.
13110
13111 2007-03-17  Bruno Haible  <bruno@clisp.org>
13112
13113         Fix endless loop when the given allocated size was > INT_MAX.
13114         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
13115         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
13116         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
13117         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
13118         * lib/sprintf.c (sprintf): Likewise.
13119
13120 2007-03-17  Bruno Haible  <bruno@clisp.org>
13121
13122         * tests/test-argp-2.sh (func_compare): Output a context diff.
13123
13124 2007-03-17  Bruno Haible  <bruno@clisp.org>
13125
13126         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
13127         locale's decimal-point character.
13128
13129 2007-03-17  Bruno Haible  <bruno@clisp.org>
13130
13131         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
13132         before comparing it. Needed because on some platforms (e.g. x86) a
13133         'long double' occupies less bytes than sizeof (long double).
13134
13135 2007-03-17  Bruno Haible  <bruno@clisp.org>
13136
13137         * tests/test-crc.c (main): Make printf statements 64-bit clean.
13138         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
13139         * tests/test-getaddrinfo.c (simple): Likewise.
13140         * tests/test-read-file.c (main): Likewise.
13141
13142 2007-03-17  Bruno Haible  <bruno@clisp.org>
13143
13144         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
13145
13146 2007-03-17  Bruno Haible  <bruno@clisp.org>
13147
13148         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
13149         unused variable.
13150
13151 2007-03-17  Bruno Haible  <bruno@clisp.org>
13152
13153         * tests/test-c-strcasecmp.c: Include c-strcase.h.
13154         * tests/test-c-strncasecmp.c: Likewise.
13155
13156 2007-03-17  Bruno Haible  <bruno@clisp.org>
13157
13158         * modules/stdlib (Depends-on): Add unistd.
13159         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
13160         Needed for MacOS X 10.3.
13161
13162 2007-03-17  Bruno Haible  <bruno@clisp.org>
13163
13164         * lib/unistr/u-strdup.h: Include <stdlib.h>.
13165
13166 2007-03-17  Bruno Haible  <bruno@clisp.org>
13167
13168         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
13169
13170 2007-03-17  Bruno Haible  <bruno@clisp.org>
13171
13172         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
13173         to reflect files copied from gnulib (with or without modifications).
13174         Suggested by Jim Meyering.
13175
13176 2007-03-17  Eric Blake  <ebb9@byu.net>
13177
13178         * NEWS: Document stdlib change from 2007-02-18.
13179
13180 2007-03-17  Jim Meyering  <jim@meyering.net>
13181
13182         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
13183         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
13184         someone uses a name containing shell meta-characters.
13185         Reported by Alfred M. Szmidt.
13186
13187         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
13188
13189 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
13190
13191         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
13192         and copy gettext configuration files only if configure.ac contains
13193         a use of AM_GNU_GETTEXT_VERSION.
13194
13195 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
13196
13197         * build-aux/bootstrap (gnulib_name): New variable.
13198         (gnulib_tool_options): Use it.
13199
13200 2007-03-13  Simon Josefsson  <simon@josefsson.org>
13201
13202         * tests/test-des.c: Use new namespace.
13203
13204 2007-03-15  Bruno Haible  <bruno@clisp.org>
13205
13206         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
13207         Reported by James Youngman <jay@gnu.org>.
13208
13209 2007-03-15  Bruno Haible  <bruno@clisp.org>
13210
13211         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
13212         declared prototype. Needed with cc on OSF/1 5.1.
13213
13214 2007-03-15  Bruno Haible  <bruno@clisp.org>
13215
13216         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
13217         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
13218         (struct gl_list_implementation): Add dispose_fn argument to the
13219         'create_empty', 'create' methods.
13220         (struct gl_list_impl_base): Add field 'dispose_fn'.
13221         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
13222         argument.
13223         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
13224         dispose_fn argument.
13225         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
13226         dispose_fn on the dropped values.
13227         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
13228         dispose_fn argument.
13229         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
13230         dropped values.
13231         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
13232         (gl_tree_remove_node): Call dispose_fn on the dropped value.
13233         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
13234         (gl_tree_remove_node): Call dispose_fn on the dropped value.
13235         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
13236         argument.
13237         (gl_tree_list_free): Call dispose_fn on the dropped values.
13238         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
13239         the dropped values.
13240         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
13241         Add dispose_fn argument.
13242         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
13243         Call dispose_fn on the dropped values.
13244         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
13245         Add dispose_fn argument.
13246         (gl_sublist_create): Initialize the 'dispose_fn' field.
13247         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
13248         * tests/test-array_list.c (main): Update.
13249         * tests/test-carray_list.c (main): Update.
13250         * tests/test-avltree_list.c (main): Update.
13251         * tests/test-rbtree_list.c (main): Update.
13252         * tests/test-avltreehash_list.c (main): Update.
13253         * tests/test-rbtreehash_list.c (main): Update.
13254         * tests/test-linked_list.c (main): Update.
13255         * tests/test-linkedhash_list.c (main): Update.
13256         * tests/test-array_oset.c (main): Update.
13257
13258 2007-03-15  Bruno Haible  <bruno@clisp.org>
13259
13260         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
13261         (gl_oset_create_empty): Add dispose_fn argument.
13262         (struct gl_oset_implementation): Add dispose_fn argument to
13263         'create_empty' method.
13264         (struct gl_oset_impl_base): Add dispose_fn field.
13265         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
13266         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
13267         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
13268         values.
13269         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
13270         (gl_tree_oset_free): Call dispose_fn on the dropped values.
13271         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
13272         dropped value.
13273         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
13274         dropped value.
13275         * tests/test-array_oset.c (main): Update.
13276         * tests/test-avltree_oset.c (main): Update.
13277         * tests/test-rbtree_oset.c (main): Update.
13278         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
13279
13280 2007-03-13  Bruno Haible  <bruno@clisp.org>
13281
13282         * tests/test-stdbool.c (i): Update after last patch.
13283
13284 2007-03-12  Bruno Haible  <bruno@clisp.org>
13285
13286         * lib/quotearg.c: Include <wctype.h> early, before the definition of
13287         the iswprint macro. Needed on Solaris 2.5.1.
13288
13289 2007-03-12  Bruno Haible  <bruno@clisp.org>
13290
13291         * tests/test-printf-frexp.c (main): Declare x as volatile.
13292
13293 2007-03-12  Simon Josefsson  <simon@josefsson.org>
13294
13295         * doc/gnulib.texi (Build robot for gnulib): New section.
13296
13297 2007-03-12  Jim Meyering  <jim@meyering.net>
13298
13299         * build-aux/bootstrap: New file.
13300         * build-aux/bootstrap.conf: New file, from coreutils.
13301
13302 2007-03-11  Bruno Haible  <bruno@clisp.org>
13303
13304         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
13305
13306 2007-03-12  Simon Josefsson  <simon@josefsson.org>
13307
13308         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
13309         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
13310         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
13311
13312 2007-03-11  Bruno Haible  <bruno@clisp.org>
13313
13314         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
13315         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
13316
13317 2007-03-11  Bruno Haible  <bruno@clisp.org>
13318
13319         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
13320         formula. Needed for SunPRO C 5.0.
13321
13322 2007-03-11  Bruno Haible  <bruno@clisp.org>
13323
13324         * modules/long-options (Depends-on): Add getopt.
13325
13326 2007-03-11  Bruno Haible  <bruno@clisp.org>
13327
13328         * modules/modechange (Depends-on): Add stdbool.
13329
13330 2007-03-11  Bruno Haible  <bruno@clisp.org>
13331
13332         * modules/i-ring (Depends-on): Add stdbool.
13333
13334 2007-03-11  Bruno Haible  <bruno@clisp.org>
13335
13336         * modules/gc-des (Depends-on): Add stdbool.
13337
13338 2007-03-11  Bruno Haible  <bruno@clisp.org>
13339
13340         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
13341
13342 2007-03-11  Bruno Haible  <bruno@clisp.org>
13343
13344         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
13345
13346 2007-03-11  Bruno Haible  <bruno@clisp.org>
13347
13348         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
13349
13350 2007-03-11  Bruno Haible  <bruno@clisp.org>
13351
13352         * lib/vasnprintf.c (sprintf): Undefine.
13353
13354 2007-03-11  Bruno Haible  <bruno@clisp.org>
13355
13356         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
13357         initializers in SunPRO C and Compaq C compilers.
13358
13359 2007-03-11  Bruno Haible  <bruno@clisp.org>
13360
13361         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
13362         decrementing code ANSI C compliant.
13363
13364 2007-03-11  Bruno Haible  <bruno@clisp.org>
13365
13366         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
13367         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
13368
13369 2007-03-11  Bruno Haible  <bruno@clisp.org>
13370
13371         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
13372         <stdbool.h> substitute doesn't pass.
13373
13374 2007-03-11  Bruno Haible  <bruno@clisp.org>
13375
13376         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
13377
13378 2007-03-11  Bruno Haible  <bruno@clisp.org>
13379
13380         * gnulib-tool (func_create_megatestdir): Create also an autobuild
13381         script, for submission to autobuild.josefsson.org.
13382
13383 2007-03-10  Bruno Haible  <bruno@clisp.org>
13384
13385         * modules/canonicalize-lgpl-tests: New file.
13386         * tests/test-canonicalize-lgpl.sh: New file.
13387         * tests/test-canonicalize-lgpl.c: New file.
13388
13389         * modules/c-strcase-tests: New file.
13390         * tests/test-c-strcase.sh: New file.
13391         * tests/test-c-strcasecmp.c: New file.
13392         * tests/test-c-strncasecmp.c: New file.
13393
13394         * modules/atexit-tests: New file.
13395         * tests/test-atexit.sh: New file.
13396         * tests/test-atexit.c: New file.
13397
13398 2007-03-10  Bruno Haible  <bruno@clisp.org>
13399
13400         * tests/test-binary-io.sh: Use temporary filenames that are not so
13401         likely to clash with those of other tests (in a parallel make).
13402         * tests/test-binary-io.c: Likewise.
13403
13404 2007-03-10  Bruno Haible  <bruno@clisp.org>
13405
13406         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
13407         fallback; use #error instead.
13408         Suggested by Simon Josefsson.
13409
13410 2007-03-10  Bruno Haible  <bruno@clisp.org>
13411
13412         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
13413         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
13414         first and the last.
13415
13416 2007-03-10  Bruno Haible  <bruno@clisp.org>
13417
13418         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
13419
13420 2007-03-10  Bruno Haible  <bruno@clisp.org>
13421
13422         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
13423         "make distcheck".
13424         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
13425         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
13426         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
13427
13428 2007-03-10  Bruno Haible  <bruno@clisp.org>
13429
13430         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
13431         variable.
13432         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
13433         variable.
13434
13435 2007-03-09  Eric Blake  <ebb9@byu.net>
13436         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
13437
13438         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
13439         types are not being provided by gnulib.
13440         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
13441         types are supported.
13442
13443 2007-03-10  Bruno Haible  <bruno@clisp.org>
13444
13445         * lib/stdio_.h (__attribute__): New macro.
13446         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
13447         vsprintf): Specify __attribute__ __format__ for GCC.
13448         Suggested by Eric Blake.
13449
13450 2007-03-09  Bruno Haible  <bruno@clisp.org>
13451
13452         * modules/printf-posix-tests: New file.
13453         * tests/test-printf-posix.sh: New file.
13454         * tests/test-printf-posix.c: New file.
13455
13456         * modules/printf-posix: New file.
13457         * lib/printf.c: New file.
13458         * m4/printf-posix-rpl.m4: New file.
13459         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
13460         REPLACE_PRINTF.
13461         * lib/stdio_.h (printf): New declaration.
13462         (format, __format__, ____printf____, ____scanf____, ____strftime____,
13463         ____strfmon____): New macros.
13464         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
13465         REPLACE_PRINTF.
13466
13467 2007-03-09  Bruno Haible  <bruno@clisp.org>
13468
13469         * tests/test-vasnprintf-posix2.sh: New file.
13470         * tests/test-vasnprintf-posix2.c: New file.
13471         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
13472         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
13473         (Makefile.am): Activate test-vasnprintf-posix2.sh.
13474
13475         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
13476         a locale dependent decimal point, rather than always '.'.
13477
13478 2007-03-09  Eric Blake  <ebb9@byu.net>
13479
13480         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
13481         spite of platforms like Tandem/NSK that define it to -1.
13482
13483 2007-03-08  Bruno Haible  <bruno@clisp.org>
13484
13485         * modules/vprintf-posix-tests: New file.
13486         * tests/test-vprintf-posix.sh: New file.
13487         * tests/test-vprintf-posix.c: New file.
13488         * tests/test-printf-posix.h: New file.
13489
13490         * modules/vprintf-posix: New file.
13491         * lib/vprintf.c: New file.
13492         * m4/vprintf-posix.m4: New file.
13493         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
13494         REPLACE_VPRINTF.
13495         * lib/stdio_.h (vprintf): New declaration.
13496         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
13497         REPLACE_VPRINTF.
13498
13499 2007-03-08  Bruno Haible  <bruno@clisp.org>
13500
13501         * modules/fprintf-posix-tests: New file.
13502         * tests/test-fprintf-posix.sh: New file.
13503         * tests/test-fprintf-posix.c: New file.
13504
13505         * modules/fprintf-posix: New file.
13506         * lib/fprintf.c: New file.
13507         * m4/fprintf-posix.m4: New file.
13508         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
13509         REPLACE_FPRINTF.
13510         * lib/stdio_.h (fprintf): New declaration.
13511         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
13512         REPLACE_FPRINTF.
13513
13514 2007-03-08  Bruno Haible  <bruno@clisp.org>
13515
13516         * modules/vfprintf-posix-tests: New file.
13517         * tests/test-vfprintf-posix.sh: New file.
13518         * tests/test-vfprintf-posix.c: New file.
13519         * tests/test-fprintf-posix.h: New file.
13520         * tests/test-fprintf-posix.out: New file.
13521
13522         * modules/vfprintf-posix: New file.
13523         * lib/vfprintf.c: New file.
13524         * m4/vfprintf-posix.m4: New file.
13525         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
13526         REPLACE_VFPRINTF.
13527         * lib/stdio_.h (vfprintf): New declaration.
13528         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
13529         REPLACE_VFPRINTF.
13530
13531 2007-03-08  Bruno Haible  <bruno@clisp.org>
13532
13533         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
13534
13535 2007-03-08  Bruno Haible  <bruno@clisp.org>
13536
13537         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
13538         instead of 'expr' invocations.
13539         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13540         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
13541         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
13542         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
13543         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
13544         Suggested by Paul Eggert.
13545
13546 2007-03-08  Bruno Haible  <bruno@clisp.org>
13547
13548         * modules/fseterr-tests: New file.
13549         * tests/test-fseterr.c: New file.
13550
13551         * modules/fseterr: New file.
13552         * lib/fseterr.h: New file.
13553         * lib/fseterr.c: New file.
13554
13555 2007-03-08  Bruno Haible  <bruno@clisp.org>
13556
13557         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
13558         * lib/getopt_.h: Likewise.
13559         * lib/mbswidth.h: Likewise.
13560         * lib/setenv.h: Likewise.
13561         * lib/vasnprintf.h: Likewise.
13562         * lib/vasprintf.h: Likewise.
13563         * lib/verror.h: Likewise.
13564         * lib/xsetenv.h: Likewise.
13565         * lib/xvasprintf.h: Likewise.
13566
13567 2007-03-08  Jim Meyering  <jim@meyering.net>
13568
13569         * users.txt: Add parted.
13570
13571         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
13572
13573 2007-03-07  Bruno Haible  <bruno@clisp.org>
13574
13575         * m4/printf.m4: Make the shell script snippets copy&pastable.
13576
13577 2007-03-02  Bruno Haible  <bruno@clisp.org>
13578
13579         * lib/netinet_in_.h: New file.
13580         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
13581         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
13582         * modules/netinet_in (Files): Add lib/netinet_in_.h.
13583         (Depends-on): Add absolute-header.
13584         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
13585         into netinet/in.h.
13586
13587 2007-03-03  Bruno Haible  <bruno@clisp.org>
13588
13589         * lib/sys_select_.h: New file.
13590         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
13591         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
13592         * modules/sys_select (Files): Add lib/sys_select_.h.
13593         (Depends-on): Add absolute-header.
13594         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
13595         into sys/select.h.
13596
13597 2007-03-02  Bruno Haible  <bruno@clisp.org>
13598
13599         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
13600         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
13601         values.
13602         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
13603         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
13604         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
13605         * modules/sys_socket (Depends-on): Add absolute-header.
13606         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
13607         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
13608         (Include): Remove requirement of inclusion of <sys/types.h>.
13609
13610 2007-03-02  Bruno Haible  <bruno@clisp.org>
13611
13612         * lib/byteswap_.h (bswap_32): Fix formula.
13613
13614 2007-03-06  Bruno Haible  <bruno@clisp.org>
13615
13616         * modules/sprintf-posix-tests: New file.
13617         * tests/test-sprintf-posix.c: New file.
13618
13619         * modules/sprintf-posix: New file.
13620         * lib/sprintf.c: New file.
13621         * m4/sprintf-posix.m4: New file.
13622         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
13623         REPLACE_SPRINTF.
13624         * lib/stdio_.h (sprintf): New declaration.
13625         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
13626         REPLACE_SPRINTF.
13627
13628 2007-03-06  Bruno Haible  <bruno@clisp.org>
13629
13630         * modules/vsprintf-posix-tests: New file.
13631         * tests/test-vsprintf-posix.c: New file.
13632         * tests/test-sprintf-posix.h: New file.
13633
13634         * modules/vsprintf-posix: New file.
13635         * lib/vsprintf.c: New file.
13636         * m4/vsprintf-posix.m4: New file.
13637         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
13638         REPLACE_VSPRINTF.
13639         * lib/stdio_.h (vsprintf): New declaration.
13640         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
13641         REPLACE_VSPRINTF.
13642
13643 2007-03-06  Bruno Haible  <bruno@clisp.org>
13644
13645         * modules/vsnprintf (Depend-on): Remove minmax.
13646
13647 2007-03-06  Bruno Haible  <bruno@clisp.org>
13648
13649         * modules/snprintf-posix-tests: New file.
13650         * tests/test-snprintf-posix.c: New file.
13651
13652         * modules/snprintf-posix: New file.
13653         * m4/snprintf-posix.m4: New file.
13654         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
13655         gl_FUNC_SNPRINTF.
13656         (gl_FUNC_SNPRINTF): Invoke it.
13657         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
13658         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
13659         is set.
13660         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
13661
13662 2007-03-06  Bruno Haible  <bruno@clisp.org>
13663
13664         * modules/vsnprintf-posix-tests: New file.
13665         * tests/test-vsnprintf-posix.c: New file.
13666         * tests/test-snprintf-posix.h: New file.
13667
13668         * modules/vsnprintf-posix: New file.
13669         * m4/vsnprintf-posix.m4: New file.
13670         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
13671         gl_FUNC_VSNPRINTF.
13672         (gl_FUNC_VSNPRINTF): Invoke it.
13673         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
13674         * lib/stdio_.h (vsnprintf): Define as a replacement if
13675         REPLACE_VSNPRINTF is set.
13676         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
13677
13678 2007-03-06  Bruno Haible  <bruno@clisp.org>
13679
13680         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
13681         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
13682
13683 2007-03-06  Bruno Haible  <bruno@clisp.org>
13684
13685         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
13686         (asinl): Declare also if HAVE_DECL_ASINL is set.
13687         (atanl): Declare also if HAVE_DECL_ATANL is set.
13688         (ceill): Declare also if HAVE_DECL_CEILL is set.
13689         (cosl): Declare also if HAVE_DECL_COSL is set.
13690         (expl): Declare also if HAVE_DECL_EXPL is set.
13691         (floorl): Declare also if HAVE_DECL_FLOORL is set.
13692         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
13693         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
13694         (logl): Declare also if HAVE_DECL_LOGL is set.
13695         (sinl): Declare also if HAVE_DECL_SINL is set.
13696         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
13697         (tanl): Declare also if HAVE_DECL_TANL is set.
13698         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
13699         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
13700         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
13701         declaration of frexpl, ldexpl.
13702         * modules/printf-frexpl (Depends-on): Add math.
13703         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
13704
13705 2007-03-05  Bruno Haible  <bruno@clisp.org>
13706
13707         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
13708         frexpl and ldexpl are declared.
13709         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
13710
13711 2007-03-05  Bruno Haible  <bruno@clisp.org>
13712
13713         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
13714         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
13715
13716 2007-03-05  Bruno Haible  <bruno@clisp.org>
13717
13718         * lib/stdio_.h: Include <stddef.h>.
13719
13720 2007-03-05  Bruno Haible  <bruno@clisp.org>
13721
13722         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
13723
13724 2007-03-05  Bruno Haible  <bruno@clisp.org>
13725
13726         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
13727         NetBSD 4, from Ralf Wildenhues.
13728
13729 2007-03-04  Bruno Haible  <bruno@clisp.org>
13730
13731         * lib/vasprintf.h: Update #if logic for the case when the functions
13732         exist but are overridden.
13733
13734 2007-03-04  Bruno Haible  <bruno@clisp.org>
13735
13736         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
13737         implementations: glibc-2.4 and MacOS X 10.3.
13738         * tests/test-vasnprintf-posix.c (test_function): Test also the case
13739         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
13740         * tests/test-vasprintf-posix.c (test_function): Likewise.
13741
13742 2007-03-04  Bruno Haible  <bruno@clisp.org>
13743
13744         * modules/vasprintf-posix-tests: New file.
13745         * tests/test-vasprintf-posix.c: New file.
13746
13747         * modules/vasprintf-posix: New file.
13748         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
13749         defined.
13750         * m4/vasprintf-posix.m4: New file.
13751         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
13752         gl_FUNC_VASPRINTF.
13753         (gl_FUNC_VASPRINTF): Invoke it.
13754         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
13755         here.
13756         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
13757
13758 2007-03-04  Bruno Haible  <bruno@clisp.org>
13759
13760         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
13761         REPLACE_GETTIMEOFDAY.
13762         * modules/sys_time (Makefile.am): Likewise.
13763         * m4/sys_time_h.m4: Likewise.
13764         * m4/gettimeofday.m4: Likewise.
13765
13766 2007-03-04  Bruno Haible  <bruno@clisp.org>
13767
13768         * modules/vasnprintf-posix-tests: New file.
13769         * tests/test-vasnprintf-posix.c: New file.
13770
13771         * modules/vasnprintf-posix: New file.
13772         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
13773         printf-frexpl.h.
13774         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
13775         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
13776         REPLACE_VASNPRINTF is defined.
13777         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
13778         gl_FUNC_VASNPRINTF.
13779         (gl_FUNC_VASNPRINTF): Invoke it.
13780         * m4/vasnprintf-posix.m4: New file.
13781         * m4/printf.m4: New file.
13782
13783 2007-03-04  Bruno Haible  <bruno@clisp.org>
13784
13785         Compile progreloc.c only if --enable-relocatable is specified.
13786         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
13787         if --enable-relocatable was specified.
13788         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
13789         lib_SOURCES.
13790
13791 2007-03-04  Jim Meyering  <jim@meyering.net>
13792
13793         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
13794         Use it consistently, rather than enumerating errno constants.
13795
13796 2007-03-04  Bruno Haible  <bruno@clisp.org>
13797
13798         * modules/xvasprintf-tests: New file.
13799         * tests/test-xvasprintf.c: New file.
13800
13801         * modules/vasprintf-tests: New file.
13802         * tests/test-vasprintf.c: New file.
13803
13804         * modules/vasnprintf-tests: New file.
13805         * tests/test-vasnprintf.c: New file.
13806
13807         * modules/vsnprintf-tests: New file.
13808         * tests/test-vsnprintf.c: New file.
13809
13810         * modules/snprintf-tests: New file.
13811         * tests/test-snprintf.c: New file.
13812
13813 2007-03-04  Bruno Haible  <bruno@clisp.org>
13814
13815         Compile relocatable.c only if --enable-relocatable is specified.
13816         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
13817         gl_RELOCATABLE_LIBRARY.
13818         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
13819         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
13820         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
13821         gl_RELOCATABLE_LIBRARY.
13822         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
13823         (Makefile.am): Remove lib_SOURCES.
13824         * modules/relocatable-lib-lgpl (configure.ac): Invoke
13825         gl_RELOCATABLE_LIBRARY.
13826         (Makefile.am): Remove lib_SOURCES.
13827         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
13828         always.
13829         * modules/relocatable-prog-wrapper (configure.ac): Invoke
13830         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
13831
13832 2007-03-04  Bruno Haible  <bruno@clisp.org>
13833
13834         * modules/argmatch-tests: New file.
13835         * tests/test-argmatch.c: New file.
13836
13837         * tests/test-allocsa.c (main): Halve the number of loop runs.
13838
13839         * modules/alloca-opt-tests: New file.
13840         * tests/test-alloca-opt.c: New file.
13841
13842 2007-03-04  Jim Meyering  <jim@meyering.net>
13843
13844         Work around difference between Linux ACLs and Solaris 10 ZFS.
13845         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
13846         for EINVAL.
13847
13848 2007-03-03  Bruno Haible  <bruno@clisp.org>
13849
13850         * modules/relocatable-prog (Depends-on): Add back progreloc's
13851         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
13852
13853 2007-03-03  Bruno Haible  <bruno@clisp.org>
13854
13855         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
13856         * modules/relocatable-lib: New file.
13857
13858 2007-03-03  Bruno Haible  <bruno@clisp.org>
13859
13860         * modules/relocatable-prog: Renamed from modules/relocatable.
13861         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
13862
13863 2007-03-03  Bruno Haible  <bruno@clisp.org>
13864
13865         * modules/relocatable-script (Files): Add doc/relocatable.texi,
13866         m4/relocatable-lib.m4.
13867         (Depends-on): Remove 'relocatable'.
13868         (configure.ac): Add gl_RELOCATABLE_NOP.
13869
13870 2007-03-03  Bruno Haible  <bruno@clisp.org>
13871
13872         * modules/relocatable-prog-wrapper: New file.
13873         * modules/relocatable (Depends-on): Add it. Remove all other
13874         dependencies except progname.
13875         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
13876
13877         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
13878         (gl_FUNC_STRERROR): Nop.
13879         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
13880
13881         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
13882         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
13883
13884         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
13885         (gl_FUNC_READLINK): Update.
13886
13887         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
13888
13889 2007-03-03  Bruno Haible  <bruno@clisp.org>
13890
13891         * lib/xreadlink.c: Include <unistd.h> unconditionally.
13892         * modules/xreadlink (Depends-on): Add unistd.
13893         * modules/xreadlink-with-size (Depends-on): Likewise.
13894
13895 2007-03-03  Bruno Haible  <bruno@clisp.org>
13896
13897         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
13898         extracted from gt_FUNC_SETENV.
13899         (gt_FUNC_SETENV): Remove macro.
13900         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
13901         remove gt_FUNC_SETENV.
13902
13903 2007-03-03  Bruno Haible  <bruno@clisp.org>
13904
13905         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
13906         ENABLE_RELOCATABLE here.
13907         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
13908
13909 2007-03-03  Bruno Haible  <bruno@clisp.org>
13910
13911         * modules/rbtreehash-list-tests (Depends-on): Add progname.
13912         * tests/test-rbtreehash_list.c: Include progname.h.
13913         (main): Call set_program_name.
13914
13915         * modules/rbtree-oset-tests (Depends-on): Add progname.
13916         * tests/test-rbtree_oset.c: Include progname.h.
13917         (main): Call set_program_name.
13918
13919         * modules/rbtree-list-tests (Depends-on): Add progname.
13920         * tests/test-rbtree_list.c: Include progname.h.
13921         (main): Call set_program_name.
13922
13923         * modules/linked-list-tests (Depends-on): Add progname.
13924         * tests/test-linked_list.c: Include progname.h.
13925         (main): Call set_program_name.
13926
13927 2007-03-03  Bruno Haible  <bruno@clisp.org>
13928
13929         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
13930         All uses of __restrict changed to _Restrict_.
13931         * lib/glob_.h (__restrict): Remove macro.
13932
13933 2007-03-02  Bruno Haible  <bruno@clisp.org>
13934
13935         * modules/gettext (configure.ac): Require gettext infrastructure
13936         from version 0.16.1.
13937
13938 2007-03-02  Bruno Haible  <bruno@clisp.org>
13939
13940         * modules/linkedhash-list-tests (Depends-on): Add progname.
13941         * tests/test-linkedhash_list.c: Include progname.h.
13942         (main): Call set_program_name.
13943
13944         * modules/carray-list-tests (Depends-on): Add progname.
13945         * tests/test-carray_list.c: Include progname.h.
13946         (main): Call set_program_name.
13947
13948         * modules/avltreehash-list-tests (Depends-on): Add progname.
13949         * tests/test-avltreehash_list.c: Include progname.h.
13950         (main): Call set_program_name.
13951
13952         * modules/avltree-oset-tests (Depends-on): Add progname.
13953         * tests/test-avltree_oset.c: Include progname.h.
13954         (main): Call set_program_name.
13955
13956         * modules/avltree-list-tests (Depends-on): Add progname.
13957         * tests/test-avltree_list.c: Include progname.h.
13958         (main): Call set_program_name.
13959
13960         * modules/array-oset-tests (Depends-on): Add progname.
13961         * tests/test-array_oset.c: Include progname.h.
13962         (main): Call set_program_name.
13963
13964         * modules/array-list-tests (Depends-on): Add progname.
13965         * tests/test-array_list.c: Include progname.h.
13966         (main): Call set_program_name.
13967
13968         * modules/argp-tests (Depends-on): Add progname.
13969         * tests/test-argp.c: Include argp.h first. Include progname.h.
13970         (main): Call set_program_name.
13971
13972 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
13973
13974         * doc/gnulib-tool.texi (Initial import): Reword description of
13975         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
13976         limited effect even if defined after the first system include.
13977
13978 2007-03-01  Bruno Haible  <bruno@clisp.org>
13979
13980         * build-aux/config.libpath: Update to libtool-1.5.22.
13981         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
13982
13983 2007-03-01  Bruno Haible  <bruno@clisp.org>
13984
13985         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
13986         foo_CFLAGS.
13987         Reported by Ralf Wildenhues.
13988
13989 2007-03-01  Bruno Haible  <bruno@clisp.org>
13990
13991         * build-aux/install-reloc: Remove object files left over by some
13992         compilers.
13993         Reported by Ralf Wildenhues.
13994
13995 2007-03-01  Bruno Haible  <bruno@clisp.org>
13996
13997         * build-aux/install-reloc: Break long lines.
13998
13999 2007-03-01  Bruno Haible  <bruno@clisp.org>
14000
14001         * doc/relocatable.texi: Document that it may not work on OpenBSD.
14002         Reported by Ralf Wildenhues.
14003
14004 2007-03-01  Bruno Haible  <bruno@clisp.org>
14005
14006         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
14007         include ordering constraints.
14008
14009 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
14010
14011         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
14012         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
14013         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
14014         as another example.
14015         * lib/time_.h: Fix misspelling.
14016         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
14017         Require gl_HEADER_TIME_H_DEFAULTS.
14018         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
14019         * m4/time_r.m4 (gl_TIME_R): Likewise.
14020         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
14021
14022 2007-03-01  Bruno Haible  <bruno@clisp.org>
14023
14024         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
14025         * m4/utimens.m4 (gl_UTIMENS): Likewise.
14026
14027 2007-03-01  Jim Meyering  <jim@meyering.net>
14028
14029         * modules/xreadlink (Maintainer): Add my name.
14030         * modules/xreadlink-with-size (Depends-on): Alphabetize.
14031
14032 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
14033             Bruno Haible  <bruno@clisp.org>
14034
14035         * build-aux/install-reloc: Compile also c-ctype.c.
14036         * build-aux/relocatable.sh.in: New file.
14037         * doc/relocatable.texi: New file.
14038         * doc/relocatable-maint.texi: New file.
14039         * doc/gnulib.texi: Include relocatable-maint.texi.
14040         * lib/progreloc.c: Include unistd.h unconditionally.
14041         * lib/relocwrapper.c: Include unistd.h unconditionally.
14042         Include c-ctype.h.
14043         (add_dotbin): Use c_tolower.
14044         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
14045         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
14046         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
14047         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
14048         to m4/relocatable-lib.m4.
14049         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
14050         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
14051         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
14052         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
14053         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
14054         * modules/relocatable: New file.
14055         * modules/relocatable-lib: New file.
14056         * modules/relocatable-script: New file.
14057
14058 2007-02-28  Bruno Haible  <bruno@clisp.org>
14059
14060         Import --enable-relocatable infrastructure.
14061         * build-aux/config.libpath: New file, from GNU gettext.
14062         * build-aux/install-reloc: New file, from GNU gettext.
14063         * build-aux/reloc-ldflags: New file, from GNU gettext.
14064         * lib/relocatable.h: New file, from GNU gettext.
14065         * lib/relocatable.c: New file, from GNU gettext.
14066         * lib/relocwrapper.c: New file, from GNU gettext.
14067         * m4/relocatable.m4: New file, from GNU gettext.
14068
14069 2007-02-28  Bruno Haible  <bruno@clisp.org>
14070
14071         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
14072
14073         * modules/xreadlink: New file, from GNU gettext with modifications.
14074         * lib/xreadlink.c: New file, from GNU gettext.
14075         * lib/xreadlink.h: Add comments.
14076         (xreadlink): New declaration.
14077
14078         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
14079         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
14080         lib/xreadlink-with-size.c.
14081         (configure.ac): Remove gl_XREADLINK invocation.
14082         (Makefile.am): Augment lib_SOURCES.
14083         * m4/xreadlink.m4: Remove file.
14084         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
14085         (xreadlink_with_size): Renamed from xreadink.
14086         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
14087         * modules/canonicalize (Depends-on): Replace xreadlink with
14088         xreadlink-with-size.
14089         * lib/canonicalize.c (canonicalize_filename_mode): Update.
14090
14091 2007-02-25  Jim Meyering  <jim@meyering.net>
14092
14093         * build-aux/announce-gen: When complaining about excess arguments,
14094         list them.
14095
14096 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
14097
14098         * README: Document signed integer overflow situation more
14099         accurately.
14100
14101 2007-02-25  Bruno Haible  <bruno@clisp.org>
14102
14103         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
14104         'a' or 'A' conversion.
14105
14106 2007-02-25  Bruno Haible  <bruno@clisp.org>
14107
14108         * modules/filename: Renamed from modules/pathname.
14109         (Files): Replace lib/pathname.h with lib/filename.h. Replace
14110         lib/concatpath.c with lib/concat-filename.c.
14111         (Makefile.am): Update.
14112         (Include): Replace pathname.h with filename.h.
14113         * lib/filename.h: Renamed from lib/pathname.h.
14114         (concatenated_filename): Renamed from concatenated_pathname.
14115         * lib/concat-filename.c: Renamed from lib/concatpath.c.
14116         (concatenated_filename): Renamed from concatenated_pathname.
14117         * lib/findprog.c: Include filename.h instead of pathname.h.
14118         (find_in_path): Update.
14119         * lib/javacomp.c: Include filename.h instead of pathname.h.
14120         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
14121         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
14122         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
14123         is_oldgcj_14_13_usable, is_javac_usable): Update.
14124         * lib/javaexec.c: Include filename.h instead of pathname.h.
14125         (execute_java_class): Update.
14126         * modules/findprog: Update.
14127         * modules/javacomp: Update.
14128         * modules/javaexec: Update.
14129         * MODULES.html.sh (File system functions): Add 'filename', remove
14130         'pathname'.
14131
14132 2007-02-25  Bruno Haible  <bruno@clisp.org>
14133
14134         * modules/printf-frexpl-tests: New file.
14135         * tests/test-printf-frexpl.c: New file.
14136
14137         * modules/printf-frexpl: New file.
14138         * lib/printf-frexpl.h: New file.
14139         * lib/printf-frexpl.c: New file.
14140         * m4/printf-frexpl.m4: New file.
14141
14142 2007-02-25  Bruno Haible  <bruno@clisp.org>
14143
14144         * modules/printf-frexp-tests: New file.
14145         * tests/test-printf-frexp.c: New file.
14146
14147         * modules/printf-frexp: New file.
14148         * lib/printf-frexp.h: New file.
14149         * lib/printf-frexp.c: New file.
14150         * m4/printf-frexp.m4: New file.
14151
14152 2007-02-25  Bruno Haible  <bruno@clisp.org>
14153
14154         Assume automake >= 1.10 for the tests.
14155         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
14156         * modules/arctwo-tests: Likewise.
14157         * modules/argp-tests: Likewise.
14158         * modules/avltree-list-tests: Likewise.
14159         * modules/avltree-oset-tests: Likewise.
14160         * modules/avltreehash-list-tests: Likewise.
14161         * modules/carray-list-tests: Likewise.
14162         * modules/crc-tests: Likewise.
14163         * modules/des-tests: Likewise.
14164         * modules/gc-arcfour-tests: Likewise.
14165         * modules/gc-arctwo-tests: Likewise.
14166         * modules/gc-des-tests: Likewise.
14167         * modules/gc-hmac-md5-tests: Likewise.
14168         * modules/gc-hmac-sha1-tests: Likewise.
14169         * modules/gc-md2-tests: Likewise.
14170         * modules/gc-md4-tests: Likewise.
14171         * modules/gc-md5-tests: Likewise.
14172         * modules/gc-pbkdf2-sha1-tests: Likewise.
14173         * modules/gc-rijndael-tests: Likewise.
14174         * modules/gc-sha1-tests: Likewise.
14175         * modules/gc-tests: Likewise.
14176         * modules/getaddrinfo-tests: Likewise.
14177         * modules/hmac-md5-tests: Likewise.
14178         * modules/hmac-sha1-tests: Likewise.
14179         * modules/linked-list-tests: Likewise.
14180         * modules/linkedhash-list-tests: Likewise.
14181         * modules/lock-tests: Likewise.
14182         * modules/md2-tests: Likewise.
14183         * modules/md4-tests: Likewise.
14184         * modules/md5-tests: Likewise.
14185         * modules/rbtree-list-tests: Likewise.
14186         * modules/rbtree-oset-tests: Likewise.
14187         * modules/rbtreehash-list-tests: Likewise.
14188         * modules/read-file-tests: Likewise.
14189         * modules/rijndael-tests: Likewise.
14190         * modules/stdint-tests: Likewise.
14191         * modules/tls-tests: Likewise.
14192
14193 2007-02-24  Bruno Haible  <bruno@clisp.org>
14194
14195         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
14196         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
14197         function; instead check whether isnan with a double argument links.
14198         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
14199         function; instead check whether isnan with a 'long double' argument
14200         links.
14201         Reported by Eric Blake <ebb9@byu.net>.
14202
14203 2007-02-24  Bruno Haible  <bruno@clisp.org>
14204
14205         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
14206         defined.
14207         * lib/isnanl.c: Remove all code. Just include isnan.c.
14208         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
14209
14210 2007-02-25  Jim Meyering  <jim@meyering.net>
14211
14212         Avoid conflicting types for 'unsetenv' on FreeBSD.
14213         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
14214         conflicting with FreeBSD's (5.0 and 6.1) function declaration
14215         in stdlib.h.
14216
14217 2007-02-24  Bruno Haible  <bruno@clisp.org>
14218
14219         * modules/isnanl-nolibm-tests: New file.
14220         * tests/test-isnanl.c: New file.
14221
14222         * modules/isnanl-nolibm: New file.
14223         * lib/isnanl.h: New file.
14224         * lib/isnanl.c: New file.
14225         * m4/isnanl.m4: New file.
14226
14227 2007-02-24  Bruno Haible  <bruno@clisp.org>
14228
14229         * modules/isnan-nolibm-tests: New file.
14230         * tests/test-isnan.c: New file.
14231
14232         * modules/isnan-nolibm: New file.
14233         * lib/isnan.h: New file.
14234         * lib/isnan.c: New file.
14235         * m4/isnan.m4: New file.
14236
14237 2007-02-24  Bruno Haible  <bruno@clisp.org>
14238
14239         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
14240         assume that an exponent fits in 20 bits.
14241
14242 2007-02-24  Jim Meyering  <jim@meyering.net>
14243
14244         * m4/regex.m4: Update the description of the configure-time option,
14245         --without-included-regex, to state accurately what the defaults are,
14246         and perhaps to give people an idea why using this option is risky.
14247
14248 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
14249
14250         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
14251         loops on small arguments.  This attempts to avoid the problem
14252         Bruno Haible reported for AIX 4.3.2 in
14253         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
14254
14255 2007-02-23  Bruno Haible  <bruno@clisp.org>
14256
14257         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
14258         Needed for help2man.
14259
14260 2007-02-23  Karl Berry  <karl@gnu.org>
14261
14262         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
14263         exists, foo.h should be cvs-ignored, not committed.
14264
14265 2007-02-23  Eric Blake  <ebb9@byu.net>
14266
14267         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
14268         * lib/stat-time.h (includes): Likewise.
14269         * lib/utimecmp.c (includes): Likewise.
14270         * lib/utimens.h (includes): Likewise.
14271         * lib/getdate.y (includes): Also include "timespec.h" for use
14272         internal to the module.
14273         * modules/utimens (Depends-on): Revert yesterday's patch.
14274         * modules/nanosleep (Depends-on): Add missing dependency.
14275
14276 2007-02-22  Bruno Haible  <bruno@clisp.org>
14277
14278         * lib/glob.c: Don't include getlogin_r.h.
14279
14280 2007-02-22  Jim Meyering  <jim@meyering.net>
14281
14282         * modules/utimens (Depends-on): Add timespec, required for
14283         utimens.h's inclusion of timespec.h.
14284
14285 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
14286
14287         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
14288         long unreadable paths in GNU/Linux.  Problem reported by Andreas
14289         Schwab in
14290         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
14291         I'll try to think of a better way to fix the Solaris problem.
14292
14293         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
14294         like glibc; on Solaris 10, it fails with errno == EINVAL.
14295         POSIX says the behavior is unspecified if the first argument is NULL,
14296         so play it safe and never pass NULL to the system getcwd.
14297
14298 2007-02-21  Jim Meyering  <jim@meyering.net>
14299
14300         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
14301         of gettimeofday.  It would conflict with the one now always
14302         provided via sys_time_.h.  Reported by Matthew Woehlke, as
14303         an IRIX 6.5 build failure.
14304
14305 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
14306
14307         Minor fixups to port to Solaris 10 with Sun C 5.8.
14308         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
14309         * modules/getcwd (Depends-on): Add dirfd.
14310         * lib/putenv.c (putenv): #undef it.
14311         (rpl_putenv): New decl.
14312         (malloc, free): Include <stdlib.h> rather than prototyping separately.
14313
14314 2007-02-20  Bruno Haible  <bruno@clisp.org>
14315
14316         * modules/stdio-tests: New file.
14317         * tests/test-stdio.c: New file.
14318
14319         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
14320         (Depends-on): Add stdio.
14321         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
14322         (Include): Use <stdio.h> instead of vsnprintf.h.
14323         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
14324         HAVE_DECL_VSNPRINTF.
14325         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
14326
14327         * modules/snprintf (Files): Remove lib/snprintf.h.
14328         (Depends-on): Add stdio.
14329         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
14330         (Include): Use <stdio.h> instead of snprintf.h.
14331         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
14332         HAVE_DECL_SNPRINTF.
14333         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
14334         * lib/getaddrinfo.c: Likewise.
14335
14336         * modules/stdio: New file.
14337         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
14338         * lib/snprintf.h: Remove file.
14339         * lib/vsnprintf.h: Remove file.
14340         * lib/.cppi-disable: Remove snprintf.h.
14341         * m4/stdio_h.m4: New file.
14342         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
14343
14344 2007-02-20  Jim Meyering  <jim@meyering.net>
14345
14346         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
14347         used by e.g., mingw.  From Bruno Haible.
14348
14349 2007-02-19  Bruno Haible  <bruno@clisp.org>
14350
14351         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
14352         warnings.
14353         Reported by Ben Pfaff <blp@cs.stanford.edu>.
14354
14355 2007-02-19  Bruno Haible  <bruno@clisp.org>
14356
14357         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
14358         from mingw users.
14359
14360 2007-02-19  Bruno Haible  <bruno@clisp.org>
14361
14362         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
14363         warnings.
14364         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
14365
14366 2007-02-19  Jim Meyering  <jim@meyering.net>
14367
14368         Don't use FD after a successful "fdopendir (fd)".
14369         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
14370         Reset it by calling dirfd on the just-obtained DIR*.
14371
14372         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
14373         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
14374
14375 2007-02-18  Bruno Haible  <bruno@clisp.org>
14376
14377         * lib/readlink.c: Include <unistd.h>.
14378         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
14379         HAVE_READLINK.
14380         * modules/readlink (Depends-on): Add unistd.
14381         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14382         (Include): Add <unistd.h>.
14383
14384         * lib/getlogin_r.h: Remove file.
14385         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
14386         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
14387         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
14388         HAVE_DECL_GETLOGIN_R.
14389         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
14390         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14391         (Include): Use <unistd.h> instead of getlogin_r.h.
14392
14393         * lib/getcwd.h: Remove file.
14394         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
14395         * lib/xgetcwd.c: Likewise.
14396         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
14397         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
14398         * modules/getcwd (Files): Remove lib/getcwd.h.
14399         (Depends-on): Add unistd.
14400         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14401         (Include): Use <unistd.h> instad of getcwd.h.
14402
14403         * lib/ftruncate.c: Include <unistd.h> first.
14404         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
14405         Set HAVE_FTRUNCATE.
14406         * modules/ftruncate (Depends-on): Add unistd.
14407         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14408
14409         * lib/fchdir.c: Include <unistd.h> first.
14410         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
14411         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
14412         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
14413         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14414         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
14415
14416         * lib/dup2.c: Include <unistd.h> first.
14417         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
14418         HAVE_DUP2.
14419         * modules/dup2 (Depends-on): Add unistd.
14420         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14421
14422         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
14423         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
14424         REPLACE_CHOWN. Don't define chown as a macro here.
14425         * modules/chown (Depends-on): Add unistd.
14426         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14427
14428         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
14429         Add definition for GL_LINK_WARNING.
14430         (chown, dup2): New declarations.
14431         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
14432         link warning.
14433         (ftruncate): New declaration.
14434         (getcwd): New declaration, taken from old getcwd.h.
14435         (getlogin_r): New declaration, taken from old getlogin_r.h.
14436         (readlink): New declaration.
14437         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
14438         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
14439         (gl_PREREQ_UNISTD): Remove macro.
14440         (gl_UNISTD_MODULE_INDICATOR): New macro.
14441         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
14442         many new variables. Don't set UNISTD_H.
14443         * modules/unistd (Description): Change.
14444         (Depends-on): Add link-warning.
14445         (configure.ac): Update.
14446         (Makefile.am): Create unistd.h always. Substitute many new variables
14447         into it.
14448
14449 2007-02-18  Bruno Haible  <bruno@clisp.org>
14450
14451         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
14452         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
14453         HAVE_GETSUBOPT.
14454         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
14455         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
14456         * lib/getsubopt.h: Remove file.
14457         * modules/getsubopt (Files): Remove lib/getsubopt.h.
14458         (Depends-on): Add stdlib.
14459         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
14460         (Includes): Use <stdlib.h> instead of getsubopt.h.
14461         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
14462         Set HAVE_GETSUBOPT.
14463         * lib/getsubopt.c: Don't include getsubopt.h.
14464
14465 2007-02-18  Bruno Haible  <bruno@clisp.org>
14466
14467         * modules/fchdir (Depends-on): Add dup2.
14468
14469 2007-02-18  Bruno Haible  <bruno@clisp.org>
14470
14471         * lib/stdlib_.h: Handle glibc's special invocation convention
14472         specially.
14473
14474 2007-02-18  Bruno Haible  <bruno@clisp.org>
14475
14476         * modules/stdlib-tests: New file.
14477         * tests/test-stdlib.c: New file.
14478
14479         * modules/mkstemp (Files): Remove lib/mkstemp.h.
14480         (Depends-on): Add stdlib.
14481         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
14482         (Includes): Use <stdlib.h> instead of mkstemp.h.
14483         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
14484         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
14485         * lib/mkstemp.c: Don't include mkstemp.h.
14486         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
14487         * lib/stdlib--.h: Don't include mkstemp.h.
14488
14489         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
14490         (Depends-on): Add stdlib.
14491         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
14492         (Includes): Use <stdlib.h> instead of mkdtemp.h.
14493         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
14494         HAVE_MKDTEMP.
14495         * lib/mkdtemp.c: Don't include mkdtemp.h.
14496         * lib/clean-temp.c: Don't include mkdtemp.h.
14497
14498         * modules/exit (Files): Remove lib/exit.h.
14499         (Depends-on): Add stdlib.
14500         (Makefile.am): Remove lib_SOURCES.
14501         (Include): Use <stdlib.h> instead of exit.h.
14502         * lib/argmatch.c: Don't include exit.h.
14503         * lib/execute.c: Likewise.
14504         * lib/pagealign_alloc.c: Likewise.
14505         * lib/pipe.c: Likewise.
14506         * lib/wait-process.c: Likewise.
14507         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
14508         * lib/exitfail.c: Likewise.
14509         * lib/savewd.c: Likewise.
14510         * lib/xsetenv.c: Likewise.
14511
14512         * modules/stdlib: New file.
14513         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
14514         and extra comments about mkstemp().
14515         * lib/exit.h: Remove file.
14516         * lib/mkdtemp.h: Remove file.
14517         * lib/mkstemp.h: Remove file.
14518         * m4/stdlib_h.m4: New file.
14519         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
14520
14521 2007-02-18  Bruno Haible  <bruno@clisp.org>
14522
14523         * modules/math-tests: New file.
14524         * tests/test-math.c: New file.
14525
14526         * modules/math: New file.
14527         * modules/mathl (Files): Remove lib/mathl.h.
14528         (Depends-on): Add math.
14529         (Makefile.am): Don't mention mathl.h.
14530         (Include): Use <math.h> instead of mathl.h.
14531         * lib/math_.h: New file.
14532         * lib/mathl.h: Remove file.
14533         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
14534         mathl.h.
14535         * lib/asinl.c: Likewise.
14536         * lib/atanl.c: Likewise.
14537         * lib/ceill.c: Likewise.
14538         * lib/cosl.c: Likewise.
14539         * lib/expl.c: Likewise.
14540         * lib/floorl.c: Likewise.
14541         * lib/frexpl.c: Likewise.
14542         * lib/ldexpl.c: Likewise.
14543         * lib/logl.c: Likewise.
14544         * lib/sincosl.c: Likewise.
14545         * lib/sinl.c: Likewise.
14546         * lib/sqrtl.c: Likewise.
14547         * lib/tanl.c: Likewise.
14548         * lib/trigl.c: Likewise.
14549         * m4/math_h.m4: New file.
14550         * MODULES.html.sh (Mathematics): Add math.
14551
14552 2007-02-17  Bruno Haible  <bruno@clisp.org>
14553
14554         * modules/wctype-tests: New file.
14555         * tests/test-wctype.c: New file.
14556
14557         * modules/wchar-tests: New file.
14558         * tests/test-wchar.c: New file.
14559
14560         * modules/unistd-tests: New file.
14561         * tests/test-unistd.c: New file.
14562
14563         * modules/time-tests: New file.
14564         * tests/test-time.c: New file.
14565
14566         * modules/sysexits-tests: New file.
14567         * tests/test-sysexits.c: New file.
14568
14569         * modules/sys_time-tests: New file.
14570         * tests/test-sys_time.c: New file.
14571
14572         * modules/sys_stat-tests: New file.
14573         * tests/test-sys_stat.c: New file.
14574
14575         * modules/sys_socket-tests: New file.
14576         * tests/test-sys_socket.c: New file.
14577
14578         * modules/sys_select-tests: New file.
14579         * tests/test-sys_select.c: New file.
14580
14581         * modules/string-tests: New file.
14582         * tests/test-string.c: New file.
14583
14584         * modules/stdbool-tests: New file.
14585         * tests/test-stdbool.c: New file.
14586
14587         * modules/netinet_in-tests: New file.
14588         * tests/test-netinet_in.c: New file.
14589
14590         * modules/inttypes-tests: New file.
14591         * tests/test-inttypes.c: New file.
14592
14593         * modules/fcntl-tests: New file.
14594         * tests/test-fcntl.c: New file.
14595
14596         * modules/byteswap-tests: New file.
14597         * tests/test-byteswap.c: New file.
14598
14599         * modules/arpa_inet-tests: New file.
14600         * tests/test-arpa_inet.c: New file.
14601
14602 2007-02-17  Bruno Haible  <bruno@clisp.org>
14603
14604         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
14605         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
14606         if the corresponding module is not enabled. Emit link warnings if
14607         the function is used nevertheless.
14608         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
14609         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
14610         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
14611         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
14612         * modules/inttypes (Depends-on): Add link-warning.
14613         (Makefile.am): Copy the contents of build-aux/link-warning.h into
14614         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
14615         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
14616         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
14617         * modules/imaxdiv (configure.ac): Likewise.
14618         * modules/strtoimax (configure.ac): Likewise.
14619         * modules/strtoumax (configure.ac): Likewise.
14620
14621 2007-02-17  Bruno Haible  <bruno@clisp.org>
14622
14623         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
14624         gl_STRING_MODULE_INDICATOR_DEFAULTS.
14625         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
14626         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
14627
14628 2007-02-17  Bruno Haible  <bruno@clisp.org>
14629
14630         * modules/link-warning: New file.
14631         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
14632         * lib/string_.h (GL_LINK_WARNING): Remove definition.
14633         * modules/string (Depends-on): Add link-warning.
14634         (Makefile.am): Copy the contents of build-aux/link-warning.h into
14635         string.h.
14636         * MODULES.html.sh (Support for building libraries and executables): Add
14637         link-warning.
14638
14639 2007-02-17  Bruno Haible  <bruno@clisp.org>
14640
14641         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
14642         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
14643         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
14644         long lines.
14645
14646 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
14647             Bruno Haible  <bruno@clisp.org>
14648
14649         * modules/tmpfile: New file.
14650         * lib/tmpfile.c: New file.
14651         * m4/tmpfile.m4: New file.
14652         * MODULES.html.sh (func_all_modules): New section "Input/output".
14653
14654 2007-02-15  Bruno Haible  <bruno@clisp.org>
14655
14656         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
14657         (supports_delete_on_close): New function.
14658         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
14659
14660 2007-02-14  Bruno Haible  <bruno@clisp.org>
14661
14662         * modules/mbspcasecmp-tests: New file.
14663         * tests/test-mbspcasecmp.sh: New file.
14664         * tests/test-mbspcasecmp.c: New file.
14665
14666         New module mbspcasecmp.
14667         * modules/mbspcasecmp: New file.
14668         * lib/mbspcasecmp.c: New file.
14669         * lib/string_.h (strncasecmp): Change warning message.
14670         (mbspcasecmp): New declaration.
14671         * m4/mbspcasecmp.m4: New file.
14672         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14673         GNULIB_MBSPCASECMP.
14674         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
14675         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
14676
14677 2007-02-14  Bruno Haible  <bruno@clisp.org>
14678
14679         * modules/mbsncasecmp-tests: New file.
14680         * tests/test-mbsncasecmp.sh: New file.
14681         * tests/test-mbsncasecmp.c: New file.
14682
14683         New module mbsncasecmp.
14684         * modules/mbsncasecmp: New file.
14685         * lib/mbsncasecmp.c: New file.
14686         * lib/string_.h (mbsncasecmp): New declaration.
14687         * m4/mbsncasecmp.m4: New file.
14688         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14689         GNULIB_MBSNCASECMP.
14690         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
14691         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
14692
14693 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
14694
14695         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
14696         Verify that it doesn't overlap with our flags.
14697         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
14698         do not have the desired effect in multibyte locales; instead, use
14699         mbscasecmp.
14700         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
14701         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
14702         we don't require GNU fnmatch ourselves (if our users require it, they
14703         should do so explicitly).
14704
14705         Fix regex code so it doesn't rely on strcasecmp.
14706         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
14707         Otherwise, include gnulib's langinfo.h.
14708         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
14709         undesirable behavior in non-C locales.  Instead, rely on localecharset.
14710         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
14711         * modules/regex (FILES): Remove m4/codeset.m4.
14712         (Depends-on): Add localcharset.  Remove strcase.
14713
14714 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14715
14716         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
14717         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
14718
14719 2007-02-13  Bruno Haible  <bruno@clisp.org>
14720
14721         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
14722         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14723
14724 2007-02-12  Bruno Haible  <bruno@clisp.org>
14725
14726         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
14727         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
14728         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
14729         time warning rather than a link error.
14730
14731 2007-02-12  Bruno Haible  <bruno@clisp.org>
14732
14733         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
14734         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
14735         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14736
14737 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
14738
14739         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
14740         args, not 2.
14741
14742 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
14743
14744         New module 'time', so that apps can include <time.h> as per
14745         POSIX and GNU instead of separate include files like time_r.h
14746         and timegm.h.  This implementation tries out a simpler approach
14747         for replacing decls in standard include files (as compared to
14748         the string module), somewhat as an experiment.
14749
14750         * config/srclist.txt: Comment out mktime.c for now.
14751         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
14752         since it doesn't apply any more.  Use generic wording instead.
14753         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
14754         'time'.
14755         * lib/time_.h, m4/time_h.m4, modules/time: New files.
14756         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
14757         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
14758         Don't include <sys/types.h>; no longer needed since we assume C89.
14759         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
14760         * lib/strftime.c: Likewise.
14761         * lib/time_r.c: Likewise.
14762         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
14763         * lib/nanosleep.c: Include <time.h> first, to check interface.
14764         * lib/strptime.c: Likewise.
14765         * lib/time_r.c: Likewise.
14766         * lib/timegm.c: Likewise.
14767         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
14768         needed.
14769         * lib/timegm.c: Don't include timegm.h; no longer needed.
14770         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
14771         time.h now handles any problems in that area.
14772         (struct timespec, nanosleep): Remove; time.h now arranges for these.
14773         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
14774         that time.h defines struct timespec.
14775         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
14776         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
14777         handles that.
14778         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
14779         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
14780         needed.  Set REPLACE_LOCALTIME.
14781         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
14782         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
14783         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
14784         nanosleep; time_h.m4 now does that.  Don't require
14785         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
14786         module handles this now.
14787         * modules/getdate (Depends-on): Remove timespec.  Add time.
14788         * modules/nanosleep (Depends-on): Likewise.
14789         * modules/stat-time (Depends-on): Likewise.
14790         * modules/nanosleep (Include): Include time.h, not timespec.h.
14791         * modules/strptime (Files): Remove lib/strptime.h.
14792         (Depends-on): Add extensions, time.
14793         (Include): Include time.h, not strptime.h.
14794         * modules/time_r (Files): Remove lib/time_r.h.
14795         (Depends-on): Add time.
14796         (Include): Include time.h, not time_r.h.
14797         * modules/timegm: Likewise.
14798         * modules/timespec (Description): Now does timespec-related decls
14799         of our own, instead of struct timespec itself.
14800         (Depends-on): Add time; remove extensions.
14801         (Maintainer): Add self.
14802         * modules/utimecmp (Depends-on): Add time; remove timespec.
14803         * modules/utimens (Depends-on): Likewise.
14804         * modules/xnanosleep (Depends-on): Likewise.
14805
14806 2007-02-11  Bruno Haible  <bruno@clisp.org>
14807
14808         * lib/c-strstr.c: Include allocsa.h.
14809         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
14810         * lib/c-strcasestr.c: Include allocsa.h.
14811         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
14812         * lib/strcasestr.c: Include allocsa.h.
14813         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
14814         * lib/mbsstr.c: Include allocsa.h.
14815         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
14816         allocsa/freesa instead of malloc/free.
14817         * lib/mbscasestr.c: Include allocsa.h.
14818         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
14819         allocsa/freesa instead of malloc/free.
14820         * modules/c-strstr (Depends-on): Add allocsa.
14821         * modules/c-strcasestr (Depends-on): Likewise.
14822         * modules/strcasestr (Depends-on): Likewise.
14823         * modules/mbsstr (Depends-on): Likewise.
14824         * modules/mbscasestr (Depends-on): Likewise.
14825
14826 2007-02-11  Bruno Haible  <bruno@clisp.org>
14827
14828         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
14829
14830         * modules/mbsspn-tests: New file.
14831         * tests/test-mbsspn.sh: New file.
14832         * tests/test-mbsspn.c: New file.
14833
14834 2007-02-11  Bruno Haible  <bruno@clisp.org>
14835
14836         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
14837
14838         * modules/mbspbrk-tests: New file.
14839         * tests/test-mbspbrk.sh: New file.
14840         * tests/test-mbspbrk.c: New file.
14841
14842 2007-02-11  Bruno Haible  <bruno@clisp.org>
14843
14844         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
14845         unneeded cast.
14846
14847         * modules/mbscspn-tests: New file.
14848         * tests/test-mbscspn.sh: New file.
14849         * tests/test-mbscspn.c: New file.
14850
14851 2007-02-11  Bruno Haible  <bruno@clisp.org>
14852
14853         * modules/mbscasecmp-tests: New file.
14854         * tests/test-mbscasecmp.sh: New file.
14855         * tests/test-mbscasecmp.c: New file.
14856
14857 2007-02-11  Bruno Haible  <bruno@clisp.org>
14858
14859         Ensure O(n) worst-case complexity of mbscasestr.
14860         * lib/mbscasestr.c: Include stdbool.h.
14861         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
14862         functions.
14863         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
14864         the bookkeeping indicates that it's worth it.
14865         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
14866
14867         * modules/mbscasestr-tests: New file.
14868         * tests/test-mbscasestr1.c: New file.
14869         * tests/test-mbscasestr2.sh: New file.
14870         * tests/test-mbscasestr2.c: New file.
14871         * tests/test-mbscasestr3.sh: New file.
14872         * tests/test-mbscasestr3.c: New file.
14873         * tests/test-mbscasestr4.sh: New file.
14874         * tests/test-mbscasestr4.c: New file.
14875         * m4/locale-tr.m4: New file.
14876
14877 2007-02-11  Bruno Haible  <bruno@clisp.org>
14878
14879         Ensure O(n) worst-case complexity of mbsstr.
14880         * lib/mbsstr.c: Include stdbool.h.
14881         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
14882         functions.
14883         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
14884         bookkeeping indicates that it's worth it.
14885         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
14886
14887         * modules/mbsstr-tests: New file.
14888         * tests/test-mbsstr1.c: New file.
14889         * tests/test-mbsstr2.sh: New file.
14890         * tests/test-mbsstr2.c: New file.
14891         * tests/test-mbsstr3.sh: New file.
14892         * tests/test-mbsstr3.c: New file.
14893         * m4/locale-fr.m4: New file.
14894
14895 2007-02-11  Bruno Haible  <bruno@clisp.org>
14896
14897         * lib/mbsrchr.c (mbsrchr): Fix bug.
14898
14899         * modules/mbsrchr-tests: New file.
14900         * tests/test-mbsrchr.sh: New file.
14901         * tests/test-mbsrchr.c: New file.
14902
14903 2007-02-11  Bruno Haible  <bruno@clisp.org>
14904
14905         * lib/mbschr.c (mbschr): Fix bug.
14906
14907         * modules/mbschr-tests: New file.
14908         * tests/test-mbschr.sh: New file.
14909         * tests/test-mbschr.c: New file.
14910         * m4/locale-zh.m4: New file.
14911
14912 2007-02-11  Bruno Haible  <bruno@clisp.org>
14913
14914         Support for copying multibyte string iterators.
14915         * lib/mbiter.h: Include <string.h>.
14916         (mbiter_multi_copy): New function.
14917         (mbi_copy): New macro.
14918         * lib/mbuiter.h: Include <string.h>.
14919         (mbuiter_multi_copy): New function.
14920         (mbui_copy): New macro.
14921
14922 2007-02-11  Bruno Haible  <bruno@clisp.org>
14923
14924         New module mbslen.
14925         * modules/mbslen: New file.
14926         * lib/mbslen.c: New file.
14927         * lib/string_.h (mbslen): New declaration.
14928         * m4/mbslen.m4: New file.
14929         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14930         GNULIB_MBSLEN.
14931         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
14932         * MODULES.html.sh (Internationalization functions): Add mbslen.
14933
14934 2007-02-11  Bruno Haible  <bruno@clisp.org>
14935
14936         Ensure O(n) worst-case complexity of strcasestr substitute.
14937         * lib/strcasestr.c: Include stdbool.h.
14938         (knuth_morris_pratt): New function.
14939         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
14940         bookkeeping indicates that it's worth it.
14941         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
14942
14943         * modules/strcasestr-tests: New file.
14944         * tests/test-strcasestr.c: New file.
14945
14946 2007-02-11  Bruno Haible  <bruno@clisp.org>
14947
14948         Ensure O(n) worst-case complexity of c_strcasestr.
14949         * lib/c-strcasestr.c: Include stdbool.h, string.h.
14950         (knuth_morris_pratt): New function.
14951         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
14952         the bookkeeping indicates that it's worth it.
14953         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
14954
14955         * modules/c-strcasestr-tests: New file.
14956         * tests/test-c-strcasestr.c: New file.
14957
14958 2007-02-11  Bruno Haible  <bruno@clisp.org>
14959
14960         Ensure O(n) worst-case complexity of c_strstr.
14961         * lib/c-strstr.c: Include stdbool.h, string.h.
14962         (knuth_morris_pratt): New function.
14963         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
14964         bookkeeping indicates that it's worth it.
14965         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
14966
14967         * lib/c-strstr.c: Complete rewrite for maintainability.
14968
14969         * modules/c-strstr-tests: New file.
14970         * tests/test-c-strstr.c: New file.
14971
14972 2007-02-11  Bruno Haible  <bruno@clisp.org>
14973
14974         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
14975         5.2.1 and earlier, whereby \055 was treated just like the range
14976         delimiter '-'.
14977         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
14978
14979 2007-02-08  Bruno Haible  <bruno@clisp.org>
14980
14981         * modules/regex (Depends-on): Add stdbool.
14982         Reported by Dalibor Topic <robilad@kaffe.org>.
14983
14984 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
14985
14986         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
14987         Prefer returning from main to exiting from it.
14988         Remove unnecessary parens after sizeof.
14989
14990 2007-02-05  Bruno Haible  <bruno@clisp.org>
14991
14992         New module mbssep.
14993         * modules/mbssep: New file.
14994         * lib/mbssep.c: New file.
14995         * lib/string_.h (strsep): Add a conditional link warning.
14996         (mbssep): New declaration.
14997         * m4/mbssep.m4: New file.
14998         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14999         GNULIB_MBSSEP.
15000         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
15001         * MODULES.html.sh (Internationalization functions): Add mbssep.
15002
15003 2007-02-05  Bruno Haible  <bruno@clisp.org>
15004
15005         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
15006         Optimize search in case of 1 delimiter.
15007
15008 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
15009
15010         * lib/acl.h: Include sys/types.h before sys/acl.h.
15011
15012 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
15013
15014         Merge upstream fix for glibc bugzilla #3957:
15015
15016         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
15017
15018         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
15019         bit for RE_HAT_LISTS_NOT_NEWLINE.
15020         (build_charclass_op): Remove bogus comment.
15021
15022 2007-02-05  Simon Josefsson  <simon@josefsson.org>
15023
15024         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
15025
15026 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
15027
15028         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
15029         * lib/memmem.c [!defined _LIBC]: Include config.h.
15030
15031 2007-02-04  Bruno Haible  <bruno@clisp.org>
15032
15033         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
15034         warning message.
15035
15036 2007-02-04  Bruno Haible  <bruno@clisp.org>
15037
15038         New module mbstok_r.
15039         * modules/mbstok_r: New file.
15040         * lib/mbstok_r.c: New file.
15041         * lib/string_.h (strtok_r): Change argument names to match the
15042         comments. Add a conditional link warning.
15043         (mbstok_r): New declaration.
15044         * m4/mbstok_r.m4: New file.
15045         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15046         GNULIB_MBSTOK_R.
15047         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
15048         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
15049
15050 2007-02-04  Bruno Haible  <bruno@clisp.org>
15051
15052         New module mbsspn.
15053         * modules/mbsspn: New file.
15054         * lib/mbsspn.c: New file.
15055         * lib/string_.h (strspn): Add a conditional link warning.
15056         (mbsspn): New declaration.
15057         * m4/mbsspn.m4: New file.
15058         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15059         GNULIB_MBSSPN.
15060         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
15061         * MODULES.html.sh (Internationalization functions): Add mbsspn.
15062
15063 2007-02-04  Bruno Haible  <bruno@clisp.org>
15064
15065         New module mbspbrk.
15066         * modules/mbspbrk: New file.
15067         * lib/mbspbrk.c: New file.
15068         * lib/string_.h (strpbrk): Add a conditional link warning.
15069         (mbspbrk): New declaration.
15070         * m4/mbspbrk.m4: New file.
15071         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15072         GNULIB_MBSPBRK.
15073         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
15074         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
15075
15076 2007-02-04  Bruno Haible  <bruno@clisp.org>
15077
15078         New module mbscspn.
15079         * modules/mbscspn: New file.
15080         * lib/mbscspn.c: New file.
15081         * lib/string_.h (strcspn): Add a conditional link warning.
15082         (mbscspn): New declaration.
15083         * m4/mbscspn.m4: New file.
15084         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15085         GNULIB_MBSCSPN.
15086         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
15087         * MODULES.html.sh (Internationalization functions): Add mbscspn.
15088
15089 2007-02-04  Bruno Haible  <bruno@clisp.org>
15090
15091         New module mbscasestr, reduced goal of strcasestr.
15092         * modules/mbscasestr: New file.
15093         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
15094         (mbscasestr): Renamed from strcasestr.
15095         * lib/strcasestr.c: Don't include mbuiter.h.
15096         (strcasestr): Remove support for multibyte locales.
15097         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
15098         Change the conditional link warning.
15099         (mbscasestr): New declaration.
15100         * m4/mbscasestr.m4: New file.
15101         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
15102         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
15103         REPLACE_STRCASESTR.
15104         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
15105         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
15106         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
15107         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
15108         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
15109         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
15110         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
15111         (Depends-on): Remove mbuiter.
15112         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
15113
15114 2007-02-04  Bruno Haible  <bruno@clisp.org>
15115
15116         Simplify handling of strncasecmp.
15117         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
15118         the conditional link warning.
15119         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
15120         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
15121         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
15122         * modules/strcase (configure.ac): Don't invoke
15123         gl_STRING_MODULE_INDICATOR.
15124         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
15125
15126 2007-02-04  Bruno Haible  <bruno@clisp.org>
15127
15128         New module mbscasecmp, reduced goal of strcasecmp.
15129         * modules/mbscasecmp: New file.
15130         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
15131         (mbscasecmp): Renamed from strcasecmp.
15132         * lib/strcasecmp.c: Don't include mbuiter.h.
15133         (strcasecmp): Remove support for multibyte locales.
15134         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
15135         Change the conditional link warning.
15136         (mbscasecmp): New declaration.
15137         * m4/mbscasecmp.m4: New file.
15138         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
15139         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
15140         REPLACE_STRCASECMP.
15141         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
15142         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15143         GNULIB_MBSCASECMP.
15144         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
15145         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
15146         * modules/strcase (Files): Remove m4/mbrtowc.m4.
15147         (Depends-on): Remove mbuiter.
15148         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
15149
15150 2007-02-04  Bruno Haible  <bruno@clisp.org>
15151
15152         New module mbsstr. Remove module strstr.
15153         * modules/mbsstr: New file.
15154         * modules/strstr: Remove file.
15155         * lib/mbsstr.c: Renamed from lib/strstr.c.
15156         (mbsstr): Renamed from strstr.
15157         * lib/string_.h (strstr): Remove declaration. Change the conditional
15158         link warning.
15159         (mbsstr): New declaration.
15160         * m4/mbsstr.m4: New file.
15161         * m4/strstr.m4: Remove file.
15162         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
15163         REPLACE_STRSTR.
15164         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
15165         Don't initialize GNULIB_STRSTR.
15166         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
15167         substitute GNULIB_STRSTR and REPLACE_STRSTR.
15168         * MODULES.html.sh (Internationalization functions): Add mbsstr.
15169         (Support for systems lacking ANSI C 89): Remove strstr.
15170
15171 2007-02-04  Bruno Haible  <bruno@clisp.org>
15172
15173         New module mbsrchr.
15174         * modules/mbsrchr: New file.
15175         * lib/mbsrchr.c: New file.
15176         * lib/string_.h (strrchr): Add a conditional link warning.
15177         (mbsrchr): New declaration.
15178         * m4/mbsrchr.m4: New file.
15179         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15180         GNULIB_MBSRCHR.
15181         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
15182         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
15183
15184 2007-02-04  Bruno Haible  <bruno@clisp.org>
15185
15186         New module mbschr.
15187         * modules/mbschr: New file.
15188         * lib/mbschr.c: New file.
15189         * lib/string_.h (strchr): Add a conditional link warning.
15190         (mbschr): New declaration.
15191         * m4/mbschr.m4: New file.
15192         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15193         GNULIB_MBSCHR.
15194         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
15195         * MODULES.html.sh (Internationalization functions): Add mbschr.
15196
15197 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
15198
15199         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
15200
15201         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
15202
15203 2007-02-04  Bruno Haible  <bruno@clisp.org>
15204
15205         New module description section 'configure.ac-early'.
15206         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
15207         (func_get_autoconf_early_snippet): New function.
15208         (func_import, func_create_testdir): Use it. Remove special cases for
15209         modules 'extensions' and 'lock'.
15210         * modules/extensions (configure.ac-early): Require
15211         gl_USE_SYSTEM_EXTENSIONS.
15212         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
15213
15214 2007-02-04  Bruno Haible  <bruno@clisp.org>
15215
15216         Make use of gcj-4.3's -fsource and -ftarget option.
15217         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
15218         and if so try the options -fsource and -ftarget.
15219         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
15220         source_version, ftarget_option, target_version arguments.
15221         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
15222         (is_envjavac_oldgcj_14_14_usable): Renamed from
15223         is_envjavac_gcj_14_14_usable.
15224         (is_envjavac_oldgcj_14_13_usable): Renamed from
15225         is_envjavac_gcj_14_13_usable.
15226         (is_gcj_present): Update.
15227         (is_gcj_43, is_gcj43_usable): New functions.
15228         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
15229         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
15230         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
15231         try the options -fsource and -ftarget.
15232
15233 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
15234
15235         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
15236         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
15237         larger value.
15238
15239 2007-02-03  Jim Meyering  <jim@meyering.net>
15240
15241         Give tools a better chance to allocate space for very large buffers.
15242         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
15243
15244         Make pwd and readlink work also when run with an unreadable parent dir
15245         on systems with openat support.
15246         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
15247         provided getcwd function, even when we have openat support.
15248         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
15249
15250 2007-02-02  Bruno Haible  <bruno@clisp.org>
15251
15252         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
15253         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
15254         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
15255         portability problems if one of these functions is only used on specific
15256         platforms.
15257         Reported by Paul Eggert.
15258
15259 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
15260
15261         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
15262         is causing more trouble than it's curing.
15263         * lib/regex_internal.h (__mempcpy): Remove.
15264         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
15265         (and make the code a tad smaller to boot).
15266         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
15267
15268 2007-02-02  Jim Meyering  <jim@meyering.net>
15269
15270         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
15271         section, not in the Makefile.am: one.
15272
15273 2007-02-02  Eric Blake  <ebb9@byu.net>
15274
15275         * lib/strchrnul.c: Always include config.h first.
15276
15277         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
15278         gnulib strstr is not necessary here.
15279
15280 2007-02-02  Simon Josefsson  <simon@josefsson.org>
15281
15282         * m4/socklen.m4: Fix typo.
15283
15284 2007-02-02  Eric Blake  <ebb9@byu.net>
15285
15286         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
15287         * modules/netinet_in (Makefile.am): Likewise.
15288
15289 2007-02-01  Bruno Haible  <bruno@clisp.org>
15290
15291         * lib/string_.h (GL_LINK_WARNING): New macro.
15292         (strcasecmp, strstr, strcasestr): If provided by the system,
15293         conditionally define as a macro that leads to a warning instead of to
15294         an error.
15295         (strncasecmp): Conditionally define as a macro that leads to a warning.
15296
15297 2007-02-01  Karl Berry  <karl@gnu.org>
15298
15299         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
15300
15301 2007-02-01  Bruno Haible  <bruno@clisp.org>
15302
15303         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
15304         renamings.
15305
15306 2007-02-01  Eric Blake  <ebb9@byu.net>
15307
15308         * modules/regex (Depends-on): Revert dependence on mempcpy.
15309         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
15310         module's definition of mempcpy.
15311         Reported by Paul Eggert.
15312
15313 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
15314
15315         * lib/string_.h: If the gnulib module XYZ is not present, undefine
15316         the symbol XYZ before redefining it.  This fixes a problem with
15317         programs that don't use XYZ, when compiled on systems that define
15318         XYZ to something else.
15319
15320 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
15321
15322         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
15323         occurs when "mkdir -m foo" creates a setgid directory that is (1)
15324         writeable to group or other and (2) is intended to have a special
15325         mode bit that is set or cleared.  In such a case, the directory
15326         should be neither group- nor other-writeable until the special
15327         mode bits are right.
15328
15329 2007-01-31  Eric Blake  <ebb9@byu.net>
15330
15331         * modules/mountlist (Depends-on): Add strstr.
15332
15333         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
15334         bug.
15335         * modules/string (Makefile.am): Remove redundant replacement.
15336         * modules/regex (Depends-on): Add mempcpy.
15337
15338 2007-01-31  Bruno Haible  <bruno@clisp.org>
15339
15340         New module description field 'Link'.
15341         * gnulib-tool (func_usage): Document --extract-link-directive.
15342         (sed_extract_prog): Recognize 'Link' directive.
15343         (func_get_link_directive): New function.
15344         (func_import): Show summary of link directives.
15345         Handle --extract-link-directive option.
15346         * modules/acl (Link): New section.
15347         * modules/clock-time (Link): New section.
15348         * modules/euidaccess (Link): New section.
15349         * modules/gettext (Link): New section.
15350         * modules/iconv (Link): New section.
15351         * modules/lock (Link): New section.
15352         * modules/nanosleep (Link): New section.
15353         * modules/readline (Link): New section.
15354
15355 2007-01-27  Bruno Haible  <bruno@clisp.org>
15356
15357         Enforce the use of gnulib modules for unportable <string.h> functions.
15358         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
15359         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
15360         (gl_HEADER_STRING_H_BODY): Require it.
15361         * lib/string_.h: If the gnulib module XYZ is not present, redefine
15362         the symbol XYZ to one that gives a link error.
15363         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
15364         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
15365         * modules/mempcpy (configure.ac): Likewise.
15366         * modules/memrchr (configure.ac): Likewise.
15367         * modules/stpcpy (configure.ac): Likewise.
15368         * modules/stpncpy (configure.ac): Likewise.
15369         * modules/strcase (configure.ac): Likewise.
15370         * modules/strcasestr (configure.ac): Likewise.
15371         * modules/strchrnul (configure.ac): Likewise.
15372         * modules/strdup (configure.ac): Likewise.
15373         * modules/strndup (configure.ac): Likewise.
15374         * modules/strnlen (configure.ac): Likewise.
15375         * modules/strpbrk (configure.ac): Likewise.
15376         * modules/strsep (configure.ac): Likewise.
15377         * modules/strstr (configure.ac): Likewise.
15378         * modules/strtok_r (configure.ac): Likewise.
15379
15380 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
15381
15382         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
15383
15384 2007-01-30  Jim Meyering  <jim@meyering.net>
15385
15386         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
15387
15388 2007-01-29  Bruno Haible  <bruno@clisp.org>
15389
15390         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
15391         * lib/execute.c: Likewise.
15392         * lib/pipe.c: Likewise.
15393         * lib/printf-args.h: Likewise.
15394         * lib/printf-args.c: Likewise.
15395         * lib/printf-parse.c: Likewise.
15396         * lib/vasnprintf.c: Likewise.
15397
15398 2007-01-29  Eric Blake  <ebb9@byu.net>
15399
15400         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
15401         declaration.
15402
15403 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
15404
15405         * lib/strptime.h (strptime): Use 'restrict' for args where
15406         POSIX requires this.
15407         * lib/strptime.c (strptime): Likewise.
15408         Change license notice from LGPL to GPL, since gnulib-tool will
15409         change this as needed.
15410         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
15411         defined.
15412         Include "strptime.h" first, to check interface.
15413         Do not #undef _LIBC and _NL_CURRENT.
15414         Do not include <stdlib.h>; no longer needed.
15415         Include "time_r.h" and declare ptime_locale_status
15416         only if _LIBC is not defined.
15417         (__P): Remove unused macro.
15418         (match_string): Bring back glibc version, but use it only if _LIBC
15419         is defined.
15420         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
15421         Remove unnecessary assertion and abort() call.
15422         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
15423         * m4/strptime.m4: Fix serial number comment.
15424         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
15425         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
15426         (Depends-on): Add time_r.
15427
15428 2007-01-29  Bruno Haible  <bruno@clisp.org>
15429
15430         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
15431         strptime.
15432         * modules/strptime (Depends-on): Add stdbool.
15433         * lib/strptime.h: Include <time.h> always. Add comments.
15434
15435 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
15436
15437         * modules/strptime: New file.
15438         * lib/strptime.h: New file.
15439         * lib/strptime.c: New file.
15440         * m4/strptime.m4: New file.
15441
15442 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
15443
15444         * MODULES.html.sh: New module mpsort.
15445         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
15446
15447         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
15448         a circularity problem with HP-UX ia64 reported by Bob Proulx in
15449         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
15450         All uses changed.
15451         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
15452         All uses changed.
15453         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
15454         to _Restrict_.
15455         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
15456         the parameter matches the prototype.
15457
15458 2007-01-28  Jim Meyering  <jim@meyering.net>
15459
15460         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
15461         sys/time.h here, reverting that part of the previous patch:
15462         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
15463
15464 2007-01-28  Bruno Haible  <bruno@clisp.org>
15465
15466         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
15467         value of $(SYS_TIME_H).
15468         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
15469         remove it conditionally, too. [added by Jim Meyering]
15470         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
15471         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
15472         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
15473         GETTIMEOFDAY_REPLACEMENT to 1.
15474
15475 2007-01-28  Bruno Haible  <bruno@clisp.org>
15476
15477         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
15478         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
15479         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
15480         Set UNISTD_H instead of UNISTD_H2.
15481         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
15482
15483 2007-01-28  Bruno Haible  <bruno@clisp.org>
15484
15485         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
15486         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
15487
15488 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15489
15490         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
15491         (func_create_testdir): Ensure C locale for `grep' and `tr'
15492         character ranges.
15493         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
15494         ACLOCAL_AMFLAGS parsing state machine.
15495
15496 2007-01-27  Bruno Haible  <bruno@clisp.org>
15497
15498         * modules/unistr/base: Update.
15499
15500 2007-01-27  Bruno Haible  <bruno@clisp.org>
15501
15502         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
15503         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
15504         * modules/unistr/u32-mbtouc-unsafe: Renamed from
15505         modules/unistr/u32-mbtouc.
15506         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
15507         * lib/unistr.h: Update.
15508         * lib/linebreak.c: Update.
15509         * modules/unistr/u32-mbtouc: Renamed from
15510         modules/unistr/u32-mbtouc-safe.
15511         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
15512         * lib/unistr.h: Update.
15513         * lib/unistr/u32-to-u8.c: Update.
15514         * lib/unistr/u32-to-u16.c: Update.
15515
15516 2007-01-27  Bruno Haible  <bruno@clisp.org>
15517
15518         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
15519         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
15520         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
15521         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
15522         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
15523         * modules/unistr/u16-mbtouc-unsafe: Renamed from
15524         modules/unistr/u16-mbtouc.
15525         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
15526         * lib/unistr.h: Update.
15527         * lib/linebreak.c: Update.
15528         * modules/linebreak: Update.
15529         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
15530         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
15531         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
15532         * modules/unistr/u16-mbtouc: Renamed from
15533         modules/unistr/u16-mbtouc-safe.
15534         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
15535         * lib/unistr.h: Update.
15536         * lib/unistr/u16-to-u8.c: Update.
15537         * modules/unistr/u16-to-u8: Update.
15538         * lib/unistr/u16-to-u32.c: Update.
15539         * modules/unistr/u16-to-u32: Update.
15540
15541 2007-01-27  Bruno Haible  <bruno@clisp.org>
15542
15543         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
15544         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
15545         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
15546         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
15547         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
15548         * modules/unistr/u8-mbtouc-unsafe: Renamed from
15549         modules/unistr/u8-mbtouc.
15550         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
15551         * lib/unistr.h: Update.
15552         * lib/striconveh.c: Update.
15553         * modules/striconveh: Update.
15554         * lib/linebreak.c: Update.
15555         * modules/linebreak: Update.
15556         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
15557         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
15558         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
15559         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
15560         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
15561         * lib/unistr.h: Update.
15562         * lib/striconveh.c: Update.
15563         * modules/striconveh: Update.
15564         * lib/unistr/u8-to-u16.c: Update.
15565         * modules/unistr/u8-to-u16: Update.
15566         * lib/unistr/u8-to-u32.c: Update.
15567         * modules/unistr/u8-to-u32: Update.
15568
15569 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15570
15571         Sync from Libtool.
15572         * lib/argz.c: Do not include strings.h nor memory.h, include
15573         string.h unconditionally.  Patch by Simon Josefsson.
15574
15575 2007-01-27  Bruno Haible  <bruno@clisp.org>
15576
15577         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
15578         from gl_HEADER_STRING_H_BODY.
15579         (gl_HEADER_STRING_H_BODY): Require it.
15580         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
15581         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
15582         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
15583         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
15584         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
15585         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
15586         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
15587         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
15588         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
15589         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
15590         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
15591         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
15592         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
15593         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
15594         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
15595
15596 2007-01-27  Bruno Haible  <bruno@clisp.org>
15597
15598         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
15599         check_PROGRAMS into noinst_PROGRAMS.
15600         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
15601         check_PROGRAMS in this case.
15602         (func_import): Set for_test to false.
15603         (func_create_testdir): Set for_test to true.
15604
15605 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
15606             Bruno Haible  <bruno@clisp.org>
15607
15608         * modules/strcasestr (Files): Remove lib/strcasestr.h.
15609         (Depends-on): Add string.
15610         (Includes): Use <string.h> instead of strcasestr.h.
15611         * modules/string (Makefile.am): Also substitute the value of
15612         REPLACE_STRCASESTR.
15613         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
15614         assume strcasestr is declared in <string.h> not <strings.h>. Also
15615         set REPLACE_STRCASESTR.
15616         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
15617         REPLACE_STRCASESTR.
15618         * lib/strcasestr.h: Remove file.
15619         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
15620         * lib/string_.h (strcasestr): New declaration.
15621
15622 2007-01-27  Bruno Haible  <bruno@clisp.org>
15623
15624         * lib/string_.h: Use 'extern'.
15625
15626 2007-01-27  Jim Meyering  <jim@meyering.net>
15627
15628         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
15629         of set-but-not-used local, "q".
15630
15631         * lib/mempcpy.c: Include <config.h> before <string.h>.
15632         This fixes a compilation error on HP-UX, due to the system's
15633         "restrict"-using mempcpy prototype.
15634
15635 2007-01-26  Bruno Haible  <bruno@clisp.org>
15636
15637         Small optimization.
15638         * lib/javacomp.c: Include c-strstr.h.
15639          (is_envjavac_gcj): Use c_strstr instead of strstr.
15640         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
15641
15642 2007-01-26  Bruno Haible  <bruno@clisp.org>
15643
15644         * MODULES.html.sh (Unicode string functions): Add the new modules.
15645
15646         * modules/uniconv/u32-strconv-to-locale: New file.
15647         * lib/uniconv/u32-strconv-to-locale.c: New file.
15648
15649         * modules/uniconv/u16-strconv-to-locale: New file.
15650         * lib/uniconv/u16-strconv-to-locale.c: New file.
15651
15652         * modules/uniconv/u8-strconv-to-locale: New file.
15653         * lib/uniconv/u8-strconv-to-locale.c: New file.
15654
15655         * modules/uniconv/u32-strconv-from-locale: New file.
15656         * lib/uniconv/u32-strconv-from-locale.c: New file.
15657
15658         * modules/uniconv/u16-strconv-from-locale: New file.
15659         * lib/uniconv/u16-strconv-from-locale.c: New file.
15660
15661         * modules/uniconv/u8-strconv-from-locale: New file.
15662         * lib/uniconv/u8-strconv-from-locale.c: New file.
15663
15664         * modules/uniconv/u32-strconv-to-enc: New file.
15665         * lib/uniconv/u32-strconv-to-enc.c: New file.
15666         * modules/uniconv/u32-strconv-to-enc-tests: New file.
15667         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
15668
15669         * modules/uniconv/u16-strconv-to-enc: New file.
15670         * lib/uniconv/u16-strconv-to-enc.c: New file.
15671         * lib/uniconv/u-strconv-to-enc.h: New file.
15672         * modules/uniconv/u16-strconv-to-enc-tests: New file.
15673         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
15674
15675         * modules/uniconv/u8-strconv-to-enc: New file.
15676         * lib/uniconv/u8-strconv-to-enc.c: New file.
15677         * modules/uniconv/u8-strconv-to-enc-tests: New file.
15678         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
15679
15680         * modules/uniconv/u32-strconv-from-enc: New file.
15681         * lib/uniconv/u32-strconv-from-enc.c: New file.
15682         * modules/uniconv/u32-strconv-from-enc-tests: New file.
15683         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
15684
15685         * modules/uniconv/u16-strconv-from-enc: New file.
15686         * lib/uniconv/u16-strconv-from-enc.c: New file.
15687         * modules/uniconv/u16-strconv-from-enc-tests: New file.
15688         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
15689
15690         * modules/uniconv/u8-strconv-from-enc: New file.
15691         * lib/uniconv/u8-strconv-from-enc.c: New file.
15692         * lib/uniconv/u-strconv-from-enc.h: New file.
15693         * modules/uniconv/u8-strconv-from-enc-tests: New file.
15694         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
15695
15696         * modules/uniconv/u32-conv-from-enc: New file.
15697         * lib/uniconv/u32-conv-from-enc.c: New file.
15698         * modules/uniconv/u32-conv-from-enc-tests: New file.
15699         * tests/uniconv/test-u32-conv-from-enc.c: New file.
15700
15701         * modules/uniconv/u16-conv-from-enc: New file.
15702         * lib/uniconv/u16-conv-from-enc.c: New file.
15703         * lib/uniconv/u-conv-from-enc.h: New file.
15704         * modules/uniconv/u16-conv-from-enc-tests: New file.
15705         * tests/uniconv/test-u16-conv-from-enc.c: New file.
15706
15707         * modules/uniconv/u8-conv-from-enc: New file.
15708         * lib/uniconv/u8-conv-from-enc.c: New file.
15709         * modules/uniconv/u8-conv-from-enc-tests: New file.
15710         * tests/uniconv/test-u8-conv-from-enc.c: New file.
15711
15712         * modules/uniconv/base: New file.
15713         * lib/uniconv.h: New file.
15714
15715 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
15716
15717         * doc/gnulib-tool.texi (Initial import): Update to match current
15718         behavior with strdup module.
15719         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
15720         * lib/memmem.h: Remove; all uses removed.  This is now done
15721         by <string.h>.
15722         * lib/mempcpy.h: Likewise.
15723         * lib/memrchr.h: Likewise.
15724         * lib/stpcpy.h: Likewise.
15725         * lib/stpncpy.h: Likewise.
15726         * lib/strcase.h: Likewise.
15727         * lib/strchrnul.h: Likewise.
15728         * lib/strdup.h: Likewise.
15729         * lib/strndup.h: Likewise.
15730         * lib/strnlen.h: Likewise.
15731         * lib/strpbrk.h: Likewise.
15732         * lib/strsep.h: Likewise.
15733         * lib/strstr.h: Likewise.
15734         * lib/strtok_r.h: Likewise.
15735         * lib/string_.h: New file.
15736         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
15737         Rely on <string.h> instead.
15738         * lib/canon-host.c: Likewise.
15739         * lib/chdir-long.c: Likewise.
15740         * lib/concatpath.c: Likewise.
15741         * lib/exclude.c: Likewise.
15742         * lib/fchdir.c: Likewise.
15743         * lib/getaddrinfo.c: Likewise.
15744         * lib/getcwd.c: Likewise.
15745         * lib/getsubopt.c: Likewise.
15746         * lib/glob.c: Likewise.
15747         * lib/hard-locale.c: Likewise.
15748         * lib/iconvme.c: Likewise.
15749         * lib/javacomp.c: Likewise.
15750         * lib/mempcpy.c: Likewise.
15751         * lib/memrchr.c: Likewise.
15752         * lib/regex_internal.h: Likewise.
15753         * lib/stpncpy.c: Likewise.
15754         * lib/strcasecmp.c: Likewise.
15755         * lib/strchrnul.c: Likewise.
15756         * lib/strdup.c: Likewise.
15757         * lib/striconv.c: Likewise.
15758         * lib/striconveh.c: Likewise.
15759         * lib/striconveha.c: Likewise.
15760         * lib/strncasecmp.c: Likewise.
15761         * lib/strndup.c: Likewise.
15762         * lib/strnlen.c: Likewise.
15763         * lib/strsep.c: Likewise.
15764         * lib/strstr.c: Likewise.
15765         * lib/strtok_r.c: Likewise.
15766         * lib/userspec.c: Likewise.
15767         * lib/w32spawn.h: Likewise.
15768         * lib/xstrndup.c: Likewise.
15769         * lib/mountlist.c (strstr): Remove decl.
15770         * m4/string_h.m4: New file.
15771         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
15772         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
15773         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
15774         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
15775         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
15776         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
15777         Set REPLACE_STRCASECMP if necessary.
15778         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
15779         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
15780         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
15781         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
15782         HAVE_DECL_STRDUP if necessary.
15783         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
15784         since gl_FUNC_STRNDUP does that now.
15785         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
15786         Check for decl here...
15787         (gl_PREREQ_STRNLEN): ... not here.
15788         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
15789         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
15790         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
15791         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
15792         necessary.
15793         * modules/string: New file.
15794         * modules/memmem (Files): Remove special-purpose include file.
15795         (Depends-on): Add string.
15796         (Include): Include <string.h>, not the removed file.
15797         * modules/mempcpy: Likewise.
15798         * modules/memrchr: Likewise.
15799         * modules/stpcpy: Likewise.
15800         * modules/stpncpy: Likewise.
15801         * modules/strcase: Likewise.
15802         * modules/strchrnul: Likewise.
15803         * modules/strdup: Likewise.
15804         * modules/strndup: Likewise.
15805         * modules/strnlen: Likewise.
15806         * modules/strpbrk: Likewise.
15807         * modules/strsep: Likewise.
15808         * modules/strstr: Likewise.
15809         * modules/strtok_r: Likewise.
15810         * tests/test-dirname.c: Don't include "strdup.h", since
15811         <string.h> now suffices.
15812         * tests/test-memmem.c: Don't include "memmem.h", since
15813         <string.h> now suffices.
15814
15815 2007-01-25  Bruno Haible  <bruno@clisp.org>
15816
15817         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
15818         *resultp is 0.
15819
15820         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
15821         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
15822         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
15823         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
15824
15825         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
15826         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
15827         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
15828         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
15829         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
15830         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
15831
15832 2007-01-24  Bruno Haible  <bruno@clisp.org>
15833
15834         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
15835         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
15836         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
15837         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
15838         gl_FUNC_FTS_CORE.
15839         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
15840         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
15841         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
15842         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
15843         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
15844         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
15845         gl_FUNC_FCHOWNAT.
15846         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
15847         gl_FUNC_STRFTIME.
15848         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
15849         Reported by Ralf Wildenhues.
15850
15851 2007-01-24  Bruno Haible  <bruno@clisp.org>
15852
15853         Drop AC_REQUIRE calls that are redundant with the module dependencies.
15854         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
15855         gl_GETADDRINFO.
15856         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
15857         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
15858         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
15859
15860 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
15861
15862         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
15863         Don't use 'exit'; just return from 'main'.
15864         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
15865
15866         * lib/fnmatch_.h: Readjust white space and comments to match
15867         glibc, to avoid spurious diffs.
15868
15869 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
15870
15871         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
15872         2004-12-01 change by Jakub Jelinek, since this code won't compile
15873         if !LIBC.  Problem reported by Bob Proulx.
15874
15875 2007-01-23  Bruno Haible  <bruno@clisp.org>
15876
15877         * lib/striconveh.c: Include c-strcaseeq.h.
15878         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
15879         * modules/striconveh (Depends-on): Add c-strcaseeq.
15880
15881 2007-01-23  Bruno Haible  <bruno@clisp.org>
15882
15883         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
15884
15885         * modules/c-strcaseeq: New file.
15886         * lib/c-strcaseeq.h: New file.
15887
15888         * modules/streq: New file.
15889         * lib/streq.h: New file.
15890
15891 2007-01-23  Bruno Haible  <bruno@clisp.org>
15892
15893         * modules/striconveha-tests: New file.
15894         * tests/test-striconveha.c: New file.
15895
15896         * lib/striconveha.h: Include <stdbool.h>.
15897         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
15898         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
15899         (mem_iconveha_notranslit): Renamed from mem_iconveha.
15900         (mem_iconveha): New function.
15901         (str_iconveha_notranslit): Renamed from str_iconveha.
15902         (str_iconveha): New function.
15903         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
15904         c-strcase.
15905
15906 2007-01-23  Bruno Haible  <bruno@clisp.org>
15907
15908         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
15909         encodings without forgiving before trying any encoding with handler.
15910         (str_iconveha): Try all encodings without forgiving before trying any
15911         encoding with handler.
15912
15913 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
15914
15915         Import the following changes from libc.
15916
15917         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
15918
15919         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
15920
15921         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
15922
15923         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
15924         normal_bracket label.
15925
15926         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
15927
15928         [BZ #361]
15929         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
15930         to normal_bracket after fetching the next character.
15931
15932 2007-01-22  Bruno Haible  <bruno@clisp.org>
15933
15934         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
15935         argument.
15936         * lib/striconveh.c (iconv_carefully_1): New function.
15937         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
15938         argument.
15939         (str_cd_iconveh): Update.
15940         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
15941         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
15942         * tests/test-striconveh.c (MAGIC): New macro.
15943         (new_offsets): New function.
15944         (main): Test call with and without offsets.
15945
15946 2007-01-22  Bruno Haible  <bruno@clisp.org>
15947
15948         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
15949         * modules/sys_select (Makefile.am): Likewise.
15950         * modules/sys_socket (Makefile.am): Likewise.
15951         * modules/sys_time (Makefile.am): Likewise.
15952
15953 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
15954
15955         * modules/gettimeofday (License): Change from GPL to LGPL, since
15956         gettimeofday is a library function.
15957
15958 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15959
15960         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
15961
15962 2007-01-21  Bruno Haible  <bruno@clisp.org>
15963
15964         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
15965
15966 2007-01-21  Bruno Haible  <bruno@clisp.org>
15967
15968         * modules/striconveha: New file.
15969         * lib/striconveha.h: New file.
15970         * lib/striconveha.c: New file.
15971         * MODULES.html.sh (Internationalization functions): Add striconveha.
15972         * lib/striconv.c (str_iconv): Optimize the case of an empty input
15973         string.
15974         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
15975
15976 2007-01-21  Bruno Haible  <bruno@clisp.org>
15977
15978         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
15979         * lib/striconveh.c (str_iconveh): Likewise.
15980
15981 2007-01-21  Bruno Haible  <bruno@clisp.org>
15982
15983         * lib/striconveh.h (mem_iconveh): New declaration.
15984         * lib/striconveh.c (mem_iconveh): New function.
15985         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
15986
15987 2007-01-21  Bruno Haible  <bruno@clisp.org>
15988
15989         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
15990
15991         * lib/striconveh.h (mem_cd_iconveh): Change specification.
15992         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
15993         original result buffer.
15994         (str_cd_iconveh): Update.
15995         * tests/test-striconveh.c (main): Update.
15996
15997         * lib/striconv.h (mem_cd_iconv): Change specification.
15998         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
15999         result buffer.
16000         (str_cd_iconv): Update.
16001         * tests/test-striconv.c (main): Update.
16002
16003 2007-01-21  Bruno Haible  <bruno@clisp.org>
16004
16005         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
16006
16007 2007-01-20  Jim Meyering  <jim@meyering.net>
16008
16009         * lib/userspec.c (parse_with_separator): If a user or group string
16010         starts with "+", skip the corresponding name-to-ID look-up, since
16011         such a look-up must fail: user and group names may not include "+".
16012
16013 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
16014
16015         * lib/poll.c: Include sys/time.h and time.h unconditionally,
16016         since we now assume the sys_time module.
16017         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
16018         check for sys/time.h; no longer needed.
16019         * modules/poll (Depends-on): Depend on sys_time.
16020
16021 2007-01-18  Bruno Haible  <bruno@clisp.org>
16022
16023         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
16024         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
16025
16026         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
16027         gettimeofday.
16028
16029         * tests/test-gettimeofday.c: Include <time.h>.
16030         (dummy): Remove variable.
16031
16032         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
16033         gl_HEADER_SYS_TIME_H.
16034         (gl_HEADER_SYS_TIME_H): New macro.
16035
16036         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
16037         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16038         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
16039         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
16040         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16041         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
16042         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
16043         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16044         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
16045         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
16046         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16047
16048         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
16049         last change; it caused a compilation error when cross-compiling to
16050         Cygwin.
16051
16052 2007-01-18  Jim Meyering  <jim@meyering.net>
16053
16054         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
16055         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
16056         than the race-prone "test -d sys || mkdir sys".
16057         (configure.ac): Use AC_PROG_MKDIR_P.
16058         * modules/sys_select: Likewise.
16059         * modules/sys_socket: Likewise.
16060         * modules/sys_time: Likewise.
16061
16062 2007-01-18  Eric Blake  <ebb9@byu.net>
16063
16064         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
16065         replace gettimeofday.
16066         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
16067         name, to avoid infinite recursion.
16068
16069 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
16070
16071         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
16072         module sys_time.
16073         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
16074         assume timespec.h defines struct timeval.
16075         * lib/settime.c: Likewise.
16076         * lib/utimens.c: Likewise.
16077         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
16078         since we now assume the gettimeofday module.
16079         * lib/tempname.c (__gen_tempname): Likewise.
16080         * lib/gettimeofday.h: Remove.
16081         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
16082         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
16083         Include <time.h>, for 'time()'.
16084         (localtime_buffer_addr): Also use this workaround if
16085         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
16086         to simplify the uses.  All uses changed.
16087         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
16088         that #undef is inside {}, and 'const' follows type name consistently.
16089         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
16090         (gettimeofday): Do not use the maximum possible value for
16091         tv->tv_usec, since that might break usages other than ls.c.
16092         Instead, we'll leave ls.c alone.  This undoes today's patch
16093         by Bruno.  Add a compile-time warning for 1s-clock resolution;
16094         we've never observed the problem but might as well keep the
16095         canary.
16096         * lib/nanosleep.c: Include timespec.h first, for interface check.
16097         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
16098         now assume the sys_time module.
16099         * lib/tempname.c: Likewise.
16100         * lib/timespec.h: Likewise.
16101         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
16102         needed.
16103         * lib/strftime.c: Likewise.
16104         * lib/timespec.h: Likewise.
16105         * lib/posixtm.c: Include posixtm.h first, for interface check.
16106         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
16107         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
16108         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
16109         * lib/sys_time_.h: New file.
16110         * lib/timespec.h (struct timespec): Use long int, not long.
16111         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
16112         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
16113         Remove obsolescent call to AC_HEADER_TIME.
16114         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
16115         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
16116         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
16117         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
16118         Likewise.
16119         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
16120         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
16121         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
16122         into the sys_time module.  Check for gettimeofday just once.
16123         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
16124         for gettimeofday signature to just check the signature.  Merely
16125         compile it, since linking doesn't test signature.  Improve test for
16126         whether gettimeofday.o is actually needed.
16127         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
16128         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
16129         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
16130         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16131         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
16132         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
16133         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
16134         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
16135         than worrying about sys/time.h.
16136         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
16137         Don't bother worrying about TIME_WITH_SYS_TIME.
16138         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
16139         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
16140         * m4/sys_time_h.m4: New file.
16141         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
16142         Don't include sys/time.h.  Return from main rather than exiting.
16143         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
16144         all uses changed.
16145         * modules/gethrxtime (Depends-on): Add sys_time.
16146         * modules/gettime (Depends-on): Likewise.
16147         * modules/gettimeofday (Depends-on): Likewise.
16148         * modules/nanosleep (Depends-on): Likewise.
16149         * modules/settime (Depends-on): Likewise.
16150         * modules/tempname (Depends-on): Likewise.
16151         * modules/utimens (Depends-on): Likewise.
16152         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
16153         (Include:) Change back to <sys/time.h>.
16154         (Maintainer:) Add self.
16155         * modules/sys_time: New file.
16156         * modules/tempname (Depends-on): Add gettimeofday.
16157         * tests/test-gettimeofday.c: Include <sys/time.h>
16158         rather than gettimeofday.h.
16159
16160 2007-01-17  Bruno Haible  <bruno@clisp.org>
16161
16162         * gnulib-tool (func_get_license): Revert last patch. Instead, let
16163         the license default to GPL.
16164         (func_create_testdir): Don't complain if a module is LGPL and its
16165         tests module depends on GPLed modules.
16166
16167 2007-01-17  Bruno Haible  <bruno@clisp.org>
16168
16169         * lib/gettimeofday.c (gettimeofday): Add code for the case
16170         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
16171         maximum possible value for tv->tv_usec, rather than the minimum one.
16172
16173 2005-10-08  Martin Lambers  <marlam@marlam.de>
16174 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
16175 2007-01-16  Bruno Haible  <bruno@clisp.org>
16176
16177         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
16178         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
16179         gl_FUNC_GETTIMEOFDAY.
16180         (Include): Add gettimeofday.h.
16181         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
16182         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
16183         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
16184         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
16185         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
16186         * lib/gettimeofday.h: New file.
16187         * lib/gettimeofday.c: Include <sys/timeb.h>.
16188         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
16189         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16190         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
16191         fall back on time().
16192
16193         * tests/test-gettimeofday.c: New file.
16194         * modules/gettimeofday-tests: New file.
16195
16196 2007-01-16  Eric Blake  <ebb9@byu.net>
16197
16198         * modules/fnmatch (Depends-on): Depend on wchar.
16199         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
16200         * m4/fnmatch.m4: Likewise.
16201         * modules/mbchar (Makefile.am): Assume <wchar.h>.
16202         * m4/mbchar.m4: Likewise.
16203         * modules/mbswidth (Depends-on): Depend on wchar.
16204         * lib/mbswidth.c: Assume <wchar.h>.
16205         * m4/mbswidth.m4: Likewise.
16206         * modules/quotearg (Depends-on): Depend on wchar.
16207         * lib/quotearg.c: Assume <wchar.h>.
16208         * m4/quotearg.m4: Likewise.
16209         * modules/regex (Depends-on): Depend on wchar.
16210         * lib/regex_internal.h: Assume <wchar.h>.
16211         * m4/regex.m4: Likewise.
16212         * modules/stdint (Depends-on): Depend on wchar.
16213         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
16214         * m4/stdint.m4: Likewise.
16215         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
16216         * modules/strftime (Depends-on): Depend on wchar.
16217         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
16218         * modules/strtol (Depends-on): Depend on wchar.
16219         * lib/strtol.c: Assume <wchar.h>.
16220         * modules/wcwidth (Depends-on): Depend on wchar.
16221         * lib/wcwidth.h: Assume <wchar.h>.
16222         * m4/wcwidth.m4: Likewise.
16223
16224 2007-01-16  Bruno Haible  <bruno@clisp.org>
16225
16226         * modules/csharpexec-script: New, created from...
16227         * modules/csharpexec: ... this.
16228
16229 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
16230
16231         * modules/javaexec-script: New, created from...
16232         * modules/javaexec: ... this.
16233
16234 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16235
16236         * modules/poll (Dependencies): Add sys_select.
16237
16238 2007-01-15  Jim Meyering  <jim@meyering.net>
16239
16240         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
16241         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
16242         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
16243         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
16244
16245 2007-01-15  Bruno Haible  <bruno@clisp.org>
16246
16247         * modules/striconveh: New file.
16248         * lib/striconveh.h: New file.
16249         * lib/striconveh.c: New file.
16250         * MODULES.html.sh (Internationalization functions): Add striconveh.
16251
16252         * modules/striconveh-tests: New file.
16253         * tests/test-striconveh.c: New file.
16254
16255 2007-01-15  Bruno Haible  <bruno@clisp.org>
16256
16257         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
16258         not from GNU libiconv or GNU libc.
16259
16260 2007-01-15  Bruno Haible  <bruno@clisp.org>
16261
16262         * doc/gnulib-intro.texi (Copyright): Explain the different license
16263         terms for module descriptions, autoconf macros, tests, documentation.
16264
16265 2007-01-14  Bruno Haible  <bruno@clisp.org>
16266
16267         * modules/striconv-tests: New file.
16268         * tests/test-striconv.c: New file.
16269
16270 2007-01-14  Bruno Haible  <bruno@clisp.org>
16271
16272         * modules/iconv-tests: New file.
16273         * tests/test-iconv.c: New file.
16274
16275 2007-01-14  Bruno Haible  <bruno@clisp.org>
16276
16277         * gnulib-tool (func_get_license): For test modules, use the license of
16278         the main module.
16279
16280 2007-01-14  Bruno Haible  <bruno@clisp.org>
16281
16282         * modules/iconv (Include): Clarify that <iconv.h> can only be included
16283         if iconv is found to exist.
16284
16285 2007-01-14  Bruno Haible  <bruno@clisp.org>
16286
16287         * modules/c-ctype-tests: New file.
16288         * tests/test-c-ctype.c: New file.
16289
16290 2007-01-14  Bruno Haible  <bruno@clisp.org>
16291
16292         * modules/binary-io-tests: New file.
16293         * tests/test-binary-io.sh: New file.
16294         * tests/test-binary-io.c: New file.
16295
16296 2007-01-14  Bruno Haible  <bruno@clisp.org>
16297
16298         * modules/array-oset-tests: New file.
16299         * tests/test-array_oset.c: New file.
16300
16301 2007-01-14  Bruno Haible  <bruno@clisp.org>
16302
16303         * modules/array-list-tests: New file.
16304         * tests/test-array_list.c: New file.
16305
16306 2007-01-14  Bruno Haible  <bruno@clisp.org>
16307
16308         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
16309         and make.
16310         Reported by Simon Josefsson in
16311         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
16312
16313 2007-01-14  Bruno Haible  <bruno@clisp.org>
16314
16315         * modules/allocsa-tests: New file.
16316         * tests/test-allocsa.c: New file.
16317
16318 2007-01-14  Bruno Haible  <bruno@clisp.org>
16319
16320         * modules/fchdir (Depends-on): Add absolute-header.
16321         * modules/unistd (Depends-on): Likewise.
16322
16323 2006-12-30  Bruno Haible  <bruno@clisp.org>
16324
16325         * modules/fchdir: New file.
16326         * modules/unistd (Files): Add lib/unistd_.h.
16327         (Makefile.am): Generate unistd.h from unistd_.h.
16328         * lib/fchdir.c: New file.
16329         * lib/dirent_.h: New file.
16330         * lib/unistd_.h: New file.
16331         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
16332         * m4/fchdir.m4: New file.
16333         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
16334         (gl_HEADER_UNISTD): Invoke it.
16335         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
16336         function.
16337         * lib/backupfile.c (opendir, closedir): Undefine.
16338         * lib/chown.c (open, close): Undefine.
16339         * lib/clean-temp.c (open, close): Undefine.
16340         * lib/copy-file.c (open, close): Undefine.
16341         * lib/execute.c (open, close): Undefine.
16342         * lib/fsusage.c (open, close): Undefine.
16343         * lib/gc-gnulib.c (open, close): Undefine.
16344         * lib/getcwd.c (opendir, closedir): Undefine.
16345         * lib/glob.c (opendir, closedir): Undefine.
16346         * lib/javacomp.c (open, close): Undefine.
16347         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
16348         * lib/openat-proc.c (open, close): Undefine.
16349         * lib/pagealign_alloc.c (open, close): Undefine.
16350         * lib/pipe.c (open, close): Undefine.
16351         * lib/progreloc.c (open, close): Undefine.
16352         * lib/savedir.c (opendir, closedir): Undefine.
16353         * lib/utime.c (open, close): Undefine.
16354         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
16355
16356 2007-01-10  Bruno Haible  <bruno@clisp.org>
16357
16358         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
16359
16360 2007-01-12  Eric Blake  <ebb9@byu.net>
16361
16362         Provide a robust <wchar.h>.  Further simplifications are now
16363         possible in other modules, but not included here.
16364         * modules/wchar: New module.
16365         * m4/wchar.m4: New file.
16366         * lib/wchar_.h: Likewise.
16367         * modules/mbchar (Depends-on): Depend on wchar, as the first use
16368         of the new module.
16369         * MODULES.html.sh (Extended multibyte and wide character utilities):
16370         New section.
16371
16372 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
16373
16374         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
16375         to a reasonable default for memory allocation.
16376         (xreadlink): Don't allocate a huge buffer, to work around a buggy
16377         file system that reports garbage st_size values for symlinks.
16378         Problem reported by Liyang Hu.
16379
16380 2007-01-11  Simon Josefsson  <simon@josefsson.org>
16381
16382         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
16383         Emacs .#* auto-save files).
16384
16385 2007-01-11  Bruno Haible  <bruno@clisp.org>
16386
16387         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
16388         directory.
16389
16390 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
16391
16392         Use @...@ consistently in lib/wctype_.h.
16393         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
16394         on it being set to 1 or 0.
16395         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
16396         go back to AC_SUBSTing it.
16397         * modules/wctype (Makefile.am): Undo previous change.
16398
16399 2007-01-10  Eric Blake  <ebb9@byu.net>
16400
16401         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
16402         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
16403         * modules/wctype (Makefile.am): Likewise.
16404         Reported by Chris McGuire.
16405
16406 2007-01-10  Jim Meyering  <jim@meyering.net>
16407
16408         fts.c: a small readability/maintainability improvement
16409         * lib/fts.c (fts_read): Make this code slightly more readable and
16410         maintainable by hoisting the "sp->fts_cur = p" assignments to
16411         immediately follow the statements that set P.  Derived from
16412         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
16413
16414 2007-01-10  Eric Blake  <ebb9@byu.net>
16415
16416         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
16417         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
16418         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
16419         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
16420         Reported by Chris McGuire.
16421
16422 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16423
16424         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
16425         in sed script.
16426
16427 2007-01-09  Bruno Haible  <bruno@clisp.org>
16428
16429         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
16430         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
16431         variables.
16432         (func_module): Use them.
16433
16434 2007-01-09  Bruno Haible  <bruno@clisp.org>
16435
16436         * modules/unistr/base: New file.
16437         * lib/unistr.h: New file.
16438
16439         * modules/unistr/u8-to-u16: New file.
16440         * lib/unistr/u8-to-u16.c: New file.
16441
16442         * modules/unistr/u8-to-u32: New file.
16443         * lib/unistr/u8-to-u32.c: New file.
16444
16445         * modules/unistr/u16-to-u8: New file.
16446         * lib/unistr/u16-to-u8.c: New file.
16447
16448         * modules/unistr/u16-to-u32: New file.
16449         * lib/unistr/u16-to-u32.c: New file.
16450
16451         * modules/unistr/u32-to-u8: New file.
16452         * lib/unistr/u32-to-u8.c: New file.
16453
16454         * modules/unistr/u32-to-u16: New file.
16455         * lib/unistr/u32-to-u16.c: New file.
16456
16457         * modules/unistr/u8-check: New file.
16458         * modules/unistr/u16-check: New file.
16459         * modules/unistr/u32-check: New file.
16460         * lib/unistr/u8-check.c: New file.
16461         * lib/unistr/u16-check.c: New file.
16462         * lib/unistr/u32-check.c: New file.
16463
16464         * modules/unistr/u8-chr: New file.
16465         * modules/unistr/u16-chr: New file.
16466         * modules/unistr/u32-chr: New file.
16467         * lib/unistr/u8-chr.c: New file.
16468         * lib/unistr/u16-chr.c: New file.
16469         * lib/unistr/u32-chr.c: New file.
16470
16471         * modules/unistr/u8-cmp: New file.
16472         * modules/unistr/u16-cmp: New file.
16473         * modules/unistr/u32-cmp: New file.
16474         * lib/unistr/u8-cmp.c: New file.
16475         * lib/unistr/u16-cmp.c: New file.
16476         * lib/unistr/u32-cmp.c: New file.
16477
16478         * modules/unistr/u8-cpy: New file.
16479         * modules/unistr/u16-cpy: New file.
16480         * modules/unistr/u32-cpy: New file.
16481         * lib/unistr/u8-cpy.c: New file.
16482         * lib/unistr/u16-cpy.c: New file.
16483         * lib/unistr/u32-cpy.c: New file.
16484         * lib/unistr/u-cpy.h: New file.
16485
16486         * modules/unistr/u8-cpy-alloc: New file.
16487         * modules/unistr/u16-cpy-alloc: New file.
16488         * modules/unistr/u32-cpy-alloc: New file.
16489         * lib/unistr/u8-cpy-alloc.c: New file.
16490         * lib/unistr/u16-cpy-alloc.c: New file.
16491         * lib/unistr/u32-cpy-alloc.c: New file.
16492         * lib/unistr/u-cpy-alloc.h: New file.
16493
16494         * modules/unistr/u8-endswith: New file.
16495         * modules/unistr/u16-endswith: New file.
16496         * modules/unistr/u32-endswith: New file.
16497         * lib/unistr/u8-endswith.c: New file.
16498         * lib/unistr/u16-endswith.c: New file.
16499         * lib/unistr/u32-endswith.c: New file.
16500         * lib/unistr/u-endswith.h: New file.
16501
16502         * modules/unistr/u8-mblen: New file.
16503         * modules/unistr/u16-mblen: New file.
16504         * modules/unistr/u32-mblen: New file.
16505         * lib/unistr/u8-mblen.c: New file.
16506         * lib/unistr/u16-mblen.c: New file.
16507         * lib/unistr/u32-mblen.c: New file.
16508
16509         * modules/unistr/u8-mbtouc: New file.
16510         * modules/unistr/u16-mbtouc: New file.
16511         * modules/unistr/u32-mbtouc: New file.
16512         * lib/unistr/u8-mbtouc.c: New file.
16513         * lib/unistr/u16-mbtouc.c: New file.
16514         * lib/unistr/u32-mbtouc.c: New file.
16515
16516         * modules/unistr/u8-mbtouc-safe: New file.
16517         * modules/unistr/u16-mbtouc-safe: New file.
16518         * modules/unistr/u32-mbtouc-safe: New file.
16519         * lib/unistr/u8-mbtouc-safe.c: New file.
16520         * lib/unistr/u16-mbtouc-safe.c: New file.
16521         * lib/unistr/u32-mbtouc-safe.c: New file.
16522
16523         * modules/unistr/u8-move: New file.
16524         * modules/unistr/u16-move: New file.
16525         * modules/unistr/u32-move: New file.
16526         * lib/unistr/u8-move.c: New file.
16527         * lib/unistr/u16-move.c: New file.
16528         * lib/unistr/u32-move.c: New file.
16529         * lib/unistr/u-move.h: New file.
16530
16531         * modules/unistr/u8-next: New file.
16532         * modules/unistr/u16-next: New file.
16533         * modules/unistr/u32-next: New file.
16534         * lib/unistr/u8-next.c: New file.
16535         * lib/unistr/u16-next.c: New file.
16536         * lib/unistr/u32-next.c: New file.
16537
16538         * modules/unistr/u8-prev: New file.
16539         * modules/unistr/u16-prev: New file.
16540         * modules/unistr/u32-prev: New file.
16541         * lib/unistr/u8-prev.c: New file.
16542         * lib/unistr/u16-prev.c: New file.
16543         * lib/unistr/u32-prev.c: New file.
16544
16545         * modules/unistr/u8-set: New file.
16546         * modules/unistr/u16-set: New file.
16547         * modules/unistr/u32-set: New file.
16548         * lib/unistr/u8-set.c: New file.
16549         * lib/unistr/u16-set.c: New file.
16550         * lib/unistr/u32-set.c: New file.
16551         * lib/unistr/u-set.h: New file.
16552
16553         * modules/unistr/u8-startswith: New file.
16554         * modules/unistr/u16-startswith: New file.
16555         * modules/unistr/u32-startswith: New file.
16556         * lib/unistr/u8-startswith.c: New file.
16557         * lib/unistr/u16-startswith.c: New file.
16558         * lib/unistr/u32-startswith.c: New file.
16559         * lib/unistr/u-startswith.h: New file.
16560
16561         * modules/unistr/u8-stpcpy: New file.
16562         * modules/unistr/u16-stpcpy: New file.
16563         * modules/unistr/u32-stpcpy: New file.
16564         * lib/unistr/u8-stpcpy.c: New file.
16565         * lib/unistr/u16-stpcpy.c: New file.
16566         * lib/unistr/u32-stpcpy.c: New file.
16567         * lib/unistr/u-stpcpy.h: New file.
16568
16569         * modules/unistr/u8-stpncpy: New file.
16570         * modules/unistr/u16-stpncpy: New file.
16571         * modules/unistr/u32-stpncpy: New file.
16572         * lib/unistr/u8-stpncpy.c: New file.
16573         * lib/unistr/u16-stpncpy.c: New file.
16574         * lib/unistr/u32-stpncpy.c: New file.
16575         * lib/unistr/u-stpncpy.h: New file.
16576
16577         * modules/unistr/u8-strcat: New file.
16578         * modules/unistr/u16-strcat: New file.
16579         * modules/unistr/u32-strcat: New file.
16580         * lib/unistr/u8-strcat.c: New file.
16581         * lib/unistr/u16-strcat.c: New file.
16582         * lib/unistr/u32-strcat.c: New file.
16583         * lib/unistr/u-strcat.h: New file.
16584
16585         * modules/unistr/u8-strchr: New file.
16586         * modules/unistr/u16-strchr: New file.
16587         * modules/unistr/u32-strchr: New file.
16588         * lib/unistr/u8-strchr.c: New file.
16589         * lib/unistr/u16-strchr.c: New file.
16590         * lib/unistr/u32-strchr.c: New file.
16591
16592         * modules/unistr/u8-strcmp: New file.
16593         * modules/unistr/u16-strcmp: New file.
16594         * modules/unistr/u32-strcmp: New file.
16595         * lib/unistr/u8-strcmp.c: New file.
16596         * lib/unistr/u16-strcmp.c: New file.
16597         * lib/unistr/u32-strcmp.c: New file.
16598
16599         * modules/unistr/u8-strcpy: New file.
16600         * modules/unistr/u16-strcpy: New file.
16601         * modules/unistr/u32-strcpy: New file.
16602         * lib/unistr/u8-strcpy.c: New file.
16603         * lib/unistr/u16-strcpy.c: New file.
16604         * lib/unistr/u32-strcpy.c: New file.
16605         * lib/unistr/u-strcpy.h: New file.
16606
16607         * modules/unistr/u8-strcspn: New file.
16608         * modules/unistr/u16-strcspn: New file.
16609         * modules/unistr/u32-strcspn: New file.
16610         * lib/unistr/u8-strcspn.c: New file.
16611         * lib/unistr/u16-strcspn.c: New file.
16612         * lib/unistr/u32-strcspn.c: New file.
16613         * lib/unistr/u-strcspn.h: New file.
16614
16615         * modules/unistr/u8-strdup: New file.
16616         * modules/unistr/u16-strdup: New file.
16617         * modules/unistr/u32-strdup: New file.
16618         * lib/unistr/u8-strdup.c: New file.
16619         * lib/unistr/u16-strdup.c: New file.
16620         * lib/unistr/u32-strdup.c: New file.
16621         * lib/unistr/u-strdup.h: New file.
16622
16623         * modules/unistr/u8-strlen: New file.
16624         * modules/unistr/u16-strlen: New file.
16625         * modules/unistr/u32-strlen: New file.
16626         * lib/unistr/u8-strlen.c: New file.
16627         * lib/unistr/u16-strlen.c: New file.
16628         * lib/unistr/u32-strlen.c: New file.
16629         * lib/unistr/u-strlen.h: New file.
16630
16631         * modules/unistr/u8-strmblen: New file.
16632         * modules/unistr/u16-strmblen: New file.
16633         * modules/unistr/u32-strmblen: New file.
16634         * lib/unistr/u8-strmblen.c: New file.
16635         * lib/unistr/u16-strmblen.c: New file.
16636         * lib/unistr/u32-strmblen.c: New file.
16637
16638         * modules/unistr/u8-strmbtouc: New file.
16639         * modules/unistr/u16-strmbtouc: New file.
16640         * modules/unistr/u32-strmbtouc: New file.
16641         * lib/unistr/u8-strmbtouc.c: New file.
16642         * lib/unistr/u16-strmbtouc.c: New file.
16643         * lib/unistr/u32-strmbtouc.c: New file.
16644
16645         * modules/unistr/u8-strncat: New file.
16646         * modules/unistr/u16-strncat: New file.
16647         * modules/unistr/u32-strncat: New file.
16648         * lib/unistr/u8-strncat.c: New file.
16649         * lib/unistr/u16-strncat.c: New file.
16650         * lib/unistr/u32-strncat.c: New file.
16651         * lib/unistr/u-strncat.h: New file.
16652
16653         * modules/unistr/u8-strncmp: New file.
16654         * modules/unistr/u16-strncmp: New file.
16655         * modules/unistr/u32-strncmp: New file.
16656         * lib/unistr/u8-strncmp.c: New file.
16657         * lib/unistr/u16-strncmp.c: New file.
16658         * lib/unistr/u32-strncmp.c: New file.
16659
16660         * modules/unistr/u8-strncpy: New file.
16661         * modules/unistr/u16-strncpy: New file.
16662         * modules/unistr/u32-strncpy: New file.
16663         * lib/unistr/u8-strncpy.c: New file.
16664         * lib/unistr/u16-strncpy.c: New file.
16665         * lib/unistr/u32-strncpy.c: New file.
16666         * lib/unistr/u-strncpy.h: New file.
16667
16668         * modules/unistr/u8-strnlen: New file.
16669         * modules/unistr/u16-strnlen: New file.
16670         * modules/unistr/u32-strnlen: New file.
16671         * lib/unistr/u8-strnlen.c: New file.
16672         * lib/unistr/u16-strnlen.c: New file.
16673         * lib/unistr/u32-strnlen.c: New file.
16674         * lib/unistr/u-strnlen.h: New file.
16675
16676         * modules/unistr/u8-strpbrk: New file.
16677         * modules/unistr/u16-strpbrk: New file.
16678         * modules/unistr/u32-strpbrk: New file.
16679         * lib/unistr/u8-strpbrk.c: New file.
16680         * lib/unistr/u16-strpbrk.c: New file.
16681         * lib/unistr/u32-strpbrk.c: New file.
16682         * lib/unistr/u-strpbrk.h: New file.
16683
16684         * modules/unistr/u8-strrchr: New file.
16685         * modules/unistr/u16-strrchr: New file.
16686         * modules/unistr/u32-strrchr: New file.
16687         * lib/unistr/u8-strrchr.c: New file.
16688         * lib/unistr/u16-strrchr.c: New file.
16689         * lib/unistr/u32-strrchr.c: New file.
16690
16691         * modules/unistr/u8-strspn: New file.
16692         * modules/unistr/u16-strspn: New file.
16693         * modules/unistr/u32-strspn: New file.
16694         * lib/unistr/u8-strspn.c: New file.
16695         * lib/unistr/u16-strspn.c: New file.
16696         * lib/unistr/u32-strspn.c: New file.
16697         * lib/unistr/u-strspn.h: New file.
16698
16699         * modules/unistr/u8-strstr: New file.
16700         * modules/unistr/u16-strstr: New file.
16701         * modules/unistr/u32-strstr: New file.
16702         * lib/unistr/u8-strstr.c: New file.
16703         * lib/unistr/u16-strstr.c: New file.
16704         * lib/unistr/u32-strstr.c: New file.
16705         * lib/unistr/u-strstr.h: New file.
16706
16707         * modules/unistr/u8-strtok: New file.
16708         * modules/unistr/u16-strtok: New file.
16709         * modules/unistr/u32-strtok: New file.
16710         * lib/unistr/u8-strtok.c: New file.
16711         * lib/unistr/u16-strtok.c: New file.
16712         * lib/unistr/u32-strtok.c: New file.
16713         * lib/unistr/u-strtok.h: New file.
16714
16715         * modules/unistr/u8-uctomb: New file.
16716         * modules/unistr/u16-uctomb: New file.
16717         * modules/unistr/u32-uctomb: New file.
16718         * lib/unistr/u8-uctomb.c: New file.
16719         * lib/unistr/u16-uctomb.c: New file.
16720         * lib/unistr/u32-uctomb.c: New file.
16721
16722         * MODULES.html.sh (Unicode string functions): Add the new modules.
16723
16724 2007-01-08  Bruno Haible  <bruno@clisp.org>
16725
16726         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
16727         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
16728         subdirectories.
16729
16730 2007-01-08  Karl Berry  <karl@gnu.org>
16731
16732         * doc/error.texi: mention that main() fns must set program_name
16733         when progname is used.
16734
16735 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
16736
16737         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
16738         WCTYPE_H is empty, for the benefit of builds from non-distclean
16739         directories.  Problem reported by Eric Blake in
16740         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
16741
16742 2007-01-08  Bruno Haible  <bruno@clisp.org>
16743
16744         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
16745         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
16746         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
16747         PROVIDE_CANONICALIZE_FILENAME_MODE.
16748         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
16749
16750 2007-01-08  Bruno Haible  <bruno@clisp.org>
16751
16752         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
16753         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
16754         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
16755         * lib/fts.c: Likewise.
16756         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
16757
16758 2006-12-25  Bruno Haible  <bruno@clisp.org>
16759
16760         * modules/utf8-ucs4-safe: New file.
16761         * lib/utf8-ucs4-safe.h: New file.
16762         * lib/unistr/utf8-ucs4-safe.c: New file.
16763
16764         * modules/utf16-ucs4-safe: New file.
16765         * lib/utf16-ucs4-safe.h: New file.
16766         * lib/unistr/utf16-ucs4-safe.c: New file.
16767
16768         * MODULES.html.sh (Unicode string functions): Add the new modules.
16769
16770 2007-01-08  Bruno Haible  <bruno@clisp.org>
16771
16772         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
16773         (Depends-on): Add unitypes.
16774         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
16775         (u8_mbtouc_aux): Move out to separate file.
16776         (u8_mbtouc): Use ucs4_t, uint8_t types.
16777         * lib/unistr/utf8-ucs4.c: New file.
16778
16779         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
16780         (Depends-on): Add unitypes.
16781         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
16782         (u16_mbtouc_aux): Move out to separate file.
16783         (u16_mbtouc): Use ucs4_t, uint16_t types.
16784         * lib/unistr/utf16-ucs4.c: New file.
16785
16786         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
16787         (Depends-on): Add unitypes.
16788         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
16789         (u8_uctomb_aux): Move out to separate file.
16790         (u8_uctomb): Use ucs4_t, uint8_t types.
16791         * lib/unistr/ucs4-utf8.c: New file.
16792
16793         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
16794         (Depends-on): Add unitypes.
16795         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
16796         (u16_uctomb_aux): Move out to separate file.
16797         (u16_uctomb): Use ucs4_t, uint16_t types.
16798         * lib/unistr/ucs4-utf16.c: New file.
16799
16800 2006-12-25  Bruno Haible  <bruno@clisp.org>
16801
16802         * modules/unitypes: New file.
16803         * lib/unitypes.h: New file.
16804         * MODULES.html.sh (func_all_modules): New section "Unicode string
16805         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
16806         this section. Add unitypes.
16807
16808 2007-01-08  Bruno Haible  <bruno@clisp.org>
16809
16810         Avoid variable names that conflict with those from libtool.
16811         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
16812         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
16813         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
16814         library_names_spec to acl_library_names_spec, hardcode_* to
16815         acl_hardcode_*.
16816         Reported by Ralf Wildenhues.
16817
16818 2007-01-08  Bruno Haible  <bruno@clisp.org>
16819
16820         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
16821         definition.
16822         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
16823         definition.
16824         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
16825         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
16826         definition.
16827         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
16828         definition.
16829         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
16830         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
16831         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
16832         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
16833         definition.
16834         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
16835         definition.
16836         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
16837         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
16838         GC_USE_<algorithm>.
16839         * lib/gc-libgcrypt.c: Likewise.
16840         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
16841         * modules/gc-arctwo (configure.ac): Likewise.
16842         * modules/gc-des (configure.ac): Likewise.
16843         * modules/gc-hmac-md5 (configure.ac): Likewise.
16844         * modules/gc-hmac-sha1 (configure.ac): Likewise.
16845         * modules/gc-md2 (configure.ac): Likewise.
16846         * modules/gc-md4 (configure.ac): Likewise.
16847         * modules/gc-md5 (configure.ac): Likewise.
16848         * modules/gc-random (configure.ac): Likewise.
16849         * modules/gc-rijndael (configure.ac): Likewise.
16850         * modules/gc-sha1 (configure.ac): Likewise.
16851
16852 2007-01-08  Bruno Haible  <bruno@clisp.org>
16853
16854         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
16855         macro definition.
16856         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
16857         definition.
16858         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
16859         definition.
16860         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
16861         * modules/fcntl-safer (configure.ac): Likewise.
16862         * modules/fopen-safer (configure.ac): Likewise.
16863         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
16864         GNULIB_FWRITEERROR macro definition.
16865
16866 2007-01-08  Bruno Haible  <bruno@clisp.org>
16867
16868         * m4/gnulib-common.m4: New file.
16869         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
16870         (func_get_filelist): Add m4/gnulib-common.m4.
16871
16872 2007-01-08  Bruno Haible  <bruno@clisp.org>
16873
16874         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
16875         command.
16876
16877 2007-01-08  Jim Meyering  <jim@meyering.net>
16878
16879         Use a more robust test for a "can't happen" condition.
16880         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
16881         narrowed the st_size value.  Presuming the "can't happen" condition
16882         is true, that narrowing could conceivably convert an invalid st_size
16883         value into a valid one.  Instead, use a change based on Matthew
16884         Woehlke's original patch.
16885
16886         Slight readability improvement: use an assert-like macro
16887         in place of literal "abort ()" uses.
16888         * lib/fts.c (fts_assert): Define.
16889         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
16890         Use this macro instead of a bare 'abort'.
16891
16892 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
16893
16894         Don't worry about using IRIX 5.3's wctype.h broken definitions;
16895         simply work around them.
16896         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
16897         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
16898         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
16899         declaring.
16900         Don't bother to define as macros, since the standard doesn't require it.
16901         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
16902         longer worry about IRIX 5.3.
16903         (HAVE_WCTYPE_CTMP_BUG): Remove.
16904
16905 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
16906
16907         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
16908         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
16909         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
16910         Problems reported by Georg Schwarz for IRIX 5.3.
16911
16912         * gnulib-tool (autoconf_minversion): Take the maximum version number
16913         found, not the minimum.  Problem reported by James Youngman.
16914
16915 2007-01-03  Karl Berry  <karl@gnu.org>
16916
16917         * doc/error.texi: new file, explaining interaction with progname.
16918         * doc/gnulib.texi: include it.  Update copyright.
16919
16920 2007-01-03  Simon Josefsson  <simon@josefsson.org>
16921
16922         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
16923         AC_CANONICAL_HOST, to improve autobuild outputs.
16924
16925 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
16926             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
16927
16928         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
16929         sockets, server sockets, and other file descriptors.  Count errors
16930         to compute the return value.  Reorder the code a bit to be easier
16931         to follow.  Don't set event bits that were not requested (except
16932         POLLERR and POLLHUP).
16933
16934 2007-01-01  Bruno Haible  <bruno@clisp.org>
16935
16936         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
16937
16938 2007-01-03  Jim Meyering  <jim@meyering.net>
16939
16940         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
16941
16942 2007-01-02  Bruno Haible  <bruno@clisp.org>
16943
16944         * modules/settime (Include): Require timespec.h.
16945         * modules/nanosleep (Include): Likewise.
16946
16947 2007-01-01  Bruno Haible  <bruno@clisp.org>
16948
16949         * gnulib-tool (func_emit_copyright_notice): Bump year.
16950         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
16951
16952 2007-01-01  Bruno Haible  <bruno@clisp.org>
16953
16954         Improve support for OpenBSD.
16955         * build-aux/config.rpath (libname_spec): Export.
16956         (library_names_spec): New variable. Export.
16957         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
16958         library_names_spec from the config.rpath output. Locate shared library
16959         through the name pattern in library_names_spec.
16960
16961 2007-01-01  Eric Blake  <ebb9@byu.net>
16962
16963         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
16964
16965 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
16966
16967         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
16968         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
16969         assume the C locale, and avoid an "eval" that could cause trouble.
16970         Problem with SORT reported by Bob Proulx.
16971
16972         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
16973         Define.  Trivial patch from Henning Nielsen Lund, originally
16974         sent to bug-grep@gnu.org today.
16975
16976 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
16977
16978         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
16979         struct stat.  Problem reported by Henning Nielsen Lund.
16980         * lib/acl.c: Include acl.h first, to check interface.  Don't
16981         bother to include sys/types.h and sys/stat.h again.
16982
16983 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
16984
16985         Import the following change from libc; problem reported by
16986         Sven Verdoolaege.
16987
16988         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
16989
16990         [BZ #1373]
16991         * lib/argp.h: Remove __NTH for __argp_usage inline function.
16992
16993 2006-12-28  Jim Meyering  <jim@meyering.net>
16994
16995         * build-aux/announce-gen: Do not assume that the package
16996         builds any of tar.gz, tar.bz2, and .xdelta files.
16997         Suggestion from Simon Josefsson.
16998
16999 2006-12-28  Simon Josefsson  <simon@josefsson.org>
17000
17001         * modules/announce-gen: New file.
17002
17003 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
17004
17005         * lib/mbchar.h: Just include <wctype.h>; the wctype module
17006         handles its gotchas now.
17007         * lib/mbswidth.c: Likewise.
17008         * lib/wcwidth.h: Likewise.
17009         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
17010         and iswcntrl; the wctype module does this stuff now.
17011         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
17012         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
17013         * modules/mbchar (Depends-on): Add wctype.
17014         * modules/mbswidth (Depends-on): Likewise.
17015         * modules/wcwidth (Depends-on): Likewise.
17016
17017 2006-12-27  Eric Blake  <ebb9@byu.net>
17018
17019         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
17020         module uses more than what <wctype.h> is required to provide.
17021
17022 2006-12-26  Eric Blake  <ebb9@byu.net>
17023
17024         * gnulib-tool (sed_extract_prog): Avoid space-tab.
17025
17026 2006-12-26  Eric Blake  <ebb9@byu.net>
17027
17028         * modules/absolute-header: New module.
17029         * modules/fcntl (Depends-on): Depend on it.
17030         * modules/inttypes (Depends-on): Likewise.
17031         * modules/stdint (Depends-on): Likewise.
17032         * modules/sys_stat (Depends-on): Likewise.
17033         * modules/wctype (Depends-on): Likewise.
17034         * MODULES.html.sh (Support for building libraries and
17035         executables): Document it.
17036
17037 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
17038
17039         * gnulib-tool (SED): Remove, undoing previous change.
17040         The problem was that it broke coreutils on Solaris, because
17041         "sed --posix" leaked into a makefile.
17042         (sed): New alias, if 'alias' and GNU sed.
17043
17044 2006-12-24  Jim Meyering  <jim@meyering.net>
17045
17046         Work around an fchownat bug in glibc-2.4:
17047         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
17048         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
17049         in spite of the -P option.
17050         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
17051         New macros.
17052         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
17053         * modules/openat (Files): Add lib/fchownat.c.
17054         * lib/openat.c (fchownat): Don't define here.  Move to...
17055         * lib/fchownat.c: ...this new file.
17056
17057 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
17058
17059         Fix bug reported by Bruno Haible in
17060         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
17061         where quotearg.c didn't compile on Mac OS X 10.2 because it
17062         lacks <wchar.h> and wint_t.
17063         * lib/wctype_.h (__wctype_wint_t): New type.
17064         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
17065         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
17066         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
17067         Arg is now of type __wctype_wint_t, not wint_t.
17068         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
17069         substitute HAVE_WINT_T.
17070         * modules/wctype (Files): Add m4/wint_t.m4.
17071         (wctype.h): Substitute HAVE_WINT_T.
17072
17073 2006-12-23  Bruno Haible  <bruno@clisp.org>
17074
17075         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
17076
17077 2006-12-23  Bruno Haible  <bruno@clisp.org>
17078
17079         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
17080         S_ISLNK.
17081         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
17082         mingw.
17083
17084 2006-12-22  Bruno Haible  <bruno@clisp.org>
17085
17086         * lib/copy-file.c: Include acl.h.
17087         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
17088         Close the file descriptors only after being done with copy_acl.
17089         * modules/copy-file (Depends-on): Add acl.
17090
17091 2006-12-22  Bruno Haible  <bruno@clisp.org>
17092
17093         * gnulib-tool (SED): New variable.
17094         Use $SED instead of sed everywhere.
17095
17096 2006-12-22  Bruno Haible  <bruno@clisp.org>
17097
17098         * modules/no-c++: New file.
17099         * m4/no-c++.m4: New file.
17100         * MODULES.html.sh (Support for building libraries and executables):
17101         Add no-c++.
17102
17103 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
17104
17105         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
17106         Include <limits.h>, and use its INT_MAX to rewrite the
17107         j loop so that it does not overflow 'int'.  Problem reported by
17108         Ralf Wildenhues in
17109         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
17110         Play it safe by shifting left by 1 rather than multiplying by 2,
17111         as GCC is less likely to optimize this away when the value
17112         is signed (when it assumes overflow leads to undefined behavior).
17113         Also, don't assume time_t uses two's complement.
17114
17115 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
17116
17117         * MODULES.html.sh: New module wctype.
17118         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
17119         * lib/fnmatch.c: Don't bother to include <wchar.h> before
17120         <wctype.h>, since the new wctype module should fix this.
17121         * lib/quotearg.c: Include <wctype.h> unconditionally, since
17122         the wctype module should arrange for it.
17123         * lib/regex_internal.h: Likewise.
17124         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
17125         since the wctype module should handle this now.
17126         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
17127         * modules/fnmatch (Depends-on): Add wctype.
17128         * modules/quotearg (Depends-on): Likewise.
17129         * modules/regex (Depends-on): Likewise.
17130
17131 2006-12-19  Bruno Haible  <bruno@clisp.org>
17132
17133         * lib/strdup.h [C++]: Wrap definitions in extern "C".
17134         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
17135
17136 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17137
17138         * modules/savewd (Depends-on): Fix dependency on fcntl.
17139
17140 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
17141
17142         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
17143         conforms to C99, rather than relying on the user's environment
17144         setting of STDINT_H.
17145
17146 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
17147         and Eric Blake  <ebb9@byu.net>
17148
17149         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
17150         This is more consistent with the other defines here.
17151         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
17152         Port to z/OS.  Problem reported by Paul Gilmartin.
17153         Change local vars to use gl_ prefix rather than ac_.
17154         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
17155         with other defines.
17156         * modules/double-slash-root: New module.
17157         * modules/dirname (Files): Remove m4/double-slash-root.m4.
17158         (Depends-on): Add double-slash-root.
17159         * MODULES.html.sh (File system functions): Mention new module.
17160
17161 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
17162
17163         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
17164         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
17165         This is for the benefit of gzip, which doesn't do i18n.
17166
17167 2006-12-12  Jim Meyering  <jim@meyering.net>
17168
17169         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
17170         Reported by Andreas Schwab <schwab@suse.de>.
17171
17172 2006-12-12  Bruno Haible  <bruno@clisp.org>
17173
17174         Merge these changes.
17175         2006-09-05  Bruno Haible  <bruno@clisp.org>
17176         * lib/iconvme.c (iconv_string): No need to save and restore errno when
17177         iconv_alloc succeeded.
17178         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
17179         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
17180         test for " && dest " at the end - dest is always != NULL there. Call
17181         iconv with 4xNULL arguments initially, to reset the state. Call iconv
17182         with 2xNULL arguments, also to flush the state storage. Handle the
17183         IRIX iconv behaviour. Realloc the final result, to throw away unused
17184         memory.
17185
17186 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
17187
17188         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
17189         and fchmodat unconditionally, since glibc 2.4 has them.
17190         Problem reported by Arkadiusz Miskiewicz.
17191
17192 2006-12-10  Bruno Haible  <bruno@clisp.org>
17193
17194         * gnulib-tool (func_import): Show the include files only for those
17195         modules that are copied and specified.
17196         Reported by Karl Berry.
17197
17198 2006-12-08  Jim Meyering  <jim@meyering.net>
17199
17200         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
17201         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
17202
17203         * build-aux/announce-gen: Add two new options, both optional:
17204         --bootstrap-tools=TOOL_LIST
17205               a comma-separated list of tools, e.g.,
17206               autoconf,automake,bison,gnulib
17207         --gnulib-snapshot-date=DATE
17208               if gnulib is in the bootstrap tool list,
17209               then report this as the snapshot date.
17210               If not specified, use the current date/time.
17211               If you specify a date here, be sure it's UTC.
17212
17213 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17214
17215         * tests/test-argp-2.sh: Fix test to match actual output.
17216         (func_compare): Fix sed script to be portable.
17217
17218 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
17219
17220         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
17221         workaround for this case.  It is not autoconfigured now; offhand
17222         it's hard to see how to autoconfigure it.
17223
17224 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
17225
17226         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
17227         a directory that is about to be chowned.  Such a directory's
17228         initial file permissions should permit the owner only and this
17229         should not be changed until after the chown, since the group and
17230         other bits would be incorrect if they granted permission before
17231         the chown.
17232
17233         Fix porting problem for iswctype reported by Georg Schwarz in:
17234         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
17235         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
17236         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
17237         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
17238         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
17239
17240 2006-12-03  Jim Meyering  <jim@meyering.net>
17241
17242         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
17243         p->fts_statp may not yet be defined.
17244         (fts_read): Instead, set it in the caller, once p->fts_statp is
17245         sure to be defined, and corresponds to a top-level directory.
17246         This bug made du -x fail.  Here's the coreutils test case:
17247         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
17248         Reported by Mike Frysinger.
17249
17250 2006-12-01  Jim Meyering  <jim@meyering.net>
17251
17252         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
17253         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
17254         Reported by Simon Josefsson.
17255
17256 2006-11-30  Jim Meyering  <jim@meyering.net>
17257
17258         * m4/warning.m4: Use the all-permissive copyright notice
17259         recommended by RMS (rather than LGPL).
17260         * m4/vararrays.m4: Likewise.
17261         * m4/flexmember.m4: Likewise.
17262
17263 2006-11-29  Bruno Haible  <bruno@clisp.org>
17264
17265         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
17266         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
17267         using +=.
17268         Reported by Simon Josefsson <simon@josefsson.org>.
17269
17270 2006-11-28  James Youngman <jay@gnu.org>
17271
17272         * README: Advise users that they might find the bug-gnulib@gnu.org
17273         and autotools-announce@gnu.org mailing lists useful.
17274
17275 2006-11-28  Bruno Haible  <bruno@clisp.org>
17276
17277         * m4/ptrdiff_max.m4: Remove file.
17278
17279 2006-11-21  Bruno Haible  <bruno@clisp.org>
17280
17281         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
17282         _AC_COMPUTE_INT.
17283         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
17284         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
17285         _AC_COMPUTE_INT.
17286         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
17287         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
17288         _AC_COMPUTE_INT.
17289         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
17290
17291 2006-11-28  Jim Meyering  <jim@meyering.net>
17292
17293         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
17294         warning from "gcc -Wshadow" about shadowing the builtin.
17295
17296 2006-11-27  Bruno Haible  <bruno@clisp.org>
17297
17298         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
17299         _AC_COMPUTE_INT.
17300         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
17301
17302 2006-11-27  Bruno Haible  <bruno@clisp.org>
17303             Paul Eggert  <eggert@cs.ucla.edu>
17304
17305         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
17306
17307 2006-11-26  Bruno Haible  <bruno@clisp.org>
17308
17309         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
17310         noinst_LTLIBRARIES.
17311
17312 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
17313             Bruno Haible  <bruno@clisp.org>
17314
17315         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
17316         if compiling with "gcc -ansi".
17317
17318 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
17319
17320         Fix some incompatibilities with gcc -ansi -pedantic.
17321         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
17322         if compiling pedantically with GCC, unless it's C99 or later.
17323         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
17324         it mishandles gcc -ansi -pedantic as well.
17325         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
17326         if gcc -pedantic.
17327         * lib/regexec.c (check_node_accept_bytes): Don't use auto
17328         initializers for struct if -pedantic, unless it's C99 or later.
17329
17330 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
17331
17332         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
17333         Don't close an fd more than once. Identical atimes indicate
17334         success, not failure.
17335
17336 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
17337
17338         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
17339
17340 2006-11-23  Jim Meyering  <jim@meyering.net>
17341
17342         * build-aux/announce-gen: New file.  From coreutils.
17343
17344 2006-11-22  Jim Meyering  <jim@meyering.net>
17345
17346         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
17347         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
17348         (fts_read): Use a temporary to narrow the overused st_size member
17349         before using it in a switch statement.  Reported by Matthew Woehlke.
17350
17351         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
17352         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
17353
17354 2006-11-20  Bruno Haible  <bruno@clisp.org>
17355
17356         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
17357         changequote instead of pairs of brackets.
17358         Reported by Andreas Schwab <schwab@suse.de>.
17359
17360 2006-11-21  Jim Meyering  <jim@meyering.net>
17361
17362         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
17363         so as to remain compatible with older compilers.
17364         Patch from Michael Deutschmann.
17365
17366 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
17367
17368         * MODULES.html.sh (File system functions): Add openat.
17369
17370         * lib/openat.h (rpl_fstatat): New macro, if
17371         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
17372         (fstatat): Define to rpl_fstatat under the same conditions,
17373         unless COMPILING_FSTATAT.
17374         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
17375         seems to have the bug.
17376         * lib/fstatat.c: New file.
17377         * modules/openat (Files): Add it.
17378
17379 2006-11-20  Bruno Haible  <bruno@clisp.org>
17380
17381         * Makefile: New file.
17382
17383 2006-11-20  Jim Meyering  <jim@meyering.net>
17384
17385         The beginnings of syntax-related checks for gnulib.
17386         * lib/Makefile: New file.
17387         * lib/t-idcache: New script.  Ensure that the two halves of
17388         idcache.c stay in sync.
17389
17390         * lib/idcache.c: Adjust comments in user- and group- portions to
17391         be more accurate, and to be consistent with one another.
17392
17393 2006-11-20  Jim Meyering  <jim@meyering.net>
17394
17395         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
17396         continue using the flexible array member (thus, this module performs
17397         half as many malloc calls), with the addition that...
17398         (getgroup, getuser): Consistently record a non-match via an empty
17399         "name" string, and map an empty string match to a NULL return value.
17400         * modules/idcache (Depends-on): Re-add flexmember.
17401
17402         * lib/idcache.c (getuser): Remove all uses of the register keyword.
17403         (getuidbyname, getgroup, getgidbyname): Likewise.
17404
17405         Use cleaner syntax: NULL rather than 0.
17406         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
17407
17408 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
17409
17410         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
17411         It mishandled the case where the group was missing.
17412         Problem reported by Greg Schafer.
17413         * modules/idcache: Likewise.
17414
17415 2006-11-18  Jim Meyering  <jim@meyering.net>
17416
17417         * check-module (%exempt_header): Add exception for some
17418         conditionally-included headers.
17419
17420         * modules/i-ring (Depends-on): Add verify.
17421         (License): Change to LGPL.
17422
17423 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
17424
17425         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
17426         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
17427         and inttostr.h.  Use snprintf rather than uinttostr, so that
17428         LGPLed code doesn't depend on GPLed.
17429
17430 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
17431
17432         * modules/inline (License): Change from GPL to LGPL.
17433
17434 2006-11-17  Jim Meyering  <jim@meyering.net>
17435
17436         * modules/d-type (License): Switch to LGPL.
17437
17438 2006-11-15  Bruno Haible  <bruno@clisp.org>
17439
17440         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
17441
17442 2006-11-15  Eric Blake  <ebb9@byu.net>
17443
17444         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
17445         the module dependency.
17446
17447 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17448             Bruno Haible  <bruno@clisp.org>
17449
17450         * gnulib-tool (func_create_testdir): Add license consistency check.
17451
17452 2006-11-15  Eric Blake  <ebb9@byu.net>
17453
17454         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
17455         random "(cached)" in configure output.
17456
17457 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17458
17459         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
17460         test for conforming inttypes.h is both announced and cached.
17461
17462         * MODULES.html.sh (seen_modules, seen_files): New variables.
17463         (func_module): Rewrite to use a few less gnulib-tool and sed
17464         invocations.  Avoid a couple of quadratic algorithms for ...
17465         (missed_modules, missed_files): ... these, with ...
17466         (func_append, func_tmpdir): ... these new functions, from
17467         gnulib-tool.  Analogously, install traps for cleanup.
17468
17469         * tests/test-gc.c (main): Remove unused variables.
17470         * tests/test-read-file.c: Include stdlib.h, for 'free'.
17471
17472 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
17473
17474         * modules/inttostr (License): Change to LGPL.
17475
17476 2006-11-14  Eric Blake  <ebb9@byu.net>
17477
17478         * modules/tempname (License): Change to LGPL.
17479
17480 2006-11-14  Eric Blake  <ebb9@byu.net>
17481
17482         * doc/functions.texi (Function Portability): *printf functions on
17483         Cygwin now understand all POSIX size specifiers.
17484
17485 2006-11-14  Bruno Haible  <bruno@clisp.org>
17486
17487         * modules/c-ctype (License): Change to LGPL.
17488
17489 2006-11-12  Bruno Haible  <bruno@clisp.org>
17490
17491         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
17492         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
17493         for GNOME libraries, for which the include files are installed in
17494         subdirectories of $prefix/include.
17495
17496 2006-11-12  Bruno Haible  <bruno@clisp.org>
17497
17498         * m4/lib-link.m4: Require at least autoconf-2.54.
17499         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
17500         name to underscores for the --with option.
17501
17502 2006-11-13  Bruno Haible  <bruno@clisp.org>
17503
17504         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
17505         the tests directory.
17506         Reported by Ralf Wildenhues.
17507
17508 2006-11-13  Bruno Haible  <bruno@clisp.org>
17509
17510         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
17511         (func_emit_initmacro_end): Undo the override here.
17512         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
17513         Works around the famous automake error in coreutils.
17514
17515 2006-11-13  Eric Blake  <ebb9@byu.net>
17516
17517         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
17518         element, not its node.
17519
17520 2006-11-12  Bruno Haible  <bruno@clisp.org>
17521
17522         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
17523         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
17524
17525 2006-11-12  Bruno Haible  <bruno@clisp.org>
17526
17527         * gnulib-tool: New option --local-symlink.
17528         (func_usage): Document it.
17529         (lsymbolic): New variable.
17530         (func_import, func_create_testdir): If --symlink was not specified,
17531         test whether --local-symlink was specified and the file comes from
17532         the local_gnulib_dir.
17533
17534 2006-11-12  Bruno Haible  <bruno@clisp.org>
17535
17536         * gnulib-tool (func_ln): New function.
17537         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
17538
17539 2006-11-12  Bruno Haible  <bruno@clisp.org>
17540
17541         Finish support for source files in subdirectories.
17542         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
17543         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
17544         AUTOMAKE_OPTIONS.
17545         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
17546
17547 2006-11-12  Bruno Haible  <bruno@clisp.org>
17548
17549         * gnulib-tool (func_get_automake_snippet): Synthesize also an
17550         EXTRA_lib_SOURCES augmentation.
17551         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
17552
17553 2006-11-12  Jim Meyering  <jim@meyering.net>
17554
17555         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
17556         file descriptors.  This also averts a failure on systems with
17557         native openat support when a traversed directory lacks "x" access.
17558         * lib/fts_.h: Include "i-ring.h"
17559         (struct FTS) [fts_fd_ring]: New member.
17560         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
17561         (FCHDIR): Add parentheses.
17562         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
17563         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
17564         When descending, rather than simply closing the previous
17565         fts_cwd_fd value, push that file descriptor onto the ring.
17566         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
17567         (fts_open): Initialize the new fd_ring member.
17568         (fts_close): Clear the ring.
17569         (fts_safe_changedir): When possible, use our new fd_ring to skip
17570         the diropen and fstat and dev/ino comparison that would normally
17571         accompany a virtual `chdir ("..")'.
17572
17573         * modules/fts (Depends-on): Add i-ring.
17574         * modules/i-ring: New module.
17575         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
17576         * m4/i-ring.m4: New file.
17577
17578 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17579
17580         * gnulib-tool (func_create_testdir): Fix replacement of
17581         `build-aux' in configure.ac.  Run autotools in gltests
17582         subdirectory.
17583         (func_create_testdir, func_create_megatestdir, test): There is
17584         no need for '--force' in most autotool invocations in a new
17585         tree.  Actually fail the whole test if any of the tools, or the
17586         configure or make stages fail.
17587
17588         Sync from Automake.
17589         * build-aux/gnupload: Revert last change.  Add pointer to upload
17590         instructions of the GNU Maintenance Instructions.
17591         Suggestion by Karl Berry.
17592
17593 2006-11-10  Jim Meyering  <jim@meyering.net>
17594
17595         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
17596
17597 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
17598
17599         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
17600         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
17601         (bind_textdomain_codeset) [! ENABLE_NLS]:
17602         Evaluate all the arguments.  That way, callers get compatible behavior
17603         if the arguments have side effects.  Also, it avoids some GCC
17604         diagnostics in some cases; Joel E. Denny reported problems when Bison
17605         was configured with --enable-gcc-warnigs.
17606
17607 2006-11-10  Jim Meyering  <jim@meyering.net>
17608
17609         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
17610         relevant options in CFLAGS (like -O, -fno-inline) are taken into
17611         account.
17612
17613 2006-11-10  Jim Meyering  <jim@meyering.net>
17614
17615         * modules/inline: New file/module.
17616         * modules/xalloc (Files): Remove m4/inline.m4.
17617         (Depends-on): Add inline, instead.
17618         * modules/oset: Likewise.
17619         * modules/list: Likewise.
17620
17621 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
17622
17623         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
17624         Problem reported by Matthew Woehlke.
17625
17626 2006-11-09  Bruno Haible  <bruno@clisp.org>
17627
17628         * lib/tempname.c (gen_tempname): Remove variant that invokes
17629         __gen_tempname.
17630         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
17631         __gen_tempname.
17632
17633 2006-11-08  Bruno Haible  <bruno@clisp.org>
17634
17635         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
17636         to 'yes' instead of 'cross-compiling'.
17637
17638 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17639
17640         * lib/quotearg.h (quotearg_free): New decl.
17641         * lib/quotearg.c (quotearg_free): New function.
17642         (slot0, nslots, slotvec0, slotvec):
17643         Now file-scope so that quotearg_free can get at them.
17644
17645 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17646
17647         Sync from Automake.
17648         * build-aux/gnupload: Add missing 'gnu' to example URL.
17649         Report by Karl Berry.
17650
17651 2006-11-08  Bruno Haible  <bruno@clisp.org>
17652
17653         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
17654         Suggested by Paul Eggert.
17655
17656 2006-11-08  Jim Meyering  <jim@meyering.net>
17657
17658         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
17659         It's already included if !_LIBC.
17660         (fts_safe_changedir): Add a comment.
17661
17662 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
17663
17664         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
17665         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
17666         Matthew Woehlke.
17667
17668         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
17669         definitions up, to avoid colliding with change below.
17670         (static_inline) [HAVE_INLINE]: New macro.
17671         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
17672         Provide extern decls when !HAVE_INLINE.  Do not define unless
17673         static_inline is defined, either by us or by xmalloc.c.  Use
17674         static_inline rather than static inline.
17675         (XCALLOC): Optimize sizeof(T) = 1 case.
17676         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
17677
17678 2006-11-07  Bruno Haible  <bruno@clisp.org>
17679
17680         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
17681         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
17682         AC_C_INLINE.
17683         * modules/xalloc (Files): Add m4/inline.m4.
17684
17685 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17686
17687         * README: Fix typo.
17688         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
17689         (Miscellanous Notes): ...from this.
17690
17691 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
17692
17693         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
17694         Mention that offsetof should be used instead of sizeof.
17695         From Bruno Haible.
17696
17697 2006-11-07  Bruno Haible  <bruno@clisp.org>
17698
17699         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
17700
17701 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
17702
17703         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
17704         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
17705         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
17706         (gl_tree_add_before, gl_tree_add_after):
17707         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
17708         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
17709         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
17710         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
17711         (gl_linked_add_after, gl_linked_add_at): Likewise.
17712         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
17713         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
17714         (gl_tree_add_before, gl_tree_add_after): Likewise.
17715         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
17716         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
17717         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
17718
17719 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17720
17721         * lib/gl_oset.h: Use C comment style, not C++ comment style.
17722
17723 2006-11-06  Bruno Haible  <bruno@clisp.org>
17724
17725         * m4/inline.m4: New file.
17726         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
17727         * modules/list (Files): Add m4/inline.m4.
17728         * modules/oset (Files): Likewise.
17729
17730 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
17731
17732         * lib/idcache.c: Include <stddef.h>, for offsetof.
17733         (struct userid.name): Change from char * to a flexible array member.
17734         All uses changed.
17735         * modules/idcache (Depends-on): Add flexmember.
17736
17737         * MODULES.html.sh (Core language properties): New module flexmember.
17738         * modules/flexmember, m4/flexmember.m4: New files.
17739
17740         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
17741         inline functions that are identical with the old xnmalloc_inline,
17742         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
17743         that we can avoid some unnecessary integer multiplications and
17744         divisions in the common case where the element size is known at
17745         compile time.
17746         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
17747         needed.
17748         (xnboundedmalloc): Remove.
17749         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
17750         arguments, for consistency with rest of this header.
17751         (xcharalloc): Rewrite using XNMALLOC.
17752         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
17753         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
17754         versions have been moved to lib/xalloc.h and renamed to be the
17755         non-*_inline versions.
17756         (xmalloc, xrealloc): Implement without reference to the xnmalloc
17757         and xnrealloc functions, since those functions are now inline and
17758         now call us.
17759         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
17760         renaming described above.
17761         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
17762         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
17763         captures the dependency in AC_C_INLINE.
17764
17765         New module canonicalize-lgpl, proposed by Charles Wilson in
17766         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
17767         with a few small changes afterwards.
17768         * MODULES.html.sh (File system functions): New module
17769         canonicalize-lgpl.
17770         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
17771         and canonicalize_file_name.
17772         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
17773         * modules/canonicalize-lgpl: New files.
17774
17775 2006-11-05  Bruno Haible  <bruno@clisp.org>
17776
17777         * gnulib-tool (func_import, func_create_testdir): Create directories
17778         also for files in subdirectories of lib/.
17779
17780 2006-11-05  Bruno Haible  <bruno@clisp.org>
17781
17782         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
17783         ANSI C compliant.
17784
17785 2006-11-03  Bruno Haible  <bruno@clisp.org>
17786
17787         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
17788         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
17789         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
17790         (xnboundedmalloc): New inline function.
17791         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
17792         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
17793         xmalloc.
17794         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
17795         xmalloc.
17796         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
17797         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
17798         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
17799         xmalloc.
17800         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
17801         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
17802         xmalloc.
17803         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
17804         gl_tree_add_after): Use XMALLOC instead of xmalloc.
17805         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
17806         xmalloc.
17807         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
17808         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
17809         gl_tree_add_after): Use XMALLOC instead of xmalloc.
17810         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
17811         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
17812         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
17813         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
17814
17815 2006-11-03  Bruno Haible  <bruno@clisp.org>
17816
17817         * lib/c-ctype.h [C++]: Define functions without name mangling.
17818         * lib/fwriteerror.h [C++]: Likewise.
17819         * lib/gcd.h [C++]: Likewise.
17820         * lib/linebreak.h [C++]: Likewise.
17821
17822 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
17823
17824         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
17825         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
17826         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
17827         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
17828         Check for functions and headers just once.
17829         Check for declaration of canonicalize_file_name.
17830         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
17831
17832 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
17833
17834         * gnulib-tool (func_import): Fix typo in actioncmd.
17835
17836 2006-11-02  Bruno Haible  <bruno@clisp.org>
17837
17838         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
17839         newline sequence in the Makefile.am snippet as a space, like "make"
17840         does.
17841         Reported by Roger Persson <perrog@gmail.com>.
17842
17843 2006-11-01  Bruno Haible  <bruno@clisp.org>
17844
17845         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
17846         already declared in <string.h>.
17847         * lib/strcase.h (strncasecmp): Don't declare it if yes.
17848
17849 2006-11-01  Bruno Haible  <bruno@clisp.org>
17850
17851         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
17852         * lib/strcase.h: Include <string.h>.
17853         (strcasecmp): Define to rpl_strcasecmp here.
17854
17855 2006-11-01  Bruno Haible  <bruno@clisp.org>
17856
17857         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
17858
17859 2006-11-01  Eric Blake  <ebb9@byu.net>
17860
17861         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
17862
17863         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
17864
17865 2006-10-29  Bruno Haible  <bruno@clisp.org>
17866
17867         Make it compile in C++ mode.
17868         * lib/full-write.c (full_rw): Add a cast.
17869
17870 2006-11-01  Bruno Haible  <bruno@clisp.org>
17871
17872         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
17873         be POSIX compliant.
17874         Reported by Roger Persson <perrog@gmail.com>.
17875
17876 2006-11-01  Eric Blake  <ebb9@byu.net>
17877
17878         * lib/getopt_.h: Fix comments.
17879
17880 2006-10-31  Eric Blake  <ebb9@byu.net>
17881
17882         * modules/tmpdir (Depends-on): Add sys_stat.
17883         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
17884         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
17885         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
17886         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
17887         tempname.
17888
17889 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
17890
17891         Avoid some C++ diagnostics reported by Bruno Haible.
17892         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
17893         xmalloc.
17894         (quotearg_alloc): Use xcharalloc rather than xmalloc.
17895         (struct slotvec): Move to top level.
17896         (quotearg_n_options): Rewrite to avoid xmalloc.
17897         * lib/xalloc.h (xcharalloc): New function.
17898         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
17899         [defined __cplusplus]: Add function template that provides result
17900         type propagation.  This part of the change is from Bruno Haible.
17901
17902 2006-10-29  Bruno Haible  <bruno@clisp.org>
17903
17904         Make it compile in C++ mode.
17905         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
17906         * lib/strnlen1.c (strnlen1): Cast memchr result.
17907         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
17908         * lib/clean-temp.c (string_equals, string_hash): Add casts.
17909         (create_temp_dir): Rename local variable 'template'.
17910         (compile_csharp_using_sscli): Add cast.
17911         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
17912         * lib/findprog.c (find_in_path): Likewise.
17913         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
17914         * lib/wait-process.c (register_slave_subprocess): Likewise.
17915
17916 2006-10-22  Bruno Haible  <bruno@clisp.org>
17917
17918         * modules/tsearch: New file.
17919         * lib/tsearch.h: New file.
17920         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
17921         * m4/tsearch.m4: New file.
17922         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
17923
17924 2006-10-29  Eric Blake  <ebb9@byu.net>
17925
17926         * lib/arcfour.c: Assume config.h.
17927         * lib/arctwo.c: Likewise.
17928         * lib/base64.c: Likewise.
17929         * lib/check-version.c: Likewise.
17930         * lib/crc.c: Likewise.
17931         * lib/des.c: Likewise.
17932         * lib/gc-gnulib.c: Likewise.
17933         * lib/gc-libgcrypt.c: Likewise.
17934         * lib/gc-pbkdf2-sha1.c: Likewise.
17935         * lib/getaddrinfo.c: Likewise.
17936         * lib/getdelim.c: Likewise.
17937         * lib/getline.c: Likewise.
17938         * lib/hmac-md5.c: Likewise.
17939         * lib/hmac-sha1.c: Likewise.
17940         * lib/iconvme.c: Likewise.
17941         * lib/md2.c: Likewise.
17942         * lib/md4.c: Likewise.
17943         * lib/memxor.c: Likewise.
17944         * lib/read-file.c: Likewise.
17945         * lib/readline.c: Likewise.
17946         * lib/rijndael-alg-fst.c: Likewise.
17947         * lib/rijndael-api-fst.c: Likewise.
17948         * lib/xgetdomainname.c: Likewise.
17949
17950 2006-10-28  Eric Blake  <ebb9@byu.net>
17951
17952         * lib/xstrndup.c: Assume config.h.
17953
17954 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
17955
17956         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
17957         stat-macros.h is now for our own macros, whereas stat_h is for
17958         macros in the <sys/stat.h> name space.
17959         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
17960         (STAT_MACROS_H): Remove.
17961         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
17962         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
17963         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
17964         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
17965         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
17966         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
17967         Move these macros to ...
17968         * lib/stat_.h: here.  Don't include stat-macros.h.
17969         * lib/canonicalize.c: Don't include stat-macros.h.
17970         * lib/chown.c: Likewise.
17971         * lib/euidaccess.c: Likewise.
17972         * lib/file-type.c: Likewise.
17973         * lib/filemode.c: Likewise.
17974         * lib/glob.c: Likewise.
17975         * lib/isapipe.c: Likewise.
17976         * lib/lchown.c: Likewise.
17977         * lib/lstat.c: Likewise.
17978         * lib/mkdir-p.c: Likewise.
17979         * lib/rmdir.c: Likewise.
17980         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
17981         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
17982         unless mkdir isn't declared, to speed up 'configure'.
17983         Always create sys/stat.h, since it's unlikely any real sys/stat.h
17984         would define all the S_* symbols.
17985         * modules/canonicalize (Depends-on):
17986         Depend on sys_stat, not stat-macros.
17987         * modules/chown: Likewise.
17988         * modules/euidaccess: Likewise.
17989         * modules/filemode: Likewise.
17990         * modules/file-type: Likewise.
17991         * modules/glob: Likewise.
17992         * modules/isapipe: Likewise.
17993         * modules/lchown: Likewise.
17994         * modules/lstat: Likewise.
17995         * modules/mkancesdirs: Likewise.
17996         * modules/rmdir: Likewise.
17997         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
17998         * modules/modechange: Likewise.
17999         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
18000         (configure.ac): Remove gl_STAT_MACROS.
18001         * modules/sys_stat (Depends-on): Remove stat-macros.
18002
18003 2006-10-27  Bruno Haible  <bruno@clisp.org>
18004
18005         * m4/signed.m4: Remove file.
18006         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
18007         invocation.
18008         * modules/vasnprintf (Files): Remove m4/signed.m4.
18009
18010 2006-10-27  Bruno Haible  <bruno@clisp.org>
18011
18012         Update to GNU gettext 0.16.
18013         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
18014         m4/inttypes-h.m4, m4/signed.m4.
18015         * m4/gettext.m4: Update to GNU gettext 0.16.
18016         * m4/intl.m4: New file, from GNU gettext.
18017         * m4/intldir.m4: New file, from GNU gettext.
18018         * config/srclist.txt: Update
18019
18020 2006-10-27  Eric Blake  <ebb9@byu.net>
18021
18022         * MODULES.html.sh: Document tempname.
18023         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
18024         dependencies.
18025         (Files): Move lib/tempname.c...
18026         * modules/tempname: ...to this new module.
18027         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
18028         (gl_PREREQ_TEMPNAME): Move...
18029         * m4/tempname.m4: ...to this new file.
18030         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
18031         * modules/sys_stat (Depends-on): Add stat-macros.
18032         * lib/stat_.h (includes): Pick up stat macros.
18033         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
18034         if stat macros are broken.
18035         * lib/tempname.c (includes): No need to include "stat-macros.h".
18036         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
18037         (direxists, __path_search) [!_LIBC]: Don't compile these in
18038         gnulib; the tmpdir module covers that.
18039         * lib/tempname.h: New file.
18040
18041 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
18042
18043         * COPYING: Explain how gnulib-tool converts licence headers.
18044         Almost all wording by Eric Blake.
18045
18046 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18047
18048         * lib/mbchar.h (is_basic_table): Make read-only.
18049         * lib/mbchar.c (is_basic_table): Likewise.
18050         Reported by John Darrington.
18051
18052 2006-10-25  Bruno Haible  <bruno@clisp.org>
18053
18054         * lib/progname.h (set_program_name): Undefine before defining.
18055
18056 2006-10-25  Bruno Haible  <bruno@clisp.org>
18057
18058         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
18059         false for non-gcc C++ compilers.
18060         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
18061
18062 2006-10-24  Bruno Haible  <bruno@clisp.org>
18063
18064         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
18065         iconv implementations like Irix iconv.
18066
18067 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
18068
18069         * modules/vararrays: New file.
18070         * m4/vararrays.m4: New file, taken from diffutils.
18071         * MODULES.html.sh: New module vararrays.
18072
18073 2006-10-24  Karl Berry  <karl@gnu.org>
18074
18075         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
18076         Don't call GNU Unix.
18077
18078 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18079
18080         * users.txt: Add Libtool.
18081
18082         Sync from Libtool:
18083
18084         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
18085
18086         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
18087         to gnulib's policy of including config.h unconditionally.
18088
18089 2006-10-24  Bruno Haible  <bruno@clisp.org>
18090
18091         * modules/wcwidth (Files): Add m4/wint_t.m4.
18092         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
18093         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
18094
18095 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
18096
18097         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
18098         to pacify GCC with some -W flags enabled.  Problem reported by
18099         Bruno Haible.
18100
18101 2006-10-24  Jim Meyering  <jim@meyering.net>
18102
18103         * MODULES.html.sh: Remove uinttostr.  It's not a module.
18104         Reported by Karl Berry.
18105
18106 2006-10-23  Bruno Haible  <bruno@clisp.org>
18107
18108         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
18109
18110 2006-10-24  Bruno Haible  <bruno@clisp.org>
18111
18112         * lib/gl_list.h: Use C comment style, not C++ comment style.
18113
18114 2006-10-23  Eric Blake  <ebb9@byu.net>
18115
18116         * lib/getaddrinfo.c (includes): Add missing include.
18117
18118 2006-10-23  Bruno Haible  <bruno@clisp.org>
18119             Paul Eggert  <eggert@cs.ucla.edu>
18120
18121         Ability to rename obstack_free.
18122         * lib/obstack.h (__obstack_free): New macro. Declare instead of
18123         obstack_free.
18124         (obstack_free): Invoke the __obstack_free macro.
18125         * lib/obstack.c (obstack_free): Use __obstack_free macro.
18126
18127 2006-10-23  Bruno Haible  <bruno@clisp.org>
18128             Paul Eggert  <eggert@cs.ucla.edu>
18129
18130         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
18131         __argc, __argv from the declaration. (They are defined as macros on
18132         mingw.)
18133
18134 2006-10-22  Bruno Haible  <bruno@clisp.org>
18135
18136         * doc/gnulib-intro.texi: New file.
18137         * doc/gnulib.texi: Include it.
18138
18139 2006-10-21  Bruno Haible  <bruno@clisp.org>
18140
18141         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
18142         "Introduction", "Miscellanous Notes", "Particular Modules".
18143
18144 2006-10-21  Bruno Haible  <bruno@clisp.org>
18145
18146         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18147         Change mostlyclean-local rule to avoid sh syntax error from bash
18148         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
18149
18150 2006-10-23  Jim Meyering  <jim@meyering.net>
18151
18152         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
18153         in place of snprintf.
18154
18155         * modules/inttostr (Files): Add lib/uinttostr.c.
18156         * lib/uinttostr.c (inttostr): New file/function.
18157         * lib/inttostr.h (uinttostr): Declare.
18158         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
18159         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
18160         Add uinttostr.
18161         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
18162
18163 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
18164
18165         * lib/canonicalize.c (ELOOP): Define if not already defined.
18166         Problem reported by Bruno Haible in
18167         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
18168
18169 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
18170
18171         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
18172         Problem reported by Perry Smith and Ville Laurikari.
18173
18174         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
18175         uses.
18176
18177 2006-10-19  Bruno Haible  <bruno@clisp.org>
18178
18179         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
18180         for mingw.
18181
18182 2006-10-19  Bruno Haible  <bruno@clisp.org>
18183
18184         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
18185         Needed for mingw.
18186
18187 2006-10-19  Bruno Haible  <bruno@clisp.org>
18188
18189         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
18190
18191 2006-10-19  Bruno Haible  <bruno@clisp.org>
18192
18193         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
18194         it.
18195
18196 2006-10-19  Bruno Haible  <bruno@clisp.org>
18197
18198         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
18199         invocation.
18200
18201 2006-10-19  Bruno Haible  <bruno@clisp.org>
18202
18203         * gnulib-tool (func_create_testdir): Don't include ftruncate and
18204         mountlist by default.
18205
18206 2006-10-16  Bruno Haible  <bruno@clisp.org>
18207
18208         * lib/c-strstr.c: Include c-strstr.h.
18209
18210 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
18211
18212         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
18213         in a slash.
18214
18215 2006-10-18  Bruno Haible  <bruno@clisp.org>
18216
18217         * lib/lock.h [C++]: Wrap definitions in extern "C".
18218
18219 2006-10-18  Bruno Haible  <bruno@clisp.org>
18220
18221         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
18222         gl_LIBOBJS list.
18223
18224 2006-10-18  Bruno Haible  <bruno@clisp.org>
18225
18226         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
18227
18228 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
18229
18230         * lib/xstrtol.h: Include gettext.h.
18231         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
18232         Problem reported by Eric Blake.
18233         * modules/xstrtol (Depends-on): Add gettext-h.
18234
18235 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
18236
18237         * lib/strftime.c (advance): New macro.
18238         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
18239         incomplete type, so you can't add 0 to it.  Problem and patch
18240         reported by Eelco Dolstra for dietlibc.
18241
18242 2006-10-18  Jim Meyering  <jim@meyering.net>
18243
18244         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
18245         type for a local, and rename it: s/up/user_proc/.
18246
18247 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
18248
18249         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
18250         READ_UTMP_USER_PROCESS.
18251         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
18252
18253 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
18254
18255         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
18256         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
18257
18258 2006-10-17  Eric Blake  <ebb9@byu.net>
18259
18260         * lib/sigprocmask.c (sigprocmask): Fix typo.
18261
18262         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
18263
18264         * modules/clean-temp (Makefile.am): Don't add to make output...
18265         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
18266         config.h.
18267
18268 2006-10-17  Bruno Haible  <bruno@clisp.org>
18269
18270         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
18271         differently if DEFAULT_TEXT_DOMAIN is set.
18272
18273 2006-10-16  Bruno Haible  <bruno@clisp.org>
18274
18275         * lib/clean-temp.c: Include fwriteerror.h.
18276
18277 2006-10-16  Bruno Haible  <bruno@clisp.org>
18278
18279         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
18280
18281 2006-10-16  Bruno Haible  <bruno@clisp.org>
18282
18283         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
18284         * lib/sigprocmask.h: Include <sys/types.h>.
18285         (sigset_t): Use the system's definition if present.
18286
18287 2006-10-17  Eric Blake  <ebb9@byu.net>
18288
18289         * lib/xvasprintf.c (includes): Assume config.h.
18290         * lib/xasprintf.c (includes): Likewise.
18291
18292 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
18293
18294         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
18295         at least as wide as intmax_t.
18296
18297 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
18298
18299         (Imported from Automake.)
18300         * build-aux/gnupload: Update to version 1.1 of directive file.
18301
18302 2006-10-16  Eric Blake  <ebb9@byu.net>
18303
18304         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
18305         match Automake 1.10a.
18306
18307 2006-10-14  Bruno Haible  <bruno@clisp.org>
18308
18309         * modules/sigprocmask: New file.
18310         * lib/sigprocmask.h: New file.
18311         * lib/sigprocmask.c: New file.
18312         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
18313         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
18314         request sigprocmask.o.
18315         (gl_PREREQ_SIGPROCMASK): New macro.
18316         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
18317         (Depends-on): Add sigprocmask.
18318         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
18319         gt_SIGNALBLOCKING. Test for 'raise' only once.
18320         * lib/fatal-signal.c: Include sigprocmask.h.
18321         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
18322         unblock_fatal_signals): Define always.
18323         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
18324         sigprocmask.
18325
18326 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18327
18328         Sync from Automake.
18329         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
18330         which incorrectly sets the mode of an existing destination
18331         directory.  In some cases the unpatched install-sh could do the
18332         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
18333         system.  We hope this is rare in practice, but it's clearly worth
18334         fixing.  Problem reported by Alex Unleashed in
18335         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
18336         Also, don't bother to check for -m bugs unless we're using -m;
18337         suggested by Stepan Kasal.
18338
18339 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18340
18341         Sync from Automake.
18342         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
18343         `-c' flag, so they appear at the same position as in %FASTDEP%
18344         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
18345         which ignores unknown options only after the first non-option.
18346         Bug report against M4 by Nelson H. F. Beebe.
18347
18348 2006-10-13  Jim Meyering  <jim@meyering.net>
18349
18350         Fix a bug in yesterday's change.
18351         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
18352         p->fts_statp->st_dev would be used uninitialized.
18353         Ensures that we always call fts_stat on the very first entry.
18354         Miklos Szeredi reported that find -xdev stopped working.
18355
18356 2006-10-12  Bruno Haible  <bruno@clisp.org>
18357
18358         * gnulib-tool (func_get_automake_snippet): Append an automatically
18359         computed EXTRA_DIST augmentation.
18360         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
18361         * modules/alloca-opt (Makefile.am): Likewise.
18362         * modules/allocsa (Makefile.am): Likewise.
18363         * modules/arcfour (Makefile.am): Likewise.
18364         * modules/arctwo (Makefile.am): Likewise.
18365         * modules/argmatch (Makefile.am): Likewise.
18366         * modules/argz (Makefile.am): Likewise.
18367         * modules/atexit (Makefile.am): Likewise.
18368         * modules/backupfile (Makefile.am): Likewise.
18369         * modules/byteswap (Makefile.am): Likewise.
18370         * modules/c-strtod (Makefile.am): Likewise.
18371         * modules/c-strtold (Makefile.am): Likewise.
18372         * modules/calloc (Makefile.am): Likewise.
18373         * modules/canon-host (Makefile.am): Likewise.
18374         * modules/canonicalize (Makefile.am): Likewise.
18375         * modules/chdir-long (Makefile.am): Likewise.
18376         * modules/chdir-safer (Makefile.am): Likewise.
18377         * modules/check-version (Makefile.am): Likewise.
18378         * modules/chown (Makefile.am): Likewise.
18379         * modules/cloexec (Makefile.am): Likewise.
18380         * modules/close-stream (Makefile.am): Likewise.
18381         * modules/closeout (Makefile.am): Likewise.
18382         * modules/crc (Makefile.am): Likewise.
18383         * modules/csharpexec (Makefile.am): Likewise.
18384         * modules/cycle-check (Makefile.am): Likewise.
18385         * modules/des (Makefile.am): Likewise.
18386         * modules/dev-ino (Makefile.am): Likewise.
18387         * modules/dirfd (Makefile.am): Likewise.
18388         * modules/dirname (Makefile.am): Likewise.
18389         * modules/dup2 (Makefile.am): Likewise.
18390         * modules/eealloc (Makefile.am): Likewise.
18391         * modules/error (Makefile.am): Likewise.
18392         * modules/euidaccess (Makefile.am): Likewise.
18393         * modules/exclude (Makefile.am): Likewise.
18394         * modules/exitfail (Makefile.am): Likewise.
18395         * modules/fcntl-safer (Makefile.am): Likewise.
18396         * modules/fcntl (Makefile.am): Likewise.
18397         * modules/file-type (Makefile.am): Likewise.
18398         * modules/fileblocks (Makefile.am): Likewise.
18399         * modules/filemode (Makefile.am): Likewise.
18400         * modules/filenamecat (Makefile.am): Likewise.
18401         * modules/fnmatch (Makefile.am): Likewise.
18402         * modules/fopen-safer (Makefile.am): Likewise.
18403         * modules/fpending (Makefile.am): Likewise.
18404         * modules/fprintftime (Makefile.am): Likewise.
18405         * modules/free (Makefile.am): Likewise.
18406         * modules/fsusage (Makefile.am): Likewise.
18407         * modules/ftruncate (Makefile.am): Likewise.
18408         * modules/fts (Makefile.am): Likewise.
18409         * modules/gc-arcfour (Makefile.am): Likewise.
18410         * modules/gc-des (Makefile.am): Likewise.
18411         * modules/gc-hmac-md5 (Makefile.am): Likewise.
18412         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
18413         * modules/gc-md4 (Makefile.am): Likewise.
18414         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
18415         * modules/gc-sha1 (Makefile.am): Likewise.
18416         * modules/gc (Makefile.am): Likewise.
18417         * modules/getaddrinfo (Makefile.am): Likewise.
18418         * modules/getcwd (Makefile.am): Likewise.
18419         * modules/getdelim (Makefile.am): Likewise.
18420         * modules/getdomainname (Makefile.am): Likewise.
18421         * modules/getgroups (Makefile.am): Likewise.
18422         * modules/gethostname (Makefile.am): Likewise.
18423         * modules/gethrxtime (Makefile.am): Likewise.
18424         * modules/getline (Makefile.am): Likewise.
18425         * modules/getloadavg (Makefile.am): Likewise.
18426         * modules/getlogin_r (Makefile.am): Likewise.
18427         * modules/getndelim2 (Makefile.am): Likewise.
18428         * modules/getopt (Makefile.am): Likewise.
18429         * modules/getpagesize (Makefile.am): Likewise.
18430         * modules/getpass-gnu (Makefile.am): Likewise.
18431         * modules/getpass (Makefile.am): Likewise.
18432         * modules/getsubopt (Makefile.am): Likewise.
18433         * modules/gettime (Makefile.am): Likewise.
18434         * modules/gettimeofday (Makefile.am): Likewise.
18435         * modules/getugroups (Makefile.am): Likewise.
18436         * modules/getusershell (Makefile.am): Likewise.
18437         * modules/glob (Makefile.am): Likewise.
18438         * modules/group-member (Makefile.am): Likewise.
18439         * modules/hard-locale (Makefile.am): Likewise.
18440         * modules/hash (Makefile.am): Likewise.
18441         * modules/hmac-md5 (Makefile.am): Likewise.
18442         * modules/hmac-sha1 (Makefile.am): Likewise.
18443         * modules/human (Makefile.am): Likewise.
18444         * modules/idcache (Makefile.am): Likewise.
18445         * modules/imaxabs (Makefile.am): Likewise.
18446         * modules/imaxdiv (Makefile.am): Likewise.
18447         * modules/inet_ntop (Makefile.am): Likewise.
18448         * modules/inet_pton (Makefile.am): Likewise.
18449         * modules/intprops (Makefile.am): Likewise.
18450         * modules/inttostr (Makefile.am): Likewise.
18451         * modules/inttypes (Makefile.am): Likewise.
18452         * modules/isapipe (Makefile.am): Likewise.
18453         * modules/javaversion (Makefile.am): Likewise.
18454         * modules/lchmod (Makefile.am): Likewise.
18455         * modules/lchown (Makefile.am): Likewise.
18456         * modules/localcharset (Makefile.am): Likewise.
18457         * modules/long-options (Makefile.am): Likewise.
18458         * modules/lstat (Makefile.am): Likewise.
18459         * modules/malloc (Makefile.am): Likewise.
18460         * modules/mathl (Makefile.am): Likewise.
18461         * modules/mbchar (Makefile.am): Likewise.
18462         * modules/md2 (Makefile.am): Likewise.
18463         * modules/md4 (Makefile.am): Likewise.
18464         * modules/md5 (Makefile.am): Likewise.
18465         * modules/memcasecmp (Makefile.am): Likewise.
18466         * modules/memchr (Makefile.am): Likewise.
18467         * modules/memcmp (Makefile.am): Likewise.
18468         * modules/memcoll (Makefile.am): Likewise.
18469         * modules/memcpy (Makefile.am): Likewise.
18470         * modules/memmem (Makefile.am): Likewise.
18471         * modules/memmove (Makefile.am): Likewise.
18472         * modules/mempcpy (Makefile.am): Likewise.
18473         * modules/memrchr (Makefile.am): Likewise.
18474         * modules/memset (Makefile.am): Likewise.
18475         * modules/memxor (Makefile.am): Likewise.
18476         * modules/mkancesdirs (Makefile.am): Likewise.
18477         * modules/mkdir-p (Makefile.am): Likewise.
18478         * modules/mkdir (Makefile.am): Likewise.
18479         * modules/mkdtemp (Makefile.am): Likewise.
18480         * modules/mkstemp (Makefile.am): Likewise.
18481         * modules/mktime (Makefile.am): Likewise.
18482         * modules/modechange (Makefile.am): Likewise.
18483         * modules/mountlist (Makefile.am): Likewise.
18484         * modules/nanosleep (Makefile.am): Likewise.
18485         * modules/obstack (Makefile.am): Likewise.
18486         * modules/openat (Makefile.am): Likewise.
18487         * modules/pagealign_alloc (Makefile.am): Likewise.
18488         * modules/pathmax (Makefile.am): Likewise.
18489         * modules/physmem (Makefile.am): Likewise.
18490         * modules/poll (Makefile.am): Likewise.
18491         * modules/posixtm (Makefile.am): Likewise.
18492         * modules/posixver (Makefile.am): Likewise.
18493         * modules/putenv (Makefile.am): Likewise.
18494         * modules/quote (Makefile.am): Likewise.
18495         * modules/quotearg (Makefile.am): Likewise.
18496         * modules/raise (Makefile.am): Likewise.
18497         * modules/read-file (Makefile.am): Likewise.
18498         * modules/readline (Makefile.am): Likewise.
18499         * modules/readlink (Makefile.am): Likewise.
18500         * modules/readtokens (Makefile.am): Likewise.
18501         * modules/readutmp (Makefile.am): Likewise.
18502         * modules/realloc (Makefile.am): Likewise.
18503         * modules/regex (Makefile.am): Likewise.
18504         * modules/rename-dest-slash (Makefile.am): Likewise.
18505         * modules/rename (Makefile.am): Likewise.
18506         * modules/rijndael (Makefile.am): Likewise.
18507         * modules/rmdir (Makefile.am): Likewise.
18508         * modules/rpmatch (Makefile.am): Likewise.
18509         * modules/safe-read (Makefile.am): Likewise.
18510         * modules/safe-write (Makefile.am): Likewise.
18511         * modules/same-inode (Makefile.am): Likewise.
18512         * modules/same (Makefile.am): Likewise.
18513         * modules/save-cwd (Makefile.am): Likewise.
18514         * modules/savedir (Makefile.am): Likewise.
18515         * modules/setenv (Makefile.am): Likewise.
18516         * modules/settime (Makefile.am): Likewise.
18517         * modules/sha1 (Makefile.am): Likewise.
18518         * modules/sig2str (Makefile.am): Likewise.
18519         * modules/snprintf (Makefile.am): Likewise.
18520         * modules/stat-macros (Makefile.am): Likewise.
18521         * modules/stat-time (Makefile.am): Likewise.
18522         * modules/stdbool (Makefile.am): Likewise.
18523         * modules/stdint (Makefile.am): Likewise.
18524         * modules/stdlib-safer (Makefile.am): Likewise.
18525         * modules/stpcpy (Makefile.am): Likewise.
18526         * modules/stpncpy (Makefile.am): Likewise.
18527         * modules/strcase (Makefile.am): Likewise.
18528         * modules/strcasestr (Makefile.am): Likewise.
18529         * modules/strchrnul (Makefile.am): Likewise.
18530         * modules/strcspn (Makefile.am): Likewise.
18531         * modules/strdup (Makefile.am): Likewise.
18532         * modules/strerror (Makefile.am): Likewise.
18533         * modules/strftime (Makefile.am): Likewise.
18534         * modules/strndup (Makefile.am): Likewise.
18535         * modules/strnlen (Makefile.am): Likewise.
18536         * modules/strpbrk (Makefile.am): Likewise.
18537         * modules/strsep (Makefile.am): Likewise.
18538         * modules/strstr (Makefile.am): Likewise.
18539         * modules/strtod (Makefile.am): Likewise.
18540         * modules/strtoimax (Makefile.am): Likewise.
18541         * modules/strtok_r (Makefile.am): Likewise.
18542         * modules/strtol (Makefile.am): Likewise.
18543         * modules/strtoll (Makefile.am): Likewise.
18544         * modules/strtoul (Makefile.am): Likewise.
18545         * modules/strtoull (Makefile.am): Likewise.
18546         * modules/strtoumax (Makefile.am): Likewise.
18547         * modules/strverscmp (Makefile.am): Likewise.
18548         * modules/sys_socket (Makefile.am): Likewise.
18549         * modules/sys_stat (Makefile.am): Likewise.
18550         * modules/sysexits (Makefile.am): Likewise.
18551         * modules/time_r (Makefile.am): Likewise.
18552         * modules/timegm (Makefile.am): Likewise.
18553         * modules/timespec (Makefile.am): Likewise.
18554         * modules/tmpfile-safer (Makefile.am): Likewise.
18555         * modules/trim (Makefile.am): Likewise.
18556         * modules/unistd-safer (Makefile.am): Likewise.
18557         * modules/unlinkdir (Makefile.am): Likewise.
18558         * modules/unlocked-io (Makefile.am): Likewise.
18559         * modules/userspec (Makefile.am): Likewise.
18560         * modules/utime (Makefile.am): Likewise.
18561         * modules/utimecmp (Makefile.am): Likewise.
18562         * modules/utimens (Makefile.am): Likewise.
18563         * modules/vasnprintf (Makefile.am): Likewise.
18564         * modules/vasprintf (Makefile.am): Likewise.
18565         * modules/vsnprintf (Makefile.am): Likewise.
18566         * modules/xalloc (Makefile.am): Likewise.
18567         * modules/xgetcwd (Makefile.am): Likewise.
18568         * modules/xnanosleep (Makefile.am): Likewise.
18569         * modules/xreadlink (Makefile.am): Likewise.
18570         * modules/xstrtod (Makefile.am): Likewise.
18571         * modules/xstrtol (Makefile.am): Likewise.
18572         * modules/xstrtold (Makefile.am): Likewise.
18573         * modules/yesno (Makefile.am): Likewise.
18574         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
18575
18576 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
18577
18578         * modules/error (Makefile.am): Distribute files through
18579         EXTRA_DIST, not lib_SOURCES.
18580
18581 2006-10-12  Eric Blake  <ebb9@byu.net>
18582
18583         * modules/error (Makefile.am): Distribute files in /lib.
18584         * modules/obstack (Makefile.am): Likewise.
18585
18586 2006-10-12  Bruno Haible  <bruno@clisp.org>
18587
18588         * modules/acl (Makefile.am): Distribute all files in lib/ through
18589         EXTRA_DIST.
18590         * modules/arcfour (Makefile.am): Likewise.
18591         * modules/arctwo (Makefile.am): Likewise.
18592         * modules/argmatch (Makefile.am): Likewise.
18593         * modules/argz (Makefile.am): Likewise.
18594         * modules/atexit (Makefile.am): Likewise.
18595         * modules/backupfile (Makefile.am): Likewise.
18596         * modules/c-strtod (Makefile.am): Likewise.
18597         * modules/c-strtold (Makefile.am): Likewise.
18598         * modules/calloc (Makefile.am): Likewise.
18599         * modules/canon-host (Makefile.am): Likewise.
18600         * modules/canonicalize (Makefile.am): Likewise.
18601         * modules/chdir-long (Makefile.am): Likewise.
18602         * modules/chdir-safer (Makefile.am): Likewise.
18603         * modules/check-version (Makefile.am): Likewise.
18604         * modules/chown (Makefile.am): Likewise.
18605         * modules/cloexec (Makefile.am): Likewise.
18606         * modules/close-stream (Makefile.am): Likewise.
18607         * modules/closeout (Makefile.am): Likewise.
18608         * modules/crc (Makefile.am): Likewise.
18609         * modules/cycle-check (Makefile.am): Likewise.
18610         * modules/des (Makefile.am): Likewise.
18611         * modules/dirfd (Makefile.am): Likewise.
18612         * modules/dirname (Makefile.am): Likewise.
18613         * modules/dup2 (Makefile.am): Likewise.
18614         * modules/euidaccess (Makefile.am): Likewise.
18615         * modules/exclude (Makefile.am): Likewise.
18616         * modules/exitfail (Makefile.am): Likewise.
18617         * modules/fcntl-safer (Makefile.am): Likewise.
18618         * modules/file-type (Makefile.am): Likewise.
18619         * modules/fileblocks (Makefile.am): Likewise.
18620         * modules/filemode (Makefile.am): Likewise.
18621         * modules/filenamecat (Makefile.am): Likewise.
18622         * modules/fnmatch (Makefile.am): Likewise.
18623         * modules/fopen-safer (Makefile.am): Likewise.
18624         * modules/fpending (Makefile.am): Likewise.
18625         * modules/fprintftime (Makefile.am): Likewise.
18626         * modules/free (Makefile.am): Likewise.
18627         * modules/fsusage (Makefile.am): Likewise.
18628         * modules/ftruncate (Makefile.am): Likewise.
18629         * modules/fts (Makefile.am): Likewise.
18630         * modules/gc (Makefile.am): Likewise.
18631         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
18632         * modules/getaddrinfo (Makefile.am): Likewise.
18633         * modules/getcwd (Makefile.am): Likewise.
18634         * modules/getdelim (Makefile.am): Likewise.
18635         * modules/getdomainname (Makefile.am): Likewise.
18636         * modules/getgroups (Makefile.am): Likewise.
18637         * modules/gethostname (Makefile.am): Likewise.
18638         * modules/gethrxtime (Makefile.am): Likewise.
18639         * modules/getline (Makefile.am): Likewise.
18640         * modules/getloadavg (Makefile.am): Likewise.
18641         * modules/getlogin_r (Makefile.am): Likewise.
18642         * modules/getopt (Makefile.am): Likewise.
18643         * modules/getpass (Makefile.am): Likewise.
18644         * modules/getpass-gnu (Makefile.am): Likewise.
18645         * modules/getsubopt (Makefile.am): Likewise.
18646         * modules/gettime (Makefile.am): Likewise.
18647         * modules/gettimeofday (Makefile.am): Likewise.
18648         * modules/getugroups (Makefile.am): Likewise.
18649         * modules/getusershell (Makefile.am): Likewise.
18650         * modules/glob (Makefile.am): Likewise.
18651         * modules/group-member (Makefile.am): Likewise.
18652         * modules/hard-locale (Makefile.am): Likewise.
18653         * modules/hash (Makefile.am): Likewise.
18654         * modules/hmac-md5 (Makefile.am): Likewise.
18655         * modules/hmac-sha1 (Makefile.am): Likewise.
18656         * modules/human (Makefile.am): Likewise.
18657         * modules/idcache (Makefile.am): Likewise.
18658         * modules/imaxabs (Makefile.am): Likewise.
18659         * modules/imaxdiv (Makefile.am): Likewise.
18660         * modules/inet_ntop (Makefile.am): Likewise.
18661         * modules/inet_pton (Makefile.am): Likewise.
18662         * modules/inttostr (Makefile.am): Likewise.
18663         * modules/isapipe (Makefile.am): Likewise.
18664         * modules/lchown (Makefile.am): Likewise.
18665         * modules/long-options (Makefile.am): Likewise.
18666         * modules/lstat (Makefile.am): Likewise.
18667         * modules/malloc (Makefile.am): Likewise.
18668         * modules/mathl (Makefile.am): Likewise.
18669         * modules/mbchar (Makefile.am): Likewise.
18670         * modules/md2 (Makefile.am): Likewise.
18671         * modules/md4 (Makefile.am): Likewise.
18672         * modules/md5 (Makefile.am): Likewise.
18673         * modules/memcasecmp (Makefile.am): Likewise.
18674         * modules/memchr (Makefile.am): Likewise.
18675         * modules/memcmp (Makefile.am): Likewise.
18676         * modules/memcoll (Makefile.am): Likewise.
18677         * modules/memcpy (Makefile.am): Likewise.
18678         * modules/memmem (Makefile.am): Likewise.
18679         * modules/memmove (Makefile.am): Likewise.
18680         * modules/mempcpy (Makefile.am): Likewise.
18681         * modules/memrchr (Makefile.am): Likewise.
18682         * modules/memset (Makefile.am): Likewise.
18683         * modules/memxor (Makefile.am): Likewise.
18684         * modules/mkancesdirs (Makefile.am): Likewise.
18685         * modules/mkdir (Makefile.am): Likewise.
18686         * modules/mkdir-p (Makefile.am): Likewise.
18687         * modules/mkdtemp (Makefile.am): Likewise.
18688         * modules/mkstemp (Makefile.am): Likewise.
18689         * modules/mktime (Makefile.am): Likewise.
18690         * modules/modechange (Makefile.am): Likewise.
18691         * modules/mountlist (Makefile.am): Likewise.
18692         * modules/nanosleep (Makefile.am): Likewise.
18693         * modules/openat (Makefile.am): Likewise.
18694         * modules/pagealign_alloc (Makefile.am): Likewise.
18695         * modules/physmem (Makefile.am): Likewise.
18696         * modules/poll (Makefile.am): Likewise.
18697         * modules/posixtm (Makefile.am): Likewise.
18698         * modules/posixver (Makefile.am): Likewise.
18699         * modules/putenv (Makefile.am): Likewise.
18700         * modules/quote (Makefile.am): Likewise.
18701         * modules/quotearg (Makefile.am): Likewise.
18702         * modules/raise (Makefile.am): Likewise.
18703         * modules/read-file (Makefile.am): Likewise.
18704         * modules/readline (Makefile.am): Likewise.
18705         * modules/readlink (Makefile.am): Likewise.
18706         * modules/readtokens (Makefile.am): Likewise.
18707         * modules/readutmp (Makefile.am): Likewise.
18708         * modules/realloc (Makefile.am): Likewise.
18709         * modules/regex (Makefile.am): Likewise.
18710         * modules/rename (Makefile.am): Likewise.
18711         * modules/rename-dest-slash (Makefile.am): Likewise.
18712         * modules/rijndael (Makefile.am): Likewise.
18713         * modules/rmdir (Makefile.am): Likewise.
18714         * modules/rpmatch (Makefile.am): Likewise.
18715         * modules/safe-read (Makefile.am): Likewise.
18716         * modules/safe-write (Makefile.am): Likewise.
18717         * modules/same (Makefile.am): Likewise.
18718         * modules/save-cwd (Makefile.am): Likewise.
18719         * modules/savedir (Makefile.am): Likewise.
18720         * modules/setenv (Makefile.am): Likewise.
18721         * modules/settime (Makefile.am): Likewise.
18722         * modules/sha1 (Makefile.am): Likewise.
18723         * modules/sig2str (Makefile.am): Likewise.
18724         * modules/snprintf (Makefile.am): Likewise.
18725         * modules/stdlib-safer (Makefile.am): Likewise.
18726         * modules/stpcpy (Makefile.am): Likewise.
18727         * modules/stpncpy (Makefile.am): Likewise.
18728         * modules/strcase (Makefile.am): Likewise.
18729         * modules/strcasestr (Makefile.am): Likewise.
18730         * modules/strchrnul (Makefile.am): Likewise.
18731         * modules/strcspn (Makefile.am): Likewise.
18732         * modules/strdup (Makefile.am): Likewise.
18733         * modules/strerror (Makefile.am): Likewise.
18734         * modules/strftime (Makefile.am): Likewise.
18735         * modules/strndup (Makefile.am): Likewise.
18736         * modules/strnlen (Makefile.am): Likewise.
18737         * modules/strpbrk (Makefile.am): Likewise.
18738         * modules/strsep (Makefile.am): Likewise.
18739         * modules/strstr (Makefile.am): Likewise.
18740         * modules/strtod (Makefile.am): Likewise.
18741         * modules/strtoimax (Makefile.am): Likewise.
18742         * modules/strtok_r (Makefile.am): Likewise.
18743         * modules/strtol (Makefile.am): Likewise.
18744         * modules/strtoll (Makefile.am): Likewise.
18745         * modules/strtoul (Makefile.am): Likewise.
18746         * modules/strtoull (Makefile.am): Likewise.
18747         * modules/strtoumax (Makefile.am): Likewise.
18748         * modules/strverscmp (Makefile.am): Likewise.
18749         * modules/time_r (Makefile.am): Likewise.
18750         * modules/timegm (Makefile.am): Likewise.
18751         * modules/tmpfile-safer (Makefile.am): Likewise.
18752         * modules/unistd-safer (Makefile.am): Likewise.
18753         * modules/unlinkdir (Makefile.am): Likewise.
18754         * modules/userspec (Makefile.am): Likewise.
18755         * modules/utime (Makefile.am): Likewise.
18756         * modules/utimecmp (Makefile.am): Likewise.
18757         * modules/utimens (Makefile.am): Likewise.
18758         * modules/vasnprintf (Makefile.am): Likewise.
18759         * modules/vasprintf (Makefile.am): Likewise.
18760         * modules/vsnprintf (Makefile.am): Likewise.
18761         * modules/xalloc (Makefile.am): Likewise.
18762         * modules/xgetcwd (Makefile.am): Likewise.
18763         * modules/xnanosleep (Makefile.am): Likewise.
18764         * modules/xreadlink (Makefile.am): Likewise.
18765         * modules/xstrtod (Makefile.am): Likewise.
18766         * modules/xstrtol (Makefile.am): Likewise.
18767         * modules/xstrtold (Makefile.am): Likewise.
18768         * modules/yesno (Makefile.am): Likewise.
18769
18770 2006-10-12  Jim Meyering  <jim@meyering.net>
18771
18772         * m4/getloadavg.m4: Revert the change below.
18773
18774         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
18775         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
18776         fail with a symlink, which is what coreutils' ./bootstrap now
18777         creates by default.
18778
18779 2006-10-12  Bruno Haible  <bruno@clisp.org>
18780
18781         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
18782         mingw.
18783         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
18784         MSVC and mingw explicitly.
18785
18786 2006-10-11  Simon Josefsson  <jas@extundo.com>
18787             Bruno Haible  <bruno@clisp.org>
18788
18789         Add support for multiple gnulib-tool invocations in the scope of a
18790         single configure.ac file.
18791         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
18792         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
18793         with the same contents as the _LIBADD variable.
18794         (func_emit_initmacro_start, func_emit_initmacro_end,
18795         func_emit_initmacro_done): New functions.
18796         (func_import, func_create_testdir): Invoke them. Allow the identifiers
18797         gl_LIBOBJS and gl_LTLIBOBJS.
18798
18799 2006-10-11  Bruno Haible  <bruno@clisp.org>
18800
18801         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
18802         (func_create_testdir): Don't create po/Makefile.am, don't invoke
18803         autoreconf. Instead, invoke autopoint explicitly but move back the
18804         *.m4 files from gnulib.
18805
18806 2006-10-11  Bruno Haible  <bruno@clisp.org>
18807
18808         * gnulib-tool (func_usage): Make module names after --create-testdir
18809         optional.
18810         (func_create_testdir): If no module was specified, use nearly all
18811         modules.
18812
18813 2006-10-12  Jim Meyering  <jim@meyering.net>
18814
18815         Big performance improvement for fts-based tools that use FTS_NOSTAT.
18816         Avoid spurious inode-mismatch problems on non-POSIX file systems.
18817         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
18818         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
18819         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
18820         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
18821         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
18822         (fts_set_stat_required): New function.
18823         (fts_open): Defer the calls to fts_stat, if possible or requested.
18824         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
18825         into fts_stat itself.
18826         (fts_read): Perform any required (deferred) fts_stat call.
18827         (fts_build): Likewise, for the directory we're about to open and read.
18828         In the readdir loop, carefully decide whether each entry will require
18829         an eventual call to fts_stat, using dirent.d_type info if available.
18830         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
18831         a command line argument into this function.  Update all callers.
18832         Map a return value of FTS_DOT to FTS_D for a command line argument.
18833         * modules/fts (Depends-on): Add d-type.  Alphabetize.
18834         Thanks to Miklos Szeredi for his tenacity and for the initial
18835         bug report about "find" failing on a FUSE-based file system.
18836
18837         * lib/fts.c (fts_open): Use consistent indentation.
18838
18839 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
18840
18841         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
18842         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
18843         reported by Jim Meyering.  All uses of cache variables renamed
18844         to match Autoconf's.
18845         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
18846         the other one.
18847
18848         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
18849         Fix misspelling in diagnostic.
18850
18851 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
18852
18853         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
18854         defined.  Problem reported by Matthew Woehlke.
18855
18856         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
18857         Add support for Tandem NonStop R series.
18858         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
18859         Use new macro.
18860
18861         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
18862         (has_trailing_slash): Omit size arg; all callers changed.
18863         Omit 'inline', since it doesn't help performance and we'd
18864         need to configure it.
18865         Don't count //, ///, etc. as having a trailing slash.
18866         As a side effect, this removes a C99ism reported by Matthew Woehlke.
18867         (rpl_rename_dest_slash): On failure, use rename's errno rather
18868         than (in some cases) an incorrect or junk errno.
18869         Simplify code by removing need to compute length; this does
18870         cause it to make two passes instead of one over the file name,
18871         but it's worth it.
18872
18873         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
18874         change, since Autoconf's version may no longer be appropriate now
18875         that we are using CVS Autoconf's version.  Add support for Tandem.
18876
18877 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
18878             Bruno Haible  <bruno@clisp.org>
18879
18880         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
18881         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
18882         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
18883         gl_AC_TYPE_LONG_LONG.
18884
18885         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
18886         instead of HAVE_LONG_LONG.
18887         * lib/printf-args.c (printf_fetchargs): Likewise.
18888         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
18889         * lib/vasnprintf.c (VASNPRINTF): Likewise.
18890         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
18891         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
18892         gl_AC_TYPE_LONG_LONG.
18893
18894 2006-10-11  Bruno Haible  <bruno@clisp.org>
18895
18896         * m4/longlong.m4: Add comments.
18897         * m4/ulonglong.m4: Likewise.
18898
18899 2006-10-10  Bruno Haible  <bruno@clisp.org>
18900
18901         Make it possible to #define stpcpy, strdup to aliases.
18902         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
18903         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
18904
18905 2006-10-10  Bruno Haible  <bruno@clisp.org>
18906
18907         Make it possible to #define gcd to an alias.
18908         * lib/gcd.c: Include config.h.
18909
18910 2006-10-10  Bruno Haible  <bruno@clisp.org>
18911
18912         Make it possible to #define c_isascii to an alias.
18913         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
18914         defined. Undefine the macros before defining them, to avoid gcc
18915         warnings.
18916         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
18917         define NO_C_CTYPE_MACROS early.
18918
18919 2006-10-10  Bruno Haible  <bruno@clisp.org>
18920
18921         Make it possible to #define set_program_name to an alias.
18922         * lib/progname.c: Don't undefine set_program_name; instead, undefine
18923         ENABLE_RELOCATABLE early.
18924
18925 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18926
18927         Port to Tandem NSK OSS, which has 64-bit signed int but at most
18928         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
18929         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
18930         More generally, don't assume that 64-bit signed int is available
18931         if unsigned int is, and vice versa.
18932         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
18933         unsigned symbols, not on their signed counterparts.
18934         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
18935         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
18936         (UINT64_C, UINTMAX_C):
18937         Likewise.
18938         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
18939         unsigned counterparts.
18940         (Have_long_long, Unsigned): New macros.
18941         (Int): Renamed from INT.
18942         (strtoimax): Use the new macros.
18943         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
18944         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
18945         * modules/inttypes (inttypes.h): Substitute
18946         HAVE_UNSIGNED_LONG_LONG_INT.
18947         * modules/stdint (stdint.h): Likewise.
18948         (Files): Add m4/ulonglong.m4.
18949
18950 2006-10-10  Bruno Haible  <bruno@clisp.org>
18951
18952         Fix a gcc -Wshadow warning.
18953         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
18954         to 'bucket'.
18955         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
18956         gl_linked_indexof_from_to): Likewise.
18957         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
18958         Likewise.
18959         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
18960         Likewise.
18961         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
18962         Reported by Eric Blake.
18963
18964 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
18965
18966         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
18967         for NetBSD.  Problem reported by Bruno Haible.
18968
18969 2006-10-09  Jim Meyering  <jim@meyering.net>
18970
18971         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
18972         Patch from Bruno Haible.
18973
18974 2006-10-09  Jim Meyering  <jim@meyering.net>
18975
18976         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
18977         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
18978         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
18979
18980 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18981
18982         Don't include <config.h> twice; this doesn't work in some cases,
18983         e.g., when config.h has "#define intmax_t long long int" and
18984         we include <config.h>, <inttypes.h>, <config.h> in that order.
18985         Problem reported by Matthew Woehlke in:
18986         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
18987         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
18988         * lib/fts-cycle.c: Don't include config.h.
18989         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
18990         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
18991         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
18992         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
18993         inttypes.h.
18994         * lib/xstrtoumax.c: Likewise.
18995         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
18996         __strtol and the like, so that this module is more like its siblings.
18997         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
18998         Remove; no longer needed now that we assume gnulib inttypes.h.
18999
19000 2006-10-08  Bruno Haible  <bruno@clisp.org>
19001
19002         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
19003         option.
19004
19005 2006-10-07  Jim Meyering  <jim@meyering.net>
19006
19007         * modules/inttypes (inttypes.h): Revert what seems to have been
19008         an inadvertent part of today's change: use "|", not "/" in the
19009         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
19010
19011 2006-10-07  Bruno Haible  <bruno@clisp.org>
19012
19013         * modules/sublist: New file.
19014
19015 2006-10-07  Bruno Haible  <bruno@clisp.org>
19016
19017         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
19018         * modules/argz (argz.h): Likewise.
19019         * modules/arpa_inet (arpa/inet.h): Likewise.
19020         * modules/byteswap (byteswap.h): Likewise.
19021         * modules/configmake (configmake.h): Likewise.
19022         * modules/fcntl (fcntl.h): Likewise.
19023         * modules/fnmatch (fnmatch.h): Likewise.
19024         * modules/getopt (getopt.h): Likewise.
19025         * modules/glob (glob.h): Likewise.
19026         * modules/inttypes (inttypes.h): Likewise.
19027         * modules/netinet_in (netinet/in.h): Likewise.
19028         * modules/poll (poll.h): Likewise.
19029         * modules/stdbool (stdbool.h): Likewise.
19030         * modules/stdint (stdint.h): Likewise.
19031         * modules/sys_select (sys/select.h): Likewise.
19032         * modules/sys_socket (sys/socket.h): Likewise.
19033         * modules/sys_stat (sys/stat.h): Likewise.
19034         * modules/sysexits (sysexits.h): Likewise.
19035         * modules/unistd (unistd.h): Likewise.
19036         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
19037         Add a "DO NOT EDIT" comment to the generated file.
19038         (func_import): Likewise for gnulib-comp.m4.
19039
19040 2006-10-07  Bruno Haible  <bruno@clisp.org>
19041
19042         * lib/gl_sublist.h: New file.
19043         * lib/gl_sublist.c: New file.
19044
19045 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
19046
19047         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
19048         name (relative to the original working directory) and the file
19049         name component (relative to the temporary working directory).  All
19050         callers changed.
19051         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
19052         * lib/mkdir-p.c (make_dir_parents): Likewise.
19053         * lib/mkdir-p.h (make_dir_parents): Likewise.
19054
19055 2006-10-06  Eric Blake  <ebb9@byu.net>
19056
19057         Define several macros for use by the clean-temp module.
19058         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
19059         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
19060         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
19061
19062         * lib/clean-temp.h (close_stream_temp): New declaration.
19063         * lib/clean-temp.c (includes): Pull in headers according to what
19064         other modules are in use.
19065         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
19066
19067 2006-10-06  Bruno Haible  <bruno@clisp.org>
19068
19069         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
19070         instead of fopen, fwriteerror.
19071
19072 2006-10-06  Bruno Haible  <bruno@clisp.org>
19073
19074         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
19075         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
19076         int.
19077         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
19078         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
19079         Return an error indicator.
19080         Suggested by Eric Blake.
19081
19082 2006-10-06  Bruno Haible  <bruno@clisp.org>
19083
19084         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
19085         Reported by Eric Blake.
19086
19087 2006-10-06  Bruno Haible  <bruno@clisp.org>
19088
19089         * modules/closeout (Description): Mention stderr too.
19090
19091 2006-10-06  Bruno Haible  <bruno@clisp.org>
19092         and Paul Eggert  <eggert@cs.ucla.edu>
19093
19094         * lib/closeout.c (close_stdout): Also close stderr.
19095         * lib/closeout.h: Update comment.
19096
19097 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
19098
19099         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
19100         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
19101         * lib/dirchownmod.c: Include lchown.h.
19102         * lib/lchown.c: Don't include files that lchown.h now includes.
19103         Don't declare chown, since lchown.h now does that.
19104         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
19105         (lchown): Define to rpl_chown if lchown is declared but
19106         does not exist.  Declare using a prototype if lchown is not
19107         declared.  Add a copyright notice.
19108         * lib/mkstemp.h: Include <unistd.h>.
19109         * lib/openat.c: Include lchown.h.
19110
19111         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
19112         we now test for that separately.
19113         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
19114         rather than O_NOFOLLOW, when testing whether it's possible to
19115         avoid a race condition reliably.
19116         * lib/savewd.c (savewd_chdir): Likewise.
19117
19118         Remove macros that are no longer needed now that stdint.h is
19119         reliable.
19120         * lib/fsusage.c (UINTMAX_MAX): Remove.
19121         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
19122         * lib/utimecmp.c (SIZE_MAX): Remove.
19123
19124         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
19125
19126         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
19127         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
19128         O_NOATIME works.
19129
19130 2006-10-05  Bruno Haible  <bruno@clisp.org>
19131
19132         * lib/gl_list.h (gl_sortedlist_search_from_to,
19133         gl_sortedlist_indexof_from_to): New declarations.
19134         (gl_list_implementation): New fields sortedlist_search_from_to,
19135         sortedlist_indexof_from_to.
19136         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
19137         inline functions.
19138         * lib/gl_list.c (gl_sortedlist_search_from_to,
19139         gl_sortedlist_indexof_from_to): New functions.
19140         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
19141         function.
19142         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
19143         (gl_array_sortedlist_search_from_to): New function.
19144         (gl_array_list_implementation): Update.
19145         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
19146         function.
19147         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
19148         (gl_carray_sortedlist_search_from_to): New function.
19149         (gl_carray_list_implementation): Update.
19150         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
19151         gl_linked_sortedlist_indexof_from_to): New functions.
19152         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
19153         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
19154         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
19155         gl_tree_sortedlist_indexof_from_to): New functions.
19156         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
19157         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
19158         Update.
19159         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
19160         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
19161         Update.
19162
19163 2006-10-05  Bruno Haible  <bruno@clisp.org>
19164
19165         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
19166         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
19167         (struct gl_list_implementation): Add fields search_from_to,
19168         indexof_from_to. Remove fields search, indexof.
19169         (gl_list_search): Use the search_from_to method.
19170         (gl_list_search_from, gl_list_search_from_to): New functions.
19171         (gl_list_indexof): Use the indexof_from_to method.
19172         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
19173         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
19174         (gl_list_search_from, gl_list_search_from_to): New functions.
19175         (gl_list_indexof): Use the indexof_from_to method.
19176         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
19177         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
19178         gl_array_indexof. Add start_index, end_index arguments.
19179         (gl_array_search_from_to): Renamed from gl_array_search. Add
19180         start_index, end_index arguments.
19181         (gl_array_remove, gl_array_list_implementation): Update.
19182         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
19183         gl_carray_indexof. Add start_index, end_index arguments.
19184         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
19185         start_index, end_index arguments.
19186         (gl_carray_remove, gl_carray_list_implementation): Update.
19187         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
19188         gl_linked_search. Add start_index, end_index arguments.
19189         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
19190         start_index, end_index arguments.
19191         (gl_linked_remove): Update.
19192         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
19193         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
19194         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
19195         field to 'size_t'.
19196         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
19197         gl_tree_search. Add start_index, end_index arguments.
19198         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
19199         start_index, end_index arguments.
19200         (gl_tree_remove): Update.
19201         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
19202         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
19203         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
19204         function.
19205         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
19206         gl_tree_search. Add start_index, end_index arguments.
19207         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
19208         start_index, end_index arguments.
19209         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
19210         Update.
19211         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
19212
19213 2006-10-05  Bruno Haible  <bruno@clisp.org>
19214
19215         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
19216
19217         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
19218         fwriteerror_temp): New declarations.
19219         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
19220         (descriptors): New variable.
19221         (cleanup): First, close the descriptors.
19222         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
19223         fclose_temp, fwriteerror_temp): New functions.
19224
19225 2006-10-04  Jim Meyering  <jim@meyering.net>
19226
19227         * lib/fts.c (fts_open): Tiny comment change.
19228
19229 2006-10-04  Bruno Haible  <bruno@clisp.org>
19230
19231         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
19232         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
19233         gl_LOCK_BODY.
19234         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
19235         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
19236         gl_LOCK_EARLY_BODY.
19237         (gl_LOCK): Require gl_LOCK_BODY.
19238
19239 2006-10-04  Bruno Haible  <bruno@clisp.org>
19240
19241         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
19242         (gl_oset_search_atleast): New declaration.
19243         (struct gl_oset_implementation): Add field 'search_atleast'.
19244         (gl_oset_search_atleast): New inline function.
19245         * lib/gl_oset.c (gl_oset_search_atleast): New function.
19246         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
19247         (gl_array_oset_implementation): Update.
19248         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
19249         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
19250         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
19251
19252 2006-10-04  Bruno Haible  <bruno@clisp.org>
19253
19254         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
19255
19256 2006-10-03  Bruno Haible  <bruno@clisp.org>
19257
19258         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
19259         from gl_avltreehash_list_implementation.
19260
19261 2006-10-03  Bruno Haible  <bruno@clisp.org>
19262
19263         * lib/gl_oset.c (gl_oset_add): Fix return type.
19264
19265 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
19266
19267         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
19268
19269 2006-10-02  Eric Blake  <ebb9@byu.net>
19270
19271         * modules/strnlen (Depends-on): Add extensions.
19272
19273 2006-10-02  Eric Blake  <ebb9@byu.net>
19274
19275         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
19276         definition in 2.60+.
19277
19278 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
19279
19280         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
19281         checks.
19282
19283 2006-10-02  Bruno Haible  <bruno@clisp.org>
19284
19285         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
19286         to the AUTOMAKE_OPTIONS.
19287         Reported by Jim Meyering.
19288
19289 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
19290
19291         Work around bug in Solaris 10 /proc file system:
19292         /proc/self/fd/NNN/.. isn't the parent directory of
19293         the directory whose file descriptor is NNN.  This needs to
19294         be worked around at run time, not compile time, since a
19295         program might be built on Solaris 8, where things work, and
19296         run on Solaris 10.
19297         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
19298         to use the following interface instead:
19299         (OPENAT_BUFFER_SIZE): New macro.
19300         (openat_proc_name): New function.
19301         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
19302         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
19303         Likewise.
19304         * lib/openat-proc.c: New file.
19305         * modules/openat (Files): Add lib/openat-proc.c.
19306         (Depends-on): Add same-inode, stdbool.
19307         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
19308
19309 2006-09-29  Bruno Haible  <bruno@clisp.org>
19310
19311         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
19312         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
19313         argument. Set stdout_closed before testing for ferror, not after.
19314         (fwriteerror, fwriteerror_no_ebadf): New functions.
19315
19316 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19317
19318         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
19319
19320 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
19321
19322         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
19323         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
19324
19325 2006-09-28  Jim Meyering  <jim@meyering.net>
19326
19327         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
19328         Include <unistd.h>.
19329
19330 2006-09-28  Bruno Haible  <bruno@clisp.org>
19331
19332         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
19333         * modules/linkedhash-list (Depends-on): Likewise.
19334         * modules/rbtreehash-list (Depends-on): Likewise.
19335
19336 2006-09-28  Bruno Haible  <bruno@clisp.org>
19337
19338         * lib/strndup.h: Simplify the redefinition of strndup.
19339         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
19340         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
19341
19342 2006-09-28  Bruno Haible  <bruno@clisp.org>
19343
19344         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
19345         * lib/gl_linkedhash_list.c: Likewise.
19346         * lib/gl_rbtreehash_list.c: Likewise.
19347
19348 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
19349
19350         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
19351         getaddrinfo.
19352
19353         * lib/__fpending.h: Don't include <stdio_ext.h> unless
19354         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
19355         it causes <stdio_ext.h> to cause a compile-time error.
19356         Problem reported by Nelson H. F. Beebe.
19357         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
19358         of HAVE_DECL___PENDING.
19359
19360         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
19361         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
19362         declaration.
19363
19364 2006-09-27  Jim Meyering  <jim@meyering.net>
19365
19366         This file could end up with a definition for a function
19367         named __strndup, rather than rpl_strndup on a system with
19368         incomplete weak_alias support.
19369         * lib/strndup.c (strndup): Rename from __strndup.
19370         Remove #defines that used to map __strndup to strndup.
19371         Don't use K&R prototypes.
19372         Remove LIBC-related code, since this file is not sync'd with glibc.
19373         * lib/strndup.h: Revamp, accordingly.
19374         * m4/strndup.m4: Modernize.
19375
19376 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19377
19378         * modules/savewd (Depends-on): Add 'raise'.
19379         * lib/savewd.c: Include <signal.h>, for 'raise'.
19380
19381 2006-09-26  Jim Meyering  <jim@meyering.net>
19382
19383         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
19384         when we detect Darwin 8.7.0's acl_get_file bug.
19385         Rearrange to perform the new (below) run-test while $LIBS
19386         contains any acl-related library.  Set USE_ACL at the end.
19387         (gl_ACL_GET_FILE): New function.
19388
19389 2006-09-26  Eric Blake  <ebb9@byu.net>
19390
19391         * lib/verror.c: Include <config.h> unconditionally.
19392
19393 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
19394
19395         * modules/clock-time (Maintainer): Add self.
19396         * modules/getlogin_r (Depends-on): Add extensions.
19397
19398 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19399
19400         * modules/clock-time: New module.
19401         * modules/nanosleep (Depends-on): Add clock-time.
19402         * modules/gethrxtime (Depends-on): Likewise.
19403         * modules/gettime (Depends-on): Likewise.
19404         * modules/settime (Depends-on): Likewise.
19405
19406         * modules/fts-lgpl: Depend on openat.
19407         * modules/mkancesdirs: Depend on savewd.
19408         * modules/mkdir-p: Likewise.
19409
19410 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19411
19412         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
19413
19414         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
19415         `gl_have_arbitrary_file_name_length_limit' to
19416         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
19417         actually works between configure runs.
19418
19419 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19420             Bruno Haible  <bruno@clisp.org>
19421
19422         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
19423
19424 2006-09-25  Jim Meyering  <jim@meyering.net>
19425
19426         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
19427         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
19428
19429 2006-09-25  Eric Blake  <ebb9@byu.net>
19430
19431         * gnulib-tool (func_import, func_create_testdir): Fix typos in
19432         exec's in 2006-09-18 patch when shuffling fds.
19433
19434 2006-09-25  Bruno Haible  <bruno@clisp.org>
19435
19436         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
19437         Reported by Jim Meyering.
19438
19439 2006-09-24  Jim Meyering  <jim@meyering.net>
19440
19441         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
19442         compare a pointer against a literal "0".  That caused failures with
19443         at least HP-UX's hpcc.
19444
19445 2006-09-22  Simon Josefsson  <jas@extundo.com>
19446
19447         * modules/gc-sha1:
19448         * modules/gc-md4:
19449         * modules/gc-hmac-sha1:
19450         * modules/gc-hmac-md5:
19451         * modules/gc-des:
19452         * modules/gc-arcfour: Distribute more files.
19453
19454 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19455
19456         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
19457         (gl_linked_iterator_from_to): Initialize struct completely.
19458         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
19459         (gl_tree_iterator_from_to): Likewise
19460         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
19461         * lib/gl_array_list.c [lint] (gl_array_iterator)
19462         (gl_array_iterator_from_to): Likewise.
19463         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
19464         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
19465         (gl_carray_iterator_from_to): Likewise.
19466
19467         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
19468         * lib/md4.c (md4_process_block): Remove unused variable.
19469         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
19470         parentheses for clarity.
19471
19472 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19473
19474         * modules/bison-i18n (Depends-on): Add gettext.
19475
19476 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19477
19478         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
19479         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
19480         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
19481         also add missing comma that caused broken test.
19482         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
19483         stdlib.h, for `abort'.
19484         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
19485         variables.
19486         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
19487         include unistd.h if present, for `rmdir'.
19488         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
19489         variables.
19490         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
19491         in the process include standard headers for prototypes.
19492         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
19493         gets declared on GNU/Linux.
19494         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
19495         unistd.h, for `rmdir'.
19496         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
19497
19498         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
19499         always true.
19500         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
19501
19502         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
19503
19504 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19505
19506         * gnulib-tool (func_version): Create output all at once.  This
19507         may help avoid triggering unnecessary SIGPIPEs, and at any
19508         rate it doesn't hurt.
19509
19510 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19511             Bruno Haible  <bruno@clisp.org>
19512
19513         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
19514         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
19515         * m4/signed.m4 (bh_C_SIGNED): Likewise.
19516
19517         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
19518         (gl_FUNC_VASPRINTF): Invoke it.
19519
19520 2006-09-22  Bruno Haible  <bruno@clisp.org>
19521
19522         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
19523         getloadavg.c as first argument.
19524
19525 2006-09-22  Bruno Haible  <bruno@clisp.org>
19526
19527         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
19528         at the beginning of the gl_INIT macro.
19529         * modules/getloadavg (configure.ac): Pass $gl_source_base to
19530         gl_GETLOADAVG.
19531
19532 2006-09-22  Bruno Haible  <bruno@clisp.org>
19533
19534         * gnulib-tool (func_create_megatestdir): Don't include the config-h
19535         module.
19536         Suggested by Ralf Wildenhues.
19537
19538 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19539
19540         Import this patch from libc:
19541
19542         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
19543
19544         * lib/regex_internal.c (re_string_reconstruct): Handle
19545         offset < pstr->valid_raw_len && pstr->offsets_needed case.
19546         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
19547         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
19548         re_string_context_at.
19549
19550         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
19551         now requires it.
19552         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
19553         gl_REGEX now does it for us.
19554         (gl_REGEX): Add test taken from
19555         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
19556
19557         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
19558         Check that large offsets work.  Modernize Autoconf usages.
19559         Prefer "yes" to mean a good thing rather than a bad.
19560         Don't put "#define mkstemp" in config.h, as this might interfere
19561         with standard system headers that "#define mkstemp mkstemp64".
19562
19563         * modules/mkstemp (Depends-on): Add extensions, so that
19564         mkstemp is visible on some platforms.
19565         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
19566         (Include): Change to "mkstemp.h" from <stdlib.h>.
19567         (Files): Add mkstemp.h.
19568
19569         * lib/mkstemp.h: New file, since some standard headers
19570         #define mkstemp.
19571         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
19572         Include "mkstemp.h".
19573         Make the _LIBC code resemble glibc original more,
19574         e.g., use K&R style.
19575         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
19576         (mkstemp): Remove, since mkstemp.h does this for us.
19577         * lib/stdlib--.h: Include mkstemp.h.
19578
19579         Import this patch from libc:
19580
19581         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
19582
19583         * lib/tempname.c (__gen_tempname): Change attempts_min
19584         into a macro.  Use preprocessor to decide how to initialize
19585         attempts [Coverity CID 67].
19586
19587 2006-09-20  Bruno Haible  <bruno@clisp.org>
19588
19589         * lib/mkdtemp.c: Import from libc.
19590         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
19591                 * sysdeps/posix/tempname.c (__gen_tempname): Change
19592                 attempts_min into a macro.  Use preprocessor to decide how to
19593                 initialize attempts [Coverity CID 67].
19594         2001-11-27  Paul Eggert  <eggert@twinsun.com>
19595                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
19596                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
19597
19598 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19599
19600         * gnulib-tool (func_exit): New function, to allow to pass the
19601         exit status portably through the trap.  Use everywhere.
19602         (--help, --version): Signal a write error.
19603         (trap): catch SIGPIPE, for write errors.
19604         Exit at the end of the trap, with the correct exit status.
19605
19606 2006-09-19  Karl Berry  <karl@gnu.org>
19607
19608         * doc/gnulib.texi: note about the license texinfo files.
19609
19610 2006-09-19  Eric Blake  <ebb9@byu.net>
19611
19612         * gnulib-tool: Avoid space-tab.
19613
19614 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
19615
19616         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
19617         that prevented coreutils 6.1 from building.  Problem reported
19618         by Petter Reinholdtsen.
19619
19620 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
19621
19622         * gnulib-tool (avoidlist): Fix typo that broke options like
19623         --avoid=lock that are used by coreutils bootstrap.
19624
19625 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
19626
19627         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
19628         more systematically.
19629
19630 2006-09-18  Jim Meyering  <jim@meyering.net>
19631
19632         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
19633
19634 2006-09-18  Bruno Haible  <bruno@clisp.org>
19635
19636         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
19637
19638 2006-09-18  Bruno Haible  <bruno@clisp.org>
19639
19640         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
19641         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
19642         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
19643         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
19644         * m4/gettext.m4: Require autoconf >= 2.52.
19645         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
19646         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
19647         of gl_cv_header_inttypes_h.
19648
19649 2006-09-18  Bruno Haible  <bruno@clisp.org>
19650
19651         * lib/javaversion.c: Include configmake.h.
19652
19653 2006-09-18  Bruno Haible  <bruno@clisp.org>
19654
19655         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
19656         avoid that the while loops be executed in a subshell.
19657
19658 2006-09-18  Bruno Haible  <bruno@clisp.org>
19659
19660         * MODULES.html.sh (func_module): Break long lines.
19661         Suggested by Bruce Korb <bkorb@gnu.org>.
19662
19663 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19664
19665         Speed up by a factor of 1.12.
19666         * gnulib-tool (nl): New variable.
19667         (func_import): Rewrite include directive extraction to only read each
19668         directive once.
19669
19670 2006-09-17  Bruno Haible  <bruno@clisp.org>
19671
19672         * modules/javaversion (Makefile.am): Remove DEFS setting.
19673         (Depends-on): Add configmake, for PKGDATADIR definition.
19674
19675 2006-09-17  Bruno Haible  <bruno@clisp.org>
19676
19677         * gnulib-tool (func_create_testdir): Rewrite all files at once.
19678
19679 2006-09-17  Bruno Haible  <bruno@clisp.org>
19680
19681         * gnulib-tool (func_append): New function, stolen from libtool.m4.
19682         (func_modules_transitive_closure, func_modules_add_dummy,
19683         func_modules_to_filelist, func_import, func_create_testdir,
19684         func_create_megatestdir, ...): Use it wherever possible.
19685         Suggested by Ralf Wildenhues.
19686
19687 2006-09-16  Karl Berry  <karl@gnu.org>
19688
19689         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
19690         to avoid sectioning errors.
19691         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
19692         [ifinfo]: blank line after @center-ed titles.
19693         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
19694         Spell FSF address consistently with others.
19695         (These changes approved by rms.)
19696
19697 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19698
19699         Speed up by a factor of 1.61.
19700         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
19701         already checked module names again.
19702
19703 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19704
19705         Speed up by a factor of 1.13.
19706         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
19707         for new_files, and the input to func_add_or_update.
19708
19709 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19710
19711         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
19712         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
19713
19714 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19715
19716         * modules/mkancesdirs (Depends-on): Add fcntl.
19717         * modules/savewd: New file.
19718         * MODULES.html.sh (File system functions): Add savewd.
19719
19720         * modules/configmake (Makefile.am): Add support for the
19721         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
19722
19723 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19724
19725         * m4/savewd.m4: New file.
19726
19727 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19728
19729         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
19730         (dirchownmod): New arg FD.  All callers changed.
19731         Use FD rather than opening the directory ourself, as opening is
19732         now the caller's responsibility.
19733         * lib/dirchownmod.h: Likewise.
19734         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
19735         hosts that require <sys/types.h> before <sys/stat.h>.  Include
19736         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
19737         (test_dir): Remove.
19738         (mkancesdirs): Return length of prefix of FILE that has already
19739         been made, or -2 if there is a child doing the work.  Redo
19740         algorithm so that it is O(N) rather than O(N**2).  Optimize away
19741         ".", and treat ".." specially since it might stray back into
19742         already-created areas.  Use a subprocess if necessary.  New arg
19743         WD; all users changed.  MAKE_DIR function should now return 1
19744         if it creates a directory that is not readable.  Return -2 if
19745         a child process is spun off.
19746         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
19747         Adjust signature to match code.
19748         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
19749         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
19750         all users changed.
19751         * lib/savewd.c, lib/savewd.h: New files.
19752
19753 2006-09-15  Jim Meyering  <jim@meyering.net>
19754
19755         * modules/rename-dest-slash: New module.
19756         * MODULES.html.sh (posix_compat): Add it here.
19757
19758         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
19759
19760 2006-09-15  Jim Meyering  <jim@meyering.net>
19761
19762         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
19763         file.
19764
19765         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
19766
19767 2006-09-15  Jim Meyering  <jim@meyering.net>
19768
19769         * lib/rename-dest-slash.c (has_trailing_slash): Use
19770         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
19771         (rpl_rename_dest_slash): Perform the cheaper trailing slash
19772         test before testing whether SRC is a directory.
19773         Suggestions from Bruno Haible.
19774
19775         Avoid a warning about an unused variable.
19776         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
19777         into the #ifdef block where it's used.
19778
19779         * lib/rename-dest-slash.c: New file.
19780
19781 2006-09-14  Bruno Haible  <bruno@clisp.org>
19782
19783         * lib/allocsa.c: Include <config.h> unconditionally.
19784         * lib/asnprintf.c: Likewise.
19785         * lib/asprintf.c: Likewise.
19786         * lib/c-strcasecmp.c: Likewise.
19787         * lib/c-strcasestr.c: Likewise.
19788         * lib/c-strncasecmp.c: Likewise.
19789         * lib/c-strstr.c: Likewise.
19790         * lib/classpath.c: Likewise.
19791         * lib/clean-temp.c: Likewise.
19792         * lib/concatpath.c: Likewise.
19793         * lib/copy-file.c: Likewise.
19794         * lib/csharpcomp.c: Likewise.
19795         * lib/csharpexec.c: Likewise.
19796         * lib/execute.c: Likewise.
19797         * lib/fatal-signal.c: Likewise.
19798         * lib/findprog.c: Likewise.
19799         * lib/fwriteerror.c: Likewise.
19800         * lib/gl_array_list.c: Likewise.
19801         * lib/gl_array_oset.c: Likewise.
19802         * lib/gl_avltree_list.c: Likewise.
19803         * lib/gl_avltree_oset.c: Likewise.
19804         * lib/gl_avltreehash_list.c: Likewise.
19805         * lib/gl_carray_list.c: Likewise.
19806         * lib/gl_linked_list.c: Likewise.
19807         * lib/gl_linkedhash_list.c: Likewise.
19808         * lib/gl_list.c: Likewise.
19809         * lib/gl_oset.c: Likewise.
19810         * lib/gl_rbtree_list.c: Likewise.
19811         * lib/gl_rbtree_oset.c: Likewise.
19812         * lib/gl_rbtreehash_list.c: Likewise.
19813         * lib/imaxabs.c: Likewise.
19814         * lib/imaxdiv.c: Likewise.
19815         * lib/javacomp.c: Likewise.
19816         * lib/javaexec.c: Likewise.
19817         * lib/javaversion.c: Likewise.
19818         * lib/linebreak.c: Likewise.
19819         * lib/localcharset.c: Likewise.
19820         * lib/lock.c: Likewise.
19821         * lib/mbchar.c: Likewise.
19822         * lib/mbswidth.c: Likewise.
19823         * lib/mkdtemp.c: Likewise.
19824         * lib/pipe.c: Likewise.
19825         * lib/printf-args.c: Likewise.
19826         * lib/printf-parse.c: Likewise.
19827         * lib/progname.c: Likewise.
19828         * lib/progreloc.c: Likewise.
19829         * lib/readlink.c: Likewise.
19830         * lib/sh-quote.c: Likewise.
19831         * lib/stpcpy.c: Likewise.
19832         * lib/stpncpy.c: Likewise.
19833         * lib/strcasecmp.c: Likewise.
19834         * lib/strcasestr.c: Likewise.
19835         * lib/strcspn.c: Likewise.
19836         * lib/striconv.c: Likewise.
19837         * lib/strncasecmp.c: Likewise.
19838         * lib/strnlen1.c: Likewise.
19839         * lib/strstr.c: Likewise.
19840         * lib/strtok_r.c: Likewise.
19841         * lib/tls.c: Likewise.
19842         * lib/tmpdir.c: Likewise.
19843         * lib/unicodeio.c: Likewise.
19844         * lib/unsetenv.c: Likewise.
19845         * lib/vasnprintf.c: Likewise.
19846         * lib/vasprintf.c: Likewise.
19847         * lib/wait-process.c: Likewise.
19848         * lib/xallocsa.c: Likewise.
19849         * lib/xsetenv.c: Likewise.
19850         * lib/xstriconv.c: Likewise.
19851
19852 2006-09-13  Simon Josefsson  <jas@extundo.com>
19853
19854         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
19855         that internally, suggested by Ralf Wildenhues
19856         <Ralf.Wildenhues@gmx.de>.
19857
19858 2006-09-13  Simon Josefsson  <jas@extundo.com>
19859
19860         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
19861         @LIBOBJS@.
19862         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19863
19864 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
19865
19866         * lib/_fpending.c: Include <config.h> unconditionally, since we no
19867         longer worry about uses that don't define HAVE_CONFIG_H.
19868         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
19869         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
19870         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
19871         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
19872         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
19873         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
19874         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
19875         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
19876         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
19877         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
19878         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
19879         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
19880         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
19881         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
19882         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
19883         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
19884         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
19885         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
19886         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
19887         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
19888         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
19889         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
19890         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
19891         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
19892         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
19893         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
19894         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
19895         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
19896         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
19897         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
19898         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
19899         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
19900         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
19901         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
19902         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
19903         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
19904         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
19905         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
19906         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
19907         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
19908         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
19909         Likewise.
19910
19911 2006-09-13  Eric Blake  <ebb9@byu.net>
19912
19913         * lib/getopt.c: Fix typo in last commit.
19914
19915 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
19916
19917         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
19918         dgettext.
19919
19920 2006-09-12  Jim Meyering  <jim@meyering.net>
19921
19922         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
19923         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
19924         Reported by Nelson H. F. Beebe.
19925
19926 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
19927
19928         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
19929         program_invocation_name and program_invocation_short_name are
19930         initialized.
19931         * lib/argp-namefrob.h: Move declarations of program_invocation_name
19932         and program_invocation_short_name to argp.h, so they are visible
19933         to user programs.
19934         * lib/argp.h: Likewise
19935
19936 2006-09-10  Bruno Haible  <bruno@clisp.org>
19937
19938         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
19939         m4/inttypes_h.m4, m4/uintmax_t.m4.
19940
19941 2006-09-10  Bruno Haible  <bruno@clisp.org>
19942
19943         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
19944         gl_AC_TYPE_UINTMAX_T.
19945
19946 2006-09-10  Bruno Haible  <bruno@clisp.org>
19947
19948         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
19949
19950 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19951
19952         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
19953         convention.  Text proposed by Bruno Haible.
19954         (struct argp_option): Document the use of N_() wrappers.
19955
19956         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
19957         '\v', and translate the two parts separately, instead of feeding
19958         the whole string to gettext.  This allows to exclude
19959         '\v' from the strings visible to the translator by writing doc
19960         strings as N_("..") "\v" N_("..").
19961
19962 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19963
19964         * config/srclist.txt: Undo latest change; the bug was fixed.
19965
19966 2006-09-09  Bruno Haible  <bruno@clisp.org>
19967
19968         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
19969         assignments if building a library without libtool.
19970         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
19971         in func_emit_lib_Makefile_am.
19972         (func_import): When building a static library libfoo.a, arrange to
19973         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
19974         (func_create_testdir): Likewise.
19975         * modules/gc (configure.ac, Makefile.am): If building statically,
19976         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
19977         * modules/iconvme (configure.ac, Makefile.am): Likewise.
19978         * modules/striconv (configure.ac, Makefile.am): Likewise.
19979         Based on a suggestion by Ralf Wildenhues.
19980
19981 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19982
19983         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
19984         Check for unistd.h too, since Autoconf doesn't assume POSIX.
19985         Also:
19986
19987         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19988         Add year_2050_test to catch glibc bug 2821
19989         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
19990
19991         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19992         Prefer #ifdef to #if.
19993
19994         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
19995         Return from 'main' instead of calling 'exit'.
19996
19997 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19998
19999         * lib/mktime.c (guess_time_tm): Fix bug where mktime
20000         returned the maximum time_t value rather than (time_t) -1.
20001         Problem originally reported by William Bardwell
20002         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
20003
20004         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
20005         Moved to here ...
20006         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
20007         ... from here.
20008
20009 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20010
20011         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
20012         2821 is fixed.
20013
20014 2006-09-08  Jim Meyering  <jim@meyering.net>
20015
20016         Don't make generated files read-only.  That would bother too many
20017         people.  However, do retain the ability to work when targets are
20018         read-only: remove the destination and temporary files before writing
20019         them (when generated via sed or echo), or by using the -f option for
20020         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
20021         * modules/alloca-opt, modules/argz, modules/arpa_inet:
20022         * modules/byteswap, modules/configmake, modules/fcntl:
20023         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
20024         * modules/localcharset, modules/netinet_in, modules/poll:
20025         * modules/stdbool, modules/stdint, modules/sys_select:
20026         * modules/sys_socket, modules/sys_stat, modules/sysexits:
20027
20028 2006-09-08  Jim Meyering  <jim@meyering.net>
20029
20030         Avoid new build failure on FreeBSD 6.0.
20031         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
20032         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
20033         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
20034
20035 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20036
20037         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
20038
20039 2006-09-07  Jim Meyering  <jim@meyering.net>
20040
20041         Fix global typo in last change: use chmod u-w, not chmod u-x.
20042         Spotted by Paul Eggert and Bruce Korb.
20043         * modules/alloca-opt, modules/argz, modules/arpa_inet:
20044         * modules/byteswap, modules/configmake, modules/fcntl:
20045         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
20046         * modules/localcharset, modules/netinet_in, modules/poll:
20047         * modules/stdbool, modules/stdint, modules/sys_select:
20048         * modules/sys_socket, modules/sys_stat, modules/sysexits:
20049
20050 2006-09-06  Jim Meyering  <jim@meyering.net>
20051
20052         Make generated files be read-only.
20053         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
20054         Ensure that each generated file is now read-only.
20055         * modules/argz: Likewise.
20056         * modules/arpa_inet: Likewise.
20057         * modules/byteswap: Likewise.
20058         * modules/configmake: Likewise.
20059         * modules/fcntl: Likewise.
20060         * modules/fnmatch: Likewise.
20061         * modules/getopt: Likewise.
20062         * modules/glob: Likewise.
20063         * modules/inttypes: Likewise.
20064         * modules/netinet_in: Likewise.
20065         * modules/poll: Likewise.
20066         * modules/stdbool: Likewise.
20067         * modules/stdint: Likewise.
20068         * modules/sys_select: Likewise.
20069         * modules/sys_socket: Likewise.
20070         * modules/sys_stat: Likewise.
20071         * modules/sysexits: Likewise.
20072         * modules/localcharset: Same as above, but continue using temporary
20073         file named "t-$@" (why different?) rather than the "$@-t" used
20074         everywhere else.
20075
20076         * modules/sysexits (Makefile.am): Replace literal occurrences
20077         of "sysexit.h" more readable, and more consistent, "$@".
20078
20079 2006-09-06  Bruno Haible  <bruno@clisp.org>
20080
20081         * modules/striconv: New file.
20082         * modules/xstriconv: New file.
20083         * MODULES.html.sh (Internationalization functions): Add striconv,
20084         xstriconv.
20085
20086 2006-09-06  Bruno Haible  <bruno@clisp.org>
20087
20088         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
20089         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
20090         not using libtool correctly.
20091
20092 2006-09-06  Bruno Haible  <bruno@clisp.org>
20093
20094         * lib/striconv.h: New file.
20095         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
20096         iconvstring.c.
20097         * lib/xstriconv.h: New file.
20098         * lib/xstriconv.c: New file.
20099
20100 2006-09-06  Bruno Haible  <bruno@clisp.org>
20101
20102         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
20103         lib_..._LDFLAGS.
20104
20105 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20106
20107         * lib/argz_.h: Sync from Libtool.
20108
20109         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
20110                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
20111
20112         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
20113
20114 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
20115
20116         * modules/trim: New file.
20117
20118 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
20119
20120         * lib/trim.h: New file.
20121         * lib/trim.c: New file.
20122
20123 2006-09-05  Bruno Haible  <bruno@clisp.org>
20124
20125         * MODULES.html.sh (String handling): Add trim.
20126
20127 2006-09-04  Karl Berry  <karl@gnu.org>
20128
20129         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
20130         until next release.
20131
20132 2006-09-03  Bruno Haible  <bruno@clisp.org>
20133
20134         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
20135         correctly.
20136
20137 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20138
20139         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
20140         not gl_GETLOADAVG.  Omit unneeded semicolons.
20141         Problems reported by Ralf Wildenhues in
20142         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
20143         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
20144         at the end, which is the usual gnulib style.
20145
20146         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
20147         of doing all the work ourselves.
20148         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
20149         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
20150
20151 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20152
20153         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
20154         Problem reported by Ralf Wildenhues in
20155         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
20156
20157         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
20158         HAVE_STRUCT_STATFS_F_FSTYPENAME.
20159
20160 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20161
20162         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
20163         yesterday's patch by changing test -n to test -z.
20164
20165 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20166
20167         * modules/getloadavg (Files): Add m4/getloadavg.m4.
20168         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
20169         the former is now obsolescent.
20170
20171         * modules/chdir-long (Depends-on): Add fcntl.
20172
20173 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20174
20175         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
20176         obsolescent, and programs should use gnulib instead.
20177         * m4/getloadavg.m4: New file, with contents taken from Autoconf
20178         but with prefixes changed.
20179
20180 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20181
20182         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
20183         or stdbool.h, because they might not exist while configuring.
20184
20185         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
20186         Don't include unistd.h or limits.h; not needed, since chdir-long.h
20187         does that for us.
20188         (O_DIRECTORY): Remove.
20189
20190 2006-08-31  Eric Blake  <ebb9@byu.net>
20191
20192         * gnulib-tool: Don't let emacs change spaces to TAB.
20193
20194 2006-08-31  Bruno Haible  <bruno@clisp.org>
20195
20196         * gnulib-tool: When calling func_import more than once, do it in a
20197         subshell.
20198         Reported by Eric Blake <ebb9@byu.net>.
20199
20200 2006-08-31  Bruno Haible  <bruno@clisp.org>
20201
20202         * gnulib-tool (nl): Remove variable.
20203         (sed_transform_lib_file): Use more robust test for config-h module.
20204         (func_import): Fix typo in 2006-08-25 patch.
20205
20206 2006-08-31  Bruno Haible  <bruno@clisp.org>
20207
20208         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
20209         specified, augment Makefile.am variables instead of assigning them.
20210
20211 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
20212
20213         Work around a bug in both the Linux and SunOS 64-bit kernels:
20214         nanosleep mishandles sleeps for longer than 2**31 seconds.
20215         Problem reported by Frank v Waveren in
20216         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
20217         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
20218         Check for nanosleep bug.
20219         (LIB_NANOSLEEP): Append clock_gettime library if needed.
20220
20221 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
20222
20223         Work around a bug in both the Linux and SunOS 64-bit kernels:
20224         nanosleep mishandles sleeps for longer than 2**31 seconds.
20225         Problem reported by Frank v Waveren in
20226         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
20227         * lib/nanosleep.c (BILLION): New constant.
20228         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
20229         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
20230         implementation.
20231
20232 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
20233
20234         * modules/nanosleep (Depends-on): Add gettime.
20235
20236 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
20237         and Simon Josefsson  <jas@extundo.com>
20238         and Oskar Liljeblad  <oskar@osk.mine.nu>
20239
20240         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
20241         * gnulib-tool (func_import): New license type 'unmodifiable license
20242         text'.
20243         * modules/fdl: Use it.  Longer description.
20244         * module/gpl, module/lgpl: New files.
20245
20246 2006-08-30  Jim Meyering  <jim@meyering.net>
20247
20248         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
20249         shadowing the parameter.
20250
20251 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20252
20253         Sync from Libtool:
20254
20255         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20256
20257         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
20258         sharing with gnulib.  Report by Eric Blake.
20259
20260 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
20261
20262         * modules/isapipe: New file.
20263         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
20264
20265 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
20266
20267         * modules/configmake (Makefile.am): Add a comment, and omit
20268         the CONFIGMAKE_ prefix from generated macro names.  Suggested
20269         by Bruno Haible.
20270
20271 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
20272
20273         * m4/isapipe.m4: New file.
20274
20275 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
20276
20277         * lib/isapipe.c, lib/isapipe.h: New files.
20278
20279 2006-08-29  Jim Meyering  <jim@meyering.net>
20280
20281         * modules/configmake (Makefile.am): Make configmake.h depend on
20282         Makefile.  Otherwise, a stale configmake.h could hang around.
20283
20284 2006-08-29  Eric Blake  <ebb9@byu.net>
20285
20286         * lib/error.c (error_at_line, print_errno_message): Match libc, after
20287         resolution of upstream bug 3044.
20288
20289 2006-08-29  Bruno Haible  <bruno@clisp.org>
20290
20291         * modules/localcharset (Depends-on): Add configmake.
20292         (Makefile.am): Remove setting of LIBDIR through DEFS.
20293
20294 2006-08-29  Bruno Haible  <bruno@clisp.org>
20295
20296         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
20297         defined.
20298
20299 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20300
20301         * modules/fcntl: New file.
20302         * modules/chdir-safer (Depends-on): Add fcntl.
20303         * modules/fts: Likewise.
20304         * modules/mkdir-p: Likewise.
20305
20306         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
20307         This undoes the most recent change, since we're now addressing the
20308         problem in a different way.
20309
20310         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
20311         into output, since the output might be called Makefile.am even
20312         if $makefile_name is something different.
20313         (func_import): Use $makefile_am rather than
20314         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
20315         empty.
20316
20317         * modules/inttypes (Files): Add m4/inttypes-h.m4.
20318
20319 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20320
20321         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
20322         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
20323         recent change to stdint.m4, since we're now addressing the problem in a
20324         different way.
20325
20326 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20327
20328         * m4/fcntl_h.m4: New file.
20329
20330 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20331
20332         * lib/fcntl_.h: New file.
20333         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
20334         the fcntl module.
20335         * lib/dirchownmod.c: Likewise.
20336         * lib/fts.c: Likewise.
20337
20338         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
20339         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
20340         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
20341         just before including <inttypes.h>, to avoid circular inclusion.
20342
20343 2006-08-28  Jim Meyering  <jim@meyering.net>
20344
20345         * doc/visibility.texi: Actually read and correct the grammar of the
20346         sentence affected by yesterday's change.
20347
20348 2006-08-28  Eric Blake  <ebb9@byu.net>
20349
20350         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
20351         needs wrapper.
20352
20353 2006-08-28  Eric Blake  <ebb9@byu.net>
20354
20355         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
20356
20357 2006-08-28  Eric Blake  <ebb9@byu.net>
20358
20359         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
20360
20361 2006-08-28  Bruno Haible  <bruno@clisp.org>
20362
20363         * modules/c-strstr: New file, from GNU gettext.
20364         * MODULES.html.sh (String handling): Add c-strstr.
20365
20366 2006-08-28  Bruno Haible  <bruno@clisp.org>
20367
20368         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
20369         macros.
20370         Reported by Eric Blake.
20371
20372 2006-08-28  Bruno Haible  <bruno@clisp.org>
20373
20374         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
20375         (VASNPRINTF): Return a string of length > INT_MAX without failing.
20376         * lib/vasprintf.c: Include errno.h, limits.h.
20377         (EOVERFLOW): New fallback definition.
20378         (vasprintf): Test here whether the string length is > INT_MAX.
20379         * lib/vsnprintf.c: Include errno.h, limits.h.
20380         (EOVERFLOW): New fallback definition.
20381         (vsnprintf): Fix bug when generated string was too long for the buffer.
20382         Test here whether the string length is > INT_MAX.
20383
20384 2006-08-28  Bruno Haible  <bruno@clisp.org>
20385
20386         * lib/inttypes_.h (SCNX*): Remove definitions.
20387         Reported by Eric Blake.
20388
20389 2006-08-28  Bruno Haible  <bruno@clisp.org>
20390
20391         * lib/c-strstr.h: New file, from GNU gettext.
20392         * lib/c-strstr.c: New file, from GNU gettext.
20393
20394 2006-08-28  Bruno Haible  <bruno@clisp.org>
20395
20396         * gnulib-tool: Reorder some statements.
20397
20398 2006-08-28  Bruno Haible  <bruno@clisp.org>
20399
20400         * gnulib-tool: New option --makefile-name.
20401         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
20402         $makefile_name.
20403         (func_import): Write $makefile_name to the cache file, and read it from
20404         there unless explicitly specified. Use $makefile_name as file name
20405         instead of Makefile.am. Adjust the recommendations accordingly.
20406
20407 2006-08-28  Bruno Haible  <bruno@clisp.org>
20408
20409         * gnulib-tool (func_verify_module): Check against misapplying patch.
20410
20411 2006-08-28  Bruno Haible  <bruno@clisp.org>
20412
20413         * gnulib-tool (func_relativize, func_relconcat): New functions.
20414         Give an error if --local-dir is given with --update.
20415         Remove trailing slashes from $local_gnulib_dir.
20416         (func_import): Store the relativized $local_gnulib_dir in
20417         gnulib-cache.m4, and read it from there if not specified explicitly.
20418
20419 2006-08-28  Bruno Haible  <bruno@clisp.org>
20420
20421         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
20422         is the current directory. Respect also $local_gnulib_dir.
20423
20424 2006-08-28  Bruno Haible  <bruno@clisp.org>
20425             Simon Josefsson  <jas@extundo.com>
20426
20427         BeOS portability.
20428         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
20429
20430 2006-08-27  Jim Meyering  <jim@meyering.net>
20431
20432         * doc/visibility.texi: Remove duplicate word: "pointer".
20433
20434 2006-08-26  Bruno Haible  <bruno@clisp.org>
20435
20436         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
20437         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
20438         (Makefile.am): Create inttypes.h from inttypes_.h.
20439         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
20440
20441         * modules/imaxabs: New file.
20442
20443         * modules/imaxdiv: New file.
20444
20445 2006-08-26  Bruno Haible  <bruno@clisp.org>
20446
20447         * m4/inttypes.m4: New file.
20448         * m4/_inttypes_h.m4: Remove file.
20449         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
20450         PRI_MACROS_BROKEN.
20451         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
20452
20453         * m4/imaxabs.m4: New file.
20454
20455         * m4/imaxdiv.m4: New file.
20456
20457 2006-08-26  Bruno Haible  <bruno@clisp.org>
20458
20459         * lib/inttypes_.h: New file.
20460         * lib/inttypes.h: Remove file.
20461         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
20462
20463         * lib/imaxabs.c: New file.
20464
20465         * lib/imaxdiv.c: New file.
20466
20467 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20468
20469         New config-h module, so that "make" output needn't be cluttered
20470         by -DHAVE_CONFIG_H.
20471         * MODULES.html.sh (Support for building libraries and executables):
20472         Add config-h.
20473         * modules/config-h: New file.
20474         * gnulib-tool (nl, sed_transform_lib_file): New vars.
20475         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
20476         the config-h module is used.
20477
20478         New configmake module, so that "make" output needn't be cluttered
20479         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
20480         * MODULES.html.sh (Support for building libraries and executables):
20481         Add configmake.
20482         * modules/configmake: New file.
20483
20484 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20485
20486         * m4/config-h.m4: New file.
20487
20488 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20489
20490         * config/srclist.txt: Add elisp-comp.
20491
20492 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20493
20494         * MODULES.html.sh (Support for building libraries and executables):
20495         Add elisp-comp.
20496         * build-aux/elisp-comp: New file.
20497         * modules/elisp-comp: New file.
20498
20499 2006-08-24  Bruno Haible  <bruno@clisp.org>
20500
20501         * gnulib-tool (func_create_testdir): Use non-default values of
20502         sourcebase and m4base.
20503
20504 2006-08-24  Bruno Haible  <bruno@clisp.org>
20505
20506         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
20507         HTML structure.
20508
20509 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20510
20511         * modules/openat (Depends-on): Add lchown.
20512
20513 2006-08-23  Bruno Haible  <bruno@clisp.org>
20514
20515         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
20516         of gl_LOCK_EARLY instead of gl_LOCK.
20517
20518 2006-08-23  Bruno Haible  <bruno@clisp.org>
20519
20520         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
20521         on OSF/1 to no.
20522         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
20523
20524 2006-08-23  Bruno Haible  <bruno@clisp.org>
20525
20526         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
20527         as unusable.
20528
20529         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
20530         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
20531         (gl_LOCK): New macro.
20532
20533 2006-08-22  Simon Josefsson  <jas@extundo.com>
20534
20535         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
20536         to md5 module.
20537
20538 2006-08-22  Simon Josefsson  <jas@extundo.com>
20539
20540         * MODULES.html.sh: Add "Support for maintaining and release
20541         projects".
20542
20543         * build-aux/gnupload: New file, from coreutils.
20544
20545 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
20546
20547         Avoid the need for AC_LIBSOURCES in m4 macros.
20548         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
20549         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
20550         * modules/check-version (EXTRA_DIST): Add check-version.h.
20551         * modules/crc (EXTRA_DIST): Add crc.h.
20552         * modules/des (EXTRA_DIST): Add des.h.
20553         * modules/gc (EXTRA_DIST): Add gc.h.
20554         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
20555         * modules/getline (EXTRA_DIST): Add getline.h.
20556         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
20557         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
20558         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
20559         * modules/md2 (EXTRA_DIST): Add md2.h.
20560         * modules/md4 (EXTRA_DIST): Add md4.h.
20561         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
20562         * modules/read-file (EXTRA_DIST): Add read-file.h.
20563         * modules/readline (EXTRA_DIST): Add readline.h.
20564         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
20565         rijndael-api-fst.h.
20566
20567 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
20568
20569         * m4/rijndael.m4 (gl_ARCFOUR):
20570         * m4/arctwo.m4 (gl_ARCTWO):
20571         * m4/check-version.m4 (gl_CHECK_VERSION):
20572         * m4/crc.m4 (gl_CRC):
20573         * m4/des.m4 (gl_DES):
20574         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
20575         * m4/gc.m4 (gl_GC):
20576         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
20577         * m4/getline.m4 (gl_FUNC_GETLINE):
20578         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
20579         * m4/hmac-md5.m4 (gl_HMAC_MD5):
20580         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
20581         * m4/md2.m4 (gl_MD2):
20582         * m4/md4.m4 (gl_MD4):
20583         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
20584         * m4/read-file.m4 (gl_FUNC_READ_FILE):
20585         * m4/readline.m4 (gl_FUNC_READLINE):
20586         * m4/rijndael.m4 (gl_RIJNDAEL):
20587         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
20588         to get the necessary .h files and whatnot.
20589
20590 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
20591
20592         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
20593         gnulib rather than the other way around.
20594         * config/srclistvars.sh (COREUTILS): Remove.
20595
20596 2006-08-22  Jim Meyering  <jim@meyering.net>
20597
20598         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
20599
20600         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
20601
20602 2006-08-22  Eric Blake  <ebb9@byu.net>
20603
20604         * modules/regexprops-generic: New file.
20605         * MODULES.html.sh (Support for building documentation): List it.
20606
20607 2006-08-22  Eric Blake  <ebb9@byu.net>
20608
20609         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
20610         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
20611         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
20612         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
20613
20614 2006-08-22  Bruno Haible  <bruno@clisp.org>
20615
20616         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
20617         and lib_LTLIBRARIES like the other lib_* variables.
20618
20619 2006-08-22  Bruno Haible  <bruno@clisp.org>
20620
20621         * build-aux/x-to-1.in: New file, from GNU gettext.
20622
20623 2006-08-22  Bruno Haible  <bruno@clisp.org>
20624
20625         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
20626         <utmpx.h> exists.
20627
20628 2006-08-22  Bruno Haible  <bruno@clisp.org>
20629
20630         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
20631         <utmpx.h> exists.
20632
20633 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
20634
20635         BeOS portability.
20636         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
20637         exist.
20638         Problem reported by Bruno Haible.
20639
20640 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
20641
20642         Avoid the need for AC_LIBSOURCES in m4 macros.
20643         * modules/acl (EXTRA_DIST): Add acl.h.
20644         * modules/argmatch (Files): Add m4/argmatch.m4.
20645         (configure.ac): Add gl_ARGMATCH.
20646         (EXTRA_DIST): Renamed from lib_SOURCES, for
20647         consistency with the other modules.  Remove argmatch.c.
20648         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
20649         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
20650         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
20651         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
20652         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
20653         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
20654         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
20655         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
20656         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
20657         * modules/closeout (EXTRA_DIST): Add closeout.h.
20658         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
20659         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
20660         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
20661         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
20662         dirname.h; remove basename.c and stripslash.c.
20663         * modules/exclude (EXTRA_DIST): Add exclude.h.
20664         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
20665         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
20666         * modules/file-type (EXTRA_DIST): Add file-type.h.
20667         * modules/filemode (EXTRA_DIST): Add filemode.h.
20668         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
20669         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
20670         * modules/fpending (EXTRA_DIST): Add __fpending.h.
20671         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
20672         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
20673         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
20674         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
20675         * modules/getdate (EXTRA_DIST): Add getdate.c.
20676         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
20677         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
20678         * modules/getpass (EXTRA_DIST): Add getpass.h.
20679         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
20680         * modules/group-member (EXTRA_DIST): Add group-member.h.
20681         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
20682         * modules/hash (EXTRA_DIST): Add hash.h.
20683         * modules/human (EXTRA_DIST): Add human.h.
20684         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
20685         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
20686         * modules/lchown (EXTRA_DIST): Add lchown.h.
20687         * modules/long-options (EXTRA_DIST): Add long-options.h.
20688         * modules/lstat (EXTRA_DIST): Add lstat.h.
20689         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
20690         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
20691         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
20692         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
20693         * modules/memxor (EXTRA_DIST): Add memxor.h.
20694         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
20695         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
20696         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
20697         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
20698         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
20699         * modules/physmem (EXTRA_DIST): Add physmem.h.
20700         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
20701         * modules/posixver (EXTRA_DIST): Add posixver.h.
20702         * modules/quote (EXTRA_DIST): Add quote.h.
20703         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
20704         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
20705         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
20706         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
20707         regex_internal.h regexec.c.
20708         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
20709         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
20710         * modules/same (EXTRA_DIST): Add same.h.
20711         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
20712         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
20713         * modules/savedir (EXTRA_DIST): Add savedir.h.
20714         * modules/sha1 (EXTRA_DIST): Add sha1.h.
20715         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
20716         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
20717         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
20718         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
20719         * modules/strdup (EXTRA_DIST): Add strdup.h.
20720         * modules/strftime (EXTRA_DIST): Add strftime.h.
20721         * modules/strndup (EXTRA_DIST): Add strndup.h.
20722         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
20723         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
20724         * modules/time_r (EXTRA_DIST): Add time_r.h.
20725         * modules/timespec (EXTRA_DIST): Add timespec.h.
20726         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
20727         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
20728         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
20729         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
20730         * modules/userspec (EXTRA_DIST): Add userspec.h.
20731         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
20732         * modules/utimens (EXTRA_DIST): Add utimens.h.
20733         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
20734         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
20735         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
20736         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
20737         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
20738         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
20739         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
20740         * modules/yesno (EXTRA_DIST): Add yesno.h.
20741
20742 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
20743
20744         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
20745
20746         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
20747         * m4/dev-ino.m4, same-inode.m4: Remove.
20748
20749         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
20750         * m4/acl.m4 (AC_FUNC_ACL):
20751         * m4/backupfile.m4 (gl_BACKUPFILE):
20752         * m4/c-strtod.m4 (gl_C99_STRTOLD):
20753         * m4/canon-host.m4 (gl_CANON_HOST):
20754         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
20755         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
20756         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
20757         * m4/cloexec.m4 (gl_CLOEXEC):
20758         * m4/close-stream.m4 (gl_CLOSE_STREAM):
20759         * m4/closeout.m4 (gl_CLOSEOUT):
20760         * m4/dirfd.m4 (gl_FUNC_DIRFD):
20761         * m4/dirname.m4 (gl_DIRNAME):
20762         * m4/exclude.m4 (gl_EXCLUDE):
20763         * m4/exitfail.m4 (gl_EXITFAIL):
20764         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
20765         * m4/file-type.m4 (gl_FILE_TYPE):
20766         * m4/filemode.m4 (gl_FILEMODE):
20767         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
20768         * m4/fpending.m4 (gl_FUNC_FPENDING):
20769         * m4/fprintftime.m4 (gl_FPRINTFTIME):
20770         * m4/fts.m4 (gl_FUNC_FTS):
20771         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
20772         * m4/getdate.m4 (gl_GETDATE):
20773         * m4/gethrxtime.m4 (gl_GETHRXTIME):
20774         * m4/getpagesize.m4 (gl_GETPAGESIZE):
20775         * m4/getpass.m4 (gl_FUNC_GETPASS):
20776         * m4/gettime.m4 (gl_GETTIME):
20777         * m4/getugroups.m4 (gl_GETUGROUPS):
20778         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
20779         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
20780         * m4/hard-locale.m4 (gl_HARD_LOCALE):
20781         * m4/hash.m4 (gl_HASH):
20782         * m4/idcache.m4 (gl_IDCACHE):
20783         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
20784         * m4/lchown.m4 (gl_FUNC_LCHOWN):
20785         * m4/long-options.m4 (gl_LONG_OPTIONS):
20786         * m4/lstat.m4 (gl_FUNC_LSTAT):
20787         * m4/md5.m4 (gl_MD5):
20788         * m4/memcasecmp.m4 (gl_MEMCASECMP):
20789         * m4/memcoll.m4 (gl_MEMCOLL):
20790         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
20791         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
20792         * m4/memxor.m4 (gl_MEMXOR):
20793         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
20794         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
20795         * m4/modechange.m4 (gl_MODECHANGE):
20796         * m4/mountlist.m4 (gl_MOUNTLIST):
20797         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
20798         * m4/openat.m4 (gl_FUNC_OPENAT):
20799         * m4/pathmax.m4 (gl_PATHMAX):
20800         * m4/physmem.m4 (gl_PHYSMEM):
20801         * m4/posixtm.m4 (gl_POSIXTM):
20802         * m4/posixver.m4 (gl_POSIXVER):
20803         * m4/quote.m4 (gl_QUOTE):
20804         * m4/quotearg.m4 (gl_QUOTEARG):
20805         * m4/readtokens.m4 (gl_READTOKENS):
20806         * m4/readutmp.m4 (gl_READUTMP):
20807         * m4/regex.m4 (gl_REGEX):
20808         * m4/safe-read.m4 (gl_SAFE_READ):
20809         * m4/safe-write.m4 (gl_SAFE_WRITE):
20810         * m4/same.m4 (gl_SAME):
20811         * m4/save-cwd.m4 (gl_SAVE_CWD):
20812         * m4/savedir.m4 (gl_SAVEDIR):
20813         * m4/settime.m4 (gl_SETTIME):
20814         * m4/sha1.m4 (gl_SHA1):
20815         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
20816         * m4/stat-macros.m4 (gl_STAT_MACROS):
20817         * m4/stat-time.m4 (gl_STAT_TIME):
20818         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
20819         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
20820         * m4/strdup.m4 (gl_FUNC_STRDUP):
20821         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
20822         * m4/strndup.m4 (gl_FUNC_STRNDUP):
20823         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
20824         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
20825         * m4/time_r.m4 (gl_TIME_R):
20826         * m4/timespec.m4 (gl_TIMESPEC):
20827         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
20828         * m4/unlinkdir.m4 (gl_UNLINKDIR):
20829         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
20830         * m4/userspec.m4 (gl_USERSPEC):
20831         * m4/utimecmp.m4 (gl_UTIMECMP):
20832         * m4/utimens.m4 (gl_UTIMENS):
20833         * m4/xalloc.m4 (gl_XALLOC):
20834         * m4/xgetcwd.m4 (gl_XGETCWD):
20835         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
20836         * m4/xreadlink.m4 (gl_XREADLINK):
20837         * m4/xstrtod.m4 (gl_XSTRTOD):
20838         * m4/yesno.m4 (gl_YESNO):
20839         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
20840         to get the necessary .h files and whatnot.
20841
20842 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
20843             Bruno Haible  <bruno@clisp.org>
20844
20845         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
20846         /bin/sh understanding of '!' conditional negation.
20847
20848 2006-08-21  Jim Meyering  <jim@meyering.net>
20849
20850         * modules/openat (Depends-on): Really alphabetize.
20851
20852         * modules/acl (Depends-on): Add error and quote.
20853
20854         * check-module (find_included_lib_files): Add at-func.c to the
20855         ok-to-include-more-than-once white list.
20856
20857         * modules/openat (Depends-on): Add lstat.  Alphabetize.
20858
20859 2006-08-21  Bruno Haible  <bruno@clisp.org>
20860
20861         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20862         Emit a pkgdata_DATA variable only if some snippets add contents to it.
20863         Reported by Martin Lambers <marlam@marlam.de>.
20864
20865 2006-08-21  Bruno Haible  <bruno@clisp.org>
20866
20867         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
20868         specify an installation location, don't emit a noinst_LIBRARIES or
20869         noinst_LTLIBRARIES assignment.
20870
20871 2006-08-21  Bruno Haible  <bruno@clisp.org>
20872
20873         BeOS portability.
20874         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
20875         BeOS has mbrtowc() but no <wctype.h>.
20876
20877 2006-08-21  Bruno Haible  <bruno@clisp.org>
20878
20879         BeOS portability.
20880         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
20881         exist.
20882
20883 2006-08-21  Bruno Haible  <bruno@clisp.org>
20884
20885         BeOS portability.
20886         * lib/mbchar.h: Include <wctype.h> only if it exists.
20887
20888 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20889
20890         Remove files that are no longer needed by their respective modules.
20891         * m4/obstack.m4: Remove.
20892         * m4/strerror_r.m4: Remove.
20893         * m4/uint32_t.m4: Remove.
20894         * m4/uintptr_t.m4: Remove.
20895         * m4/ullong_max.m4: Remove.
20896         * m4/xstrtoimax.m4: Remove.
20897         * m4/xstrtoumax.m4: Remove.
20898
20899         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
20900         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
20901         dependencies now capture this.
20902
20903         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
20904         Do not use AC_LIBSOURCES, since gnulib modules now do this.
20905         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
20906         * m4/human.m4 (gl_HUMAN): Likewise.
20907         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
20908         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
20909
20910         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
20911
20912         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
20913         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
20914         stdint.
20915         * m4/human.m4 (gl_HUMAN): Likewise.
20916         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
20917         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
20918         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
20919         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
20920         * m4/xstrtol (gl_XSTRTOL): Likewise.
20921
20922         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
20923         AC_TYPE_LONG_LONG_INT.
20924         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
20925         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
20926         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
20927         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
20928
20929         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
20930         on stdbool.
20931
20932         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
20933         (gl_PREREQ_XSTRTOUL): Remove.
20934
20935         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
20936
20937         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
20938         mode.
20939
20940 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20941
20942         Add and change modules to make it easier for coreutils to use
20943         gnulib-tool.
20944         * modules/backupfile (Files): Remove m4/d-ino.m4.
20945         (Depends-on): Add d-ino.
20946         * modules/cycle-check (Depends-on): Add stdint.
20947         (lib_SOURCES): Add cycle-check.h.
20948         * modules/d-ino: New module.
20949         * modules/d-type: New module.
20950         * modules/error (Files): Remove m4/strerror_r.m4.
20951         * modules/filemode (Files): Add m4/st_dm_mode.m4.
20952         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
20953         m4/inttypes_h.m4, m4/uintmax_t.m4.
20954         (Depends-on): Add stdint.
20955         (lib_SOURCES): Add fsusage.h.
20956         * modules/getcwd (Files): Remove d-ino.m4.
20957         (Depends-on): Add d-ino.
20958         * modules/getndelim2 (Depends-on): Add stdint.
20959         * modules/glob (Files): Remove m4/d-type.m4.
20960         (Depends-on): Add d-type.
20961         * modules/host-os: New module.
20962         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
20963         m4/inttypes_h.m4, m4/uintmax_t.m4.
20964         * Depends-on: Add stdint.
20965         (lib_SOURCES): Add human.h.
20966         * modules/inttostr (Files): Remove m4/intmax_t.m4,
20967         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
20968         m4/uintmax_t.m4, m4/ulonglong.m4.
20969         (Depends-on): Add stdint.
20970         (EXTRA_DIST): Add inttostr.h.
20971         * modules/lchmod: New module.
20972         * modules/link-follow: New module.
20973         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
20974         (Depends-on): Add lchmod.
20975         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
20976         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
20977         (Depends-on): Add stdint.
20978         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
20979         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
20980         (Depends-on): Add stdint.
20981         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
20982         * modules/perl: New module.
20983         * modules/regex (Depends-on): Add stdint.
20984         * modules/rmdir-errno: New module.
20985         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
20986         m4/intmax_t.m4.
20987         (Depends-on): Add stdint.
20988         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
20989         m4/uintmax_t.m4.
20990         (Depends-on): Add stdint.
20991         * modules/unlink-busy: New module.
20992         * modules/utimecmp (Depends-on): Add stdint.
20993         * modules/uptime: New module.
20994         * modules/winsz-ioctl: New module.
20995         * modules/winsz-termios: New module.
20996         * modules/xnanosleep (Depends-on): Add nanosleep.
20997         * modules/ullong_max: Remove.
20998         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
20999         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
21000         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
21001         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
21002         (Depends-on): Add inttypes.
21003         (lib_SOURCES): Add xstrtol.h.
21004         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
21005         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
21006         * MODULES.html.sh: Move 'assert' into the assert section.
21007         Move 'dummy' into the linking section.
21008         Remove ullong_max.
21009         Add section for compatibility checks for POSIX:2001 functions,
21010         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
21011         winsz-ioctl, and winsz-termios into it.
21012         Add lchmod.
21013         Add top-level Misc section and put host-os, perl, and uptime
21014         into it.
21015
21016 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21017
21018         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
21019         now assume the stdint module.  Do not include inttypes.h.
21020         * lib/fsusage.h: Likewise.
21021         * lib/getndelim2.c: Likewise.
21022         * lib/human.h: Likewise.
21023         * lib/inttostr.h: Likewise.
21024         * lib/obstack.c: Likewise.
21025         * lib/regex_internal.h: Likewise.
21026         * lib/tempname.c: Likewise.
21027         * lib/utimecmp.c: Likewise.
21028         * lib/xstrtol.h: Likewise.
21029
21030         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
21031
21032         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
21033         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
21034         * lib/xtime.h: Likewise.
21035
21036 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21037
21038         * modules/openat (Files): Add lib/fchmodat.c.
21039         Fixes problem reported by Jay Youngman.
21040
21041 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21042
21043         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
21044         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
21045
21046 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
21047             Bruno Haible  <bruno@clisp.org>
21048
21049         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
21050         and is a script that invokes bison. Tighten the code. Add comments.
21051
21052 2006-08-18  Jim Meyering  <jim@meyering.net>
21053
21054         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
21055         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
21056         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
21057         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
21058
21059 2006-08-18  Bruno Haible  <bruno@clisp.org>
21060
21061         * modules/bison-i18n: New file.
21062         * MODULES.html.sh (Internationalization functions): Add it.
21063
21064 2006-08-18  Bruno Haible  <bruno@clisp.org>
21065
21066         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
21067         sys/statvfs.h. When getmntinfo was found, check its declaration and
21068         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
21069
21070 2006-08-18  Bruno Haible  <bruno@clisp.org>
21071
21072         * m4/bison-i18n.m4: New file, from bison.
21073
21074 2006-08-18  Bruno Haible  <bruno@clisp.org>
21075
21076         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
21077         (ME_DUMMY): Treat "kernfs" as a dummy.
21078         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
21079
21080 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
21081
21082         Update from coreutils.
21083
21084         2006-08-15  Jim Meyering  <jim@meyering.net>
21085
21086         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
21087
21088         2006-01-17  Jim Meyering  <jim@meyering.net>
21089
21090         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
21091
21092         2006-01-11  Jim Meyering  <jim@meyering.net>
21093
21094         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
21095         Check for the lchmod function.
21096
21097 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
21098
21099         Update from coreutils.
21100
21101         * lib/__fpending.h: Add copyright notice.
21102         * lib/fprintftime.h: Likewise.
21103         * lib/savedir.c: Use (C) in copyright notice.
21104         * lib/savedir.h: Likewise.
21105
21106         2006-08-15  Jim Meyering  <jim@meyering.net>
21107
21108         * lib/at-func.c: New file, with the logic of all emulated at-functions.
21109         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
21110         in support of the EXPECTED_ERRNO macro.
21111         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
21112         definitions.  Instead, define the appropriate symbols and include
21113         "at-func.c".
21114         * lib/mkdirat.c (mkdirat): Likewise.
21115         * lib/fchmodat.c (fchmodat): Likewise.
21116         (ENOSYS): Remove definition.
21117         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
21118         it.  Don't include "unistd--.h" -- it wasn't ever used.
21119
21120         2006-01-17  Jim Meyering  <jim@meyering.net>
21121
21122         Rewrite fts.c not to change the current working directory,
21123         by using openat, fstatat, fdopendir, etc..
21124
21125         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
21126         (HAVE_OPENAT_SUPPORT): Define.
21127         [_LIBC] (fchdir): Don't undef or define; no longer used.
21128         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
21129         Now, this `function' always succeeds, and consumes its file descriptor
21130         parameter -- so callers must not close such FDs.  Update callers.
21131         (diropen_fd, opendirat, cwd_advance_fd): New functions.
21132         (diropen): Add parameter, SP.  Adjust all callers.
21133         Implement using diropen_fd, rather than open.
21134         (fts_open): Initialize new member, fts_cwd_fd.
21135         Remove fts_rft-setting code.
21136         (fts_close): Close fts_cwd_fd, if necessary.
21137         (__opendir2): Define in terms of opendir or opendirat,
21138         depending on whether the FST_NOCHDIR flag is set.
21139         (fts_build): Since fts_safe_changedir consumes its FD, and since
21140         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
21141         and close the dup'd file descriptor upon failure.
21142         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
21143         (fts_safe_changedir): Tweak semantics to reflect that this function
21144         now calls cwd_advance_fd and hence consumes its FD argument.
21145         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
21146         [struct FTS] (fts_rft): Remove now-unused member.
21147         [struct FTS] (fts_cycle.state): Improve comment.
21148
21149         * lib/openat.c (openat_needs_fchdir): New function.
21150         * lib/openat.h (openat_needs_fchdir): Declare it.
21151
21152 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
21153
21154         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
21155         Problem and fix reported by Pádraig Brady in
21156         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
21157
21158 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21159
21160         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
21161
21162 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21163
21164         * lib/memcoll.c (memcoll): Optimize for the common case where the
21165         arguments are bytewise equal.
21166
21167 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21168
21169         * doc/regexprops-generic.texi: Add a copyright notice.
21170
21171 2006-08-15  Bruno Haible  <bruno@clisp.org>
21172
21173         * modules/tmpdir (License): Change to LGPL.
21174
21175 2006-08-15  Bruno Haible  <bruno@clisp.org>
21176
21177         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
21178         module.
21179
21180 2006-08-14  Simon Josefsson  <jas@extundo.com>
21181
21182         * config/srclist.txt: Add gnupload.
21183
21184 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21185
21186         Change copyright notice from LGPL 2 to GPL 2, since that's the
21187         standard form used in the gnulib repository.
21188         * tests/test-lock.c: Likewise.
21189         * tests/test-stdint.c: Likewise.
21190         * tests/test-tls.c: Likewise.
21191
21192         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
21193         prelude-manager.  User shorter URLs for GNU projects, without '?'.
21194         Add copyright notice.
21195
21196         * check-module: Add copyright notice.  Output a copyright
21197         notice if "--version" is specified.
21198         * modules/COPYING: New file.
21199         * tests/test-getaddrinfo.c: Add copyright notice.
21200         * tests/test-verify.c: Likewise.
21201
21202 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21203
21204         Change copyright notice from LGPL 2 to GPL 2, since that's the
21205         standard form used in the gnulib repository.
21206         * lib/lock.c: LGPL -> GPL.
21207         * lib/lock.h: Likewise.
21208         * lib/strnlen1.c: Likewise.
21209         * lib/strnlen1.h: Likewise.
21210         * lib/tls.c: Likewise.
21211         * lib/tls.h: Likewise.
21212         * lib/tmpdir.c: Likewise.
21213
21214         * lib/TODO: Remove; this belongs only in coreutils.
21215
21216 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21217
21218         Add copyright notices to long-enough files that lack them, since
21219         otherwise the files aren't clearly free.  Use the same notice that
21220         getdate.texi already uses.
21221         * doc/alloca-opt.texi: Add copyright notice.
21222         * doc/alloca.texi: Likewise.
21223         * doc/ctime.texi: Likewise.
21224         * doc/functions.texi: Likewise.
21225         * doc/gcd.texi: Likewise.
21226         * doc/gnulib-tool.texi: Likewise.
21227         * doc/inet_ntoa.texi: Likewise.
21228         * doc/visibility.texi: Likewise.
21229
21230         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
21231         * doc/quote.texi: Add copyright notice.
21232
21233         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
21234         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
21235         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
21236         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
21237         is now obsolete, and give a pointer to the Sun list.
21238         Add copyright notice.
21239
21240 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21241
21242         * config/srclistvars.sh: Add copyright notice.
21243
21244 2006-08-14  Eric Blake  <ebb9@byu.net>
21245
21246         Import the following change from libc:
21247
21248         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
21249
21250         Upstream bug 2997.
21251         * lib/misc/error.c: Add space between program name and message if file
21252         name is missing.
21253
21254 2006-08-12  Karl Berry  <karl@gnu.org>
21255
21256         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
21257         remove, these originate in gnulib now.
21258
21259 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21260
21261         * doc/Makefile (standards.info standards.html standards.dvi):
21262         Also depend on make-stds.texi.
21263
21264 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
21265
21266         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
21267         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
21268
21269         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
21270         in wchar_t.  Problem reported by Eric Blake.
21271
21272         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
21273         LEN is smaller than SIZE.  Suggested by Bruno Haible.
21274         Also, help the compiler to keep LEN in a register.
21275
21276 2006-08-11  Eric Blake  <ebb9@byu.net>
21277
21278         * users.txt: Sort.  Add tar.
21279
21280 2006-08-11  Bruno Haible  <bruno@clisp.org>
21281
21282         * users.txt: New file.
21283
21284 2006-08-11  Bruno Haible  <bruno@clisp.org>
21285
21286         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
21287         before <wchar.h>. Needed for OSF/1 and BSD/OS.
21288
21289 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
21290
21291         * modules/snprintf (Depends-on): Remove minmax.
21292         (Maintainer): Add self and Bruno.
21293
21294 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
21295
21296         * lib/.cppi-disable: Add snprintf.h, socket_.h.
21297         * lib/snprintf.c: Include <errno.h> and <limits.h>.
21298         (EOVERFLOW): Define if the system does not.
21299         Do not include "minmax.h"; it wasn't used.
21300         (snprintf): Don't assume size_t promotes to an unsigned type.
21301         Fix bug when generated string was too long for the buffer: the
21302         buffer's contents are supposed to be the initial prefix of the
21303         output.  Don't assume vasnprintf returns EOVERFLOW if the size
21304         exceeds INT_MAX; do the check ourselves.
21305
21306         Import the following changes from libc:
21307
21308         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
21309
21310         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
21311         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
21312         set wc to the byte which couldn't be converted.
21313         (re_string_reconstruct): Don't clear valid_raw_len before calling
21314         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
21315         tip_context using re_string_context_at.
21316
21317         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
21318
21319         * lib/posix/regex.h: g++ still cannot handled [restrict].
21320
21321         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
21322
21323         * lib/posix/regex.h: Remove special handling for VMS.
21324
21325 2006-08-10  Jim Meyering  <jim@meyering.net>
21326
21327         * modules/same-inode: New module.
21328         * modules/dev-ino: New module.
21329         * modules/cycle-check: Depend on these modules, rather than simply
21330         including their .h files.
21331         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
21332         required via m4/cycle-check.m4.
21333         * modules/same: Depend on new same-inode module, rather than
21334         including same-inode.h.
21335         * modules/chdir-safer: New file.
21336
21337         * modules/chown (Depends-on): Add stat-macros.
21338
21339 2006-08-10  Jim Meyering  <jim@meyering.net>
21340
21341         * m4/cycle-check.m4: New file.
21342         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
21343         * m4/dev-ino.m4, m4/same-inode.m4: New files.
21344
21345 2006-08-10  Eric Blake  <ebb9@byu.net>
21346
21347         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
21348         in from original proposal.
21349
21350 2006-08-10  Eric Blake  <ebb9@byu.net>
21351         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
21352
21353         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
21354         namespace.
21355
21356 2006-08-10  Bruno Haible  <bruno@clisp.org>
21357
21358         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
21359         as well.
21360
21361 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
21362
21363         Sync from coreutils.
21364
21365         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
21366
21367         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
21368         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
21369
21370 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
21371
21372         * modules/restrict: Remove; no longer needed now that we assume
21373         Autoconf 2.59 or later.
21374         * MODULES.html.sh: Remove 'restrict'.
21375         * modules/argp (Depends-on): Remove 'restrict'.
21376         * modules/base64 (Depends-on): Likewise.
21377         * modules/gc (Depends-on): Likewise.
21378         * modules/getaddrinfo (Depends-on): Likewise.
21379         * modules/glob (Depends-on): Likewise.
21380         * modules/inet_ntop (Depends-on): Likewise.
21381         * modules/inet_pton (Depends-on): Likewise.
21382         * modules/memxor (Depends-on): Likewise.
21383         * modules/regex (Depends-on): Likewise.
21384         * modules/strtok_r (Depends-on): Likewise.
21385         * modules/time_r (Depends-on): Likewise.
21386
21387 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
21388
21389         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
21390         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
21391         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
21392         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
21393         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
21394         * m4/memxor.m4 (gl_MEMXOR): Likewise.
21395         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
21396         gl_C_RESTRICT replaced by AC_C_RESTRICT.
21397
21398         Merge from coreutils.
21399         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
21400         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
21401         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
21402         * m4/time_r.m4 (gl_TIME_R): Likewise.
21403
21404 2006-08-09  Karl Berry  <karl@gnu.org>
21405
21406         * config/srclist.txt: no more gettext-tools, per Bruno.
21407
21408 2006-08-08  Eric Blake  <ebb9@byu.net>
21409
21410         * modules/verror: New module.
21411         * MODULES.html.sh: Document it.
21412
21413 2006-08-08  Eric Blake  <ebb9@byu.net>
21414
21415         * lib/verror.h, lib/verror.c: New files.
21416
21417 2006-08-08  Eric Blake  <ebb9@byu.net>
21418
21419         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
21420         verror_at_line output complies with GNU Coding Standards even when
21421         file is NULL.
21422
21423 2006-08-07  Bruno Haible  <bruno@clisp.org>
21424
21425         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
21426         versions of AIX.
21427         Reported by Ralf Wildenhues.
21428
21429 2006-08-07  Bruno Haible  <bruno@clisp.org>
21430
21431         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
21432         in an AC_DEFUN. Needed so that the autoconf snippets can use
21433         AC_REQUIRE.
21434
21435 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21436
21437         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21438         Initialize pkgdata_DATA.
21439         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
21440         overriding it.
21441
21442 2006-08-06  Eric Blake  <ebb9@byu.net>
21443
21444         * lib/error.h: Fold in some upstream changes from glibc.
21445         * lib/error.c: Likewise.
21446
21447 2006-08-04  Bruno Haible  <bruno@clisp.org>
21448
21449         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21450         Make the mostlyclean-local rule depend on mostlyclean-generic.
21451         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
21452
21453 2006-07-31  Bruno Haible  <bruno@clisp.org>
21454
21455         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
21456         <stdlib.h>, <string.h>.
21457
21458 2006-07-30  Bruno Haible  <bruno@clisp.org>
21459
21460         * modules/readlink (License): Change to LGPL.
21461
21462 2006-07-30  Bruno Haible  <bruno@clisp.org>
21463
21464         * modules/javaversion (Makefile.am): Distribute javaversion.java and
21465         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
21466         set PKGDATADIR to point to it.
21467
21468 2006-07-30  Bruno Haible  <bruno@clisp.org>
21469
21470         * modules/csharpexec (configure.ac): Comment out macro invocation.
21471         * modules/javaexec (configure.ac): Likewise.
21472         * modules/javacomp-script (configure.ac): Likewise.
21473
21474         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
21475
21476 2006-07-30  Bruno Haible  <bruno@clisp.org>
21477
21478         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
21479         linked-list.
21480
21481 2006-07-30  Bruno Haible  <bruno@clisp.org>
21482
21483         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
21484
21485 2006-07-30  Bruno Haible  <bruno@clisp.org>
21486
21487         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21488         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
21489         get removed.
21490
21491 2006-07-29  Bruno Haible  <bruno@clisp.org>
21492
21493         Make it possible for gnulib-tool to work with locally modified or
21494         augmented gnulib repositories.
21495         * gnulib-tool (func_usage): Document --local-dir option.
21496         (local_gnulib_dir): New variable.
21497         Handle --local-dir option.
21498         (func_lookup_file): New function.
21499         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
21500         (func_get_description, func_get_filelist, func_get_description,
21501         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
21502         func_get_automake_snippet, func_get_include_directive,
21503         func_get_license, func_get_maintainer): Use func_lookup_file.
21504         (func_import, func_create_testdir): Use func_lookup_file.
21505
21506 2006-07-29  Bruno Haible  <bruno@clisp.org>
21507
21508         * modules/setenv (Depends-on): Add unistd.
21509
21510 2006-07-29  Bruno Haible  <bruno@clisp.org>
21511
21512         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
21513
21514 2006-07-29  Bruno Haible  <bruno@clisp.org>
21515
21516         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
21517
21518 2006-07-29  Bruno Haible  <bruno@clisp.org>
21519
21520         * gnulib-tool (import, update): If there is no Makefile.am, look at
21521         aclocal.m4, instead of bailing out.
21522
21523 2006-07-29  Bruno Haible  <bruno@clisp.org>
21524
21525         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
21526         Categorize the options by when they are useful.
21527
21528 2006-07-29  Bruno Haible  <bruno@clisp.org>
21529
21530         * gnulib-tool (func_usage): Document option --no-libtool.
21531         Handle option --no-libtool.
21532         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
21533         for changed semantics of $libtool variable.
21534         (func_import): Likewise. If libtool is not used, show this through
21535         an option --no-libtool.
21536         (func_create_testdir): Update.
21537
21538 2006-07-29  Bruno Haible  <bruno@clisp.org>
21539
21540         * gnulib-tool (func_import): Extend error message about missing
21541         --doc-base.
21542
21543 2006-07-29  Bruno Haible  <bruno@clisp.org>
21544
21545         * gnulib-tool (func_import): Don't create the $docbase directory if
21546         there is no file to store there.
21547
21548 2006-07-29  Bruno Haible  <bruno@clisp.org>
21549
21550         * gnulib-tool (autoconf_minversion): If a --dir option is given and
21551         relevant, look for configure.ac there, not in the current directory.
21552         Also use a simple search for AC_PREREQ, not "autoconf --trace".
21553
21554 2006-07-29  Bruno Haible  <bruno@clisp.org>
21555
21556         * gnulib-tool (SORT): New variable.
21557         (func_usage): Undocument --assume-autoconf option.
21558         Remove --assume-autoconf option handling.
21559         (autoconf_minversion): Determine from the contents of configure.ac.
21560         (func_import): Remove autoconf_minversion handling.
21561         Suggested by Eric Blake.
21562
21563 2006-07-29  Bruno Haible  <bruno@clisp.org>
21564
21565         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
21566
21567 2006-07-29  Bruno Haible  <bruno@clisp.org>
21568
21569         * config/srclist.txt (*setenv.[ch]): Remove rules.
21570
21571 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21572
21573         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
21574
21575 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21576
21577         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
21578         arpa/inet.h.
21579
21580 2006-07-28  Simon Josefsson  <jas@extundo.com>
21581
21582         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
21583         * modules/inet_pton (Depends-on): Likewise.
21584
21585 2006-07-28  Simon Josefsson  <jas@extundo.com>
21586
21587         * m4/netinet_in_h.m4: New file.
21588
21589 2006-07-28  Simon Josefsson  <jas@extundo.com>
21590
21591         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
21592         #include's.
21593
21594 2006-07-28  Simon Josefsson  <jas@extundo.com>
21595
21596         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
21597         #include's.
21598
21599 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
21600
21601         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
21602         setgid on directories only if they set these bits.
21603         * lib/modechange.h: Remove obsolete comment about masks.
21604
21605 2006-07-28  Eric Blake  <ebb9@byu.net>
21606
21607         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
21608         macro expansion.
21609
21610 2006-07-28  Bruno Haible  <bruno@clisp.org>
21611
21612         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
21613
21614 2006-07-28  Bruno Haible  <bruno@clisp.org>
21615
21616         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
21617
21618 2006-07-28  Bruno Haible  <bruno@clisp.org>
21619
21620         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
21621         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
21622         Define fallbacks.
21623         Avoids link error on FreeBSD 4.x.
21624         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
21625
21626         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
21627         encoding.
21628         * lib/mbswidth.c (iswcntrl): Likewise.
21629
21630 2006-07-27  Bruno Haible  <bruno@clisp.org>
21631
21632         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
21633         test.
21634
21635 2006-07-27  Bruno Haible  <bruno@clisp.org>
21636
21637         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
21638         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
21639         defined.
21640
21641 2006-07-26  Eric Blake  <ebb9@byu.net>
21642
21643         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
21644
21645 2006-07-26  Eric Blake  <ebb9@byu.net>
21646
21647         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
21648         like mingw that lack mkstemp.
21649         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
21650         avoid compilation warning on mingw.
21651
21652 2006-07-26  Bruno Haible  <bruno@clisp.org>
21653
21654         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
21655         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
21656         INT_FAST*_MIN, INTPTR_MIN.
21657
21658 2006-07-25  Bruno Haible  <bruno@clisp.org>
21659
21660         * modules/version-etc (Depends-on): Add stdarg.
21661
21662 2006-07-25  Bruno Haible  <bruno@clisp.org>
21663
21664         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
21665         complex commands.
21666
21667 2006-07-25  Bruno Haible  <bruno@clisp.org>
21668
21669         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
21670         defined in <stdarg.h> or config.h.
21671
21672 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
21673
21674         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
21675         (gl_STDIO_SAFER): Remove.
21676
21677 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
21678
21679         * MODULES.html.sh (File stream based Input/Output):
21680         Add fopen-safer, tmpfile-safer; remove stdio-safer.
21681         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
21682         * modules/fopen-safer, modules/tmpfile-safer: New files.
21683         * modules/stdio-safer: Remove.
21684
21685 2006-07-24  Bruno Haible  <bruno@clisp.org>
21686
21687         * modules/tmpdir: New file.
21688         * MODULES.html.sh (File system functions): Add it.
21689
21690 2006-07-24  Bruno Haible  <bruno@clisp.org>
21691
21692         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
21693         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
21694
21695 2006-07-24  Bruno Haible  <bruno@clisp.org>
21696
21697         * modules/clean-temp: New file.
21698
21699 2006-07-24  Bruno Haible  <bruno@clisp.org>
21700
21701         * m4/tmpdir.m4: New file, from GNU gettext.
21702
21703 2006-07-24  Bruno Haible  <bruno@clisp.org>
21704
21705         * lib/tmpdir.h: New file, from GNU gettext.
21706         * lib/tmpdir.c: New file, from GNU gettext.
21707
21708 2006-07-24  Bruno Haible  <bruno@clisp.org>
21709
21710         * lib/clean-temp.h: New file, from GNU gettext.
21711         * lib/clean-temp.c: New file, from GNU gettext.
21712
21713 2006-07-23  Eric Blake  <ebb9@byu.net>
21714
21715         * modules/stdio-safer (Files): Add tmpfile-safer.c.
21716         (Depends-on): Add binary-io.
21717
21718 2006-07-23  Eric Blake  <ebb9@byu.net>
21719
21720         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
21721
21722 2006-07-23  Eric Blake  <ebb9@byu.net>
21723
21724         * lib/tmpfile-safer.c: New file.
21725         * lib/stdio-safer.h (fopen_safer): Add prototype.
21726         * lib/stdio--.h (tmpfile): Make safer.
21727
21728 2006-07-23  Bruno Haible  <bruno@clisp.org>
21729
21730         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
21731         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
21732         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
21733         gl_linked_remove_at): Use it.
21734
21735 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21736         and Simon Josefsson <jas@extundo.com>
21737
21738         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
21739
21740         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
21741
21742 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
21743
21744         * modules/close-stream: New file.
21745         * modules/closeout (Description): Make it clear that it exits
21746         with a diagnostic on error.
21747         (Depends-on): Add close-stream.  Remove fpending, stdbool.
21748         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
21749
21750 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
21751
21752         * m4/close-stream.m4: New file.
21753
21754 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
21755
21756         * lib/close-stream.c, lib/close-stream.h: New files.
21757
21758 2006-07-22  Bruno Haible  <bruno@clisp.org>
21759
21760         Merge from GNU gettext 0.15.
21761
21762         2006-05-01  Bruno Haible  <bruno@clisp.org>
21763
21764                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
21765
21766         2006-07-22  Bruno Haible  <bruno@clisp.org>
21767
21768                 * modules/javaversion: New file.
21769                 * MODULES.html.sh (Java): Add javaversion.
21770
21771         2006-03-12  Bruno Haible  <bruno@clisp.org>
21772
21773                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
21774
21775         2005-12-04  Bruno Haible  <bruno@clisp.org>
21776
21777                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
21778                 (untested).
21779
21780         2006-06-21  Bruno Haible  <bruno@clisp.org>
21781
21782                 Avoid warnings from recent versions of mcs.
21783                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
21784                 -o, -L, -r any more. Use options documented since mcs-1.0
21785                 instead. Similarly for -g.
21786
21787         2005-12-04  Bruno Haible  <bruno@clisp.org>
21788
21789                 * build-aux/csharpcomp.sh.in: Suffix for resources is
21790                 .resources, not .resource.
21791
21792         2005-07-09  Bruno Haible  <bruno@clisp.org>
21793
21794                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
21795                 add a .dll suffix.
21796                 Reported by Mark Junker <mjscod@gmx.de>.
21797
21798         2006-07-22  Bruno Haible  <bruno@clisp.org>
21799
21800                 * modules/gettext: Upgrade to gettext-0.15.
21801                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
21802                 m4/visibility.m4.
21803                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
21804
21805 2006-07-22  Bruno Haible  <bruno@clisp.org>
21806
21807         Merge from GNU gettext 0.15.
21808
21809         2006-03-25  Bruno Haible  <bruno@clisp.org>
21810
21811                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
21812
21813         2006-07-21  Bruno Haible  <bruno@clisp.org>
21814
21815                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
21816                 "1.1".
21817
21818         2006-05-09  Bruno Haible  <bruno@clisp.org>
21819
21820                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
21821                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
21822                 for the conftestver execution.
21823
21824         2006-05-01  Bruno Haible  <bruno@clisp.org>
21825
21826                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
21827                 optional target-version argument. Verify that the compiler
21828                 groks source of the specified source-version, or add -source
21829                 option as necessary. Verify that the compiler produces
21830                 bytecode in the specified target-version, or add -target and
21831                 -source options as necessary. Make the result of the test
21832                 available as variable CONF_JAVAC. Also log error output in
21833                 config.log.
21834
21835         2006-03-11  Bruno Haible  <bruno@clisp.org>
21836
21837                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
21838
21839         2006-05-09  Bruno Haible  <bruno@clisp.org>
21840
21841                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
21842                 CLASSPATH_SEPARATOR to a semicolon.
21843
21844         2006-03-12  Bruno Haible  <bruno@clisp.org>
21845
21846                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
21847                 available as variable CONF_JAVA, for subsequent autoconf
21848                 tests. Also log error output in config.log.
21849
21850         2006-07-19  Bruno Haible  <bruno@clisp.org>
21851
21852                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
21853                 that getline works on glibc2 systems. Needed to avoid trouble
21854                 in relocatable.c.
21855                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
21856
21857         2005-12-04  Bruno Haible  <bruno@clisp.org>
21858
21859                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
21860                 launcher (untested).
21861
21862         2005-12-04  Bruno Haible  <bruno@clisp.org>
21863
21864                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
21865
21866         2006-07-22  Bruno Haible  <bruno@clisp.org>
21867
21868                 * gettext.m4: Update from GNU gettext-0.15.
21869                 * nls.m4: Likewise.
21870                 * po.m4: Likewise.
21871                 * inttypes-pri.m4: Likewise.
21872                 * inttypes-h.m4: Renamed from inttypes.m4.
21873                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
21874
21875 2006-07-22  Bruno Haible  <bruno@clisp.org>
21876
21877         Merge from GNU gettext 0.15.
21878
21879         2005-07-05  Bruno Haible  <bruno@clisp.org>
21880
21881                 * printf-args.c (printf_fetchargs): Work around broken
21882                 definition of wint_t on mingw.
21883
21884         2005-02-12  Bruno Haible  <bruno@clisp.org>
21885
21886                 * xallocsa.h: Add extern "C" for C++.
21887
21888         2006-05-17  Bruno Haible  <bruno@clisp.org>
21889
21890                 Cygwin portability.
21891                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
21892
21893         2006-04-30  Bruno Haible  <bruno@clisp.org>
21894
21895                 * progreloc.c: Include <mach-o/dyld.h> if available.
21896                 (find_executable): Use _NSGetExecutablePath when possible.
21897
21898         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
21899
21900                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
21901                 function.
21902
21903         2005-12-29  Bruno Haible  <bruno@clisp.org>
21904
21905                 * progreloc.c (set_program_name_and_installdir): Fix
21906                 compilation error.
21907
21908         2005-12-04  Bruno Haible  <bruno@clisp.org>
21909
21910                 Cygwin portability.
21911                 * progreloc.c: Include <windows.h> also on Cygwin.
21912                 (find_executable): Add support for Cygwin.
21913                 (set_program_name_and_installdir): Handle also platforms with
21914                 nonempty EXEEXT.
21915
21916         2006-07-11  Bruno Haible  <bruno@clisp.org>
21917
21918                 * javacomp.c: Fix a comment.
21919                 Reported by Jim Meyering.
21920
21921         2006-04-30  Bruno Haible  <bruno@clisp.org>
21922
21923                 * javacomp.h (compile_java_class): Add source_version,
21924                 target_version arguments.
21925                 * javacomp.c: Rewritten to choose only a compiler that
21926                 respects the specified source_version and target_version.
21927
21928         2006-06-27  Bruno Haible  <bruno@clisp.org>
21929
21930                 Assume correct S_ISDIR macro.
21931                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
21932
21933         2006-07-22  Bruno Haible  <bruno@clisp.org>
21934
21935                 * javaversion.h: New file, from GNU gettext.
21936                 * javaversion.c: New file, from GNU gettext.
21937                 * javaversion.java: New file, from GNU gettext.
21938                 * javaversion.class: New file, from GNU gettext.
21939
21940         2006-05-17  Bruno Haible  <bruno@clisp.org>
21941
21942                 Cygwin portability.
21943                 * javaexec.c (execute_java_class): Test for jview program
21944                 also on Cygwin.
21945
21946         2006-04-09  Bruno Haible  <bruno@clisp.org>
21947
21948                 * fatal-signal.c: Don't include string.h.
21949                 (at_fatal_signal): Use a copying loop instead of memcpy.
21950
21951         2005-12-04  Bruno Haible  <bruno@clisp.org>
21952
21953                 * csharpexec.c: Add support for 'clix' launcher (untested).
21954                 (execute_csharp_using_sscli): New function.
21955                 (execute_csharp_program): Call it.
21956
21957         2006-06-21  Bruno Haible  <bruno@clisp.org>
21958
21959                 Avoid warnings from recent versions of mcs.
21960                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
21961                 -o, -L, -r any more. Use options documented since mcs-1.0
21962                 instead. Similarly for -g.
21963
21964         2005-07-09  Bruno Haible  <bruno@clisp.org>
21965
21966                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
21967                 add a .dll suffix.
21968                 Reported by Mark Junker <mjscod@gmx.de>.
21969
21970         2006-06-17  Bruno Haible  <bruno@clisp.org>
21971
21972                 * config.charset: Update for NetBSD 3.0.
21973
21974         2006-05-17  Bruno Haible  <bruno@clisp.org>
21975
21976                 Cygwin portability.
21977                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
21978
21979         2006-05-16  Bruno Haible  <bruno@clisp.org>
21980
21981                 * localcharset.c [CYGWIN]: Include <windows.h>.
21982                 (get_charset_aliases): For Cygwin, return the same CPxxx
21983                 aliases list as under WIN32.
21984                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
21985                 the environment variables. Fall back to GetACP().
21986
21987         2006-04-05  Bruno Haible  <bruno@clisp.org>
21988
21989                 * config.charset: Update Juan Manuel Guerrero's address.
21990
21991         2005-02-12  Bruno Haible  <bruno@clisp.org>
21992
21993                 * allocsa.h: Add extern "C" for C++.
21994
21995         2005-02-10  Bruno Haible  <bruno@clisp.org>
21996
21997                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
21998                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
21999
22000         2006-07-22  Bruno Haible  <bruno@clisp.org>
22001
22002                 * gettext.h: Update to GNU gettext-0.15.
22003
22004 2006-07-22  Bruno Haible  <bruno@clisp.org>
22005
22006         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
22007         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
22008         lib-prefix.m4, longdouble.m4, ssize_t.m4.
22009
22010 2006-07-21  Eric Blake  <ebb9@byu.net>
22011
22012         * modules/stdlib-safer: New file.
22013         * MODULES.html.sh (File stream based Input/Output): Add
22014         stdlib-safer.
22015
22016 2006-07-21  Eric Blake  <ebb9@byu.net>
22017
22018         * lib/stdlib-safer.h: New file from coreutils, required by
22019         stdlib--.h.
22020
22021 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
22022
22023         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
22024
22025 2006-07-20  Bruno Haible  <bruno@clisp.org>
22026
22027         * gnulib-tool: Recognize new option --assume-autoconf.
22028         (autoconf_minversion): New variable.
22029         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
22030
22031 2006-07-20  Bruno Haible  <bruno@clisp.org>
22032
22033         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
22034
22035 2006-07-19  Derek R. Price  <derek@ximbiot.com>
22036
22037         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
22038         Reindent and repaginate.
22039
22040 2006-07-19  Derek Price  <derek@ximbiot.com>
22041
22042         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
22043         Correct grammar.
22044
22045 2006-07-17  Bruno Haible  <bruno@clisp.org>
22046
22047         * modules/list: New file.
22048         * modules/array-list: New file.
22049         * modules/carray-list, modules/carray-list-tests: New files.
22050         * modules/linked-list, modules/linked-list-tests: New files.
22051         * modules/avltree-list, modules/avltree-list-tests: New files.
22052         * modules/rbtree-list, modules/rbtree-list-tests: New files.
22053         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
22054         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
22055         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
22056         * modules/oset: New file.
22057         * modules/array-oset: New file.
22058         * modules/avltree-oset, modules/avltree-oset-tests: New files.
22059         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
22060         * tests/test-carray_list.c: New file.
22061         * tests/test-linked_list.c: New file.
22062         * tests/test-avltree_list.c: New file.
22063         * tests/test-rbtree_list.c: New file.
22064         * tests/test-linkedhash_list.c: New file.
22065         * tests/test-avltreehash_list.c: New file.
22066         * tests/test-rbtreehash_list.c: New file.
22067         * tests/test-avltree_oset.c: New file.
22068         * tests/test-rbtree_oset.c: New file.
22069         * MODULES.html.sh (Container data structures): New section.
22070
22071 2006-07-17  Bruno Haible  <bruno@clisp.org>
22072
22073         * m4/gl_list.m4: New file.
22074
22075 2006-07-17  Bruno Haible  <bruno@clisp.org>
22076
22077         * lib/gl_list.h: New file.
22078         * lib/gl_list.c: New file.
22079         * lib/gl_array_list.h: New file.
22080         * lib/gl_array_list.c: New file.
22081         * lib/gl_carray_list.h: New file.
22082         * lib/gl_carray_list.c: New file.
22083         * lib/gl_linked_list.h: New file.
22084         * lib/gl_linked_list.c: New file.
22085         * lib/gl_anylinked_list1.h: New file.
22086         * lib/gl_anylinked_list2.h: New file.
22087         * lib/gl_avltree_list.h: New file.
22088         * lib/gl_avltree_list.c: New file.
22089         * lib/gl_anyavltree_list1.h: New file.
22090         * lib/gl_anyavltree_list2.h: New file.
22091         * lib/gl_rbtree_list.h: New file.
22092         * lib/gl_rbtree_list.c: New file.
22093         * lib/gl_anyrbtree_list1.h: New file.
22094         * lib/gl_anyrbtree_list2.h: New file.
22095         * lib/gl_anytree_list1.h: New file.
22096         * lib/gl_anytree_list2.h: New file.
22097         * lib/gl_linkedhash_list.h: New file.
22098         * lib/gl_linkedhash_list.c: New file.
22099         * lib/gl_anyhash_list1.h: New file.
22100         * lib/gl_anyhash_list2.h: New file.
22101         * lib/gl_avltreehash_list.h: New file.
22102         * lib/gl_avltreehash_list.c: New file.
22103         * lib/gl_rbtreehash_list.h: New file.
22104         * lib/gl_rbtreehash_list.c: New file.
22105         * lib/gl_anytreehash_list1.h: New file.
22106         * lib/gl_anytreehash_list2.h: New file.
22107
22108         * lib/gl_oset.h: New file.
22109         * lib/gl_oset.c: New file.
22110         * lib/gl_array_oset.h: New file.
22111         * lib/gl_array_oset.c: New file.
22112         * lib/gl_avltree_oset.h: New file.
22113         * lib/gl_avltree_oset.c: New file.
22114         * lib/gl_rbtree_oset.h: New file.
22115         * lib/gl_rbtree_oset.c: New file.
22116         * lib/gl_anytree_oset.h: New file.
22117
22118 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
22119
22120         * m4/mkancesdirs.m4: New file.
22121         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
22122         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
22123         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
22124         it.
22125
22126 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
22127
22128         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
22129         * lib/mkancesdirs.h: New files.
22130         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
22131         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
22132         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
22133         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
22134         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
22135         callers changed.  Revamp internals significantly, by not
22136         attempting to create directories that are temporarily more
22137         permissive than the final results.  Do not attempt to use
22138         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
22139         This removes some race conditions, fixes some bugs, and simplifies
22140         things.  Use new dirchownmod function to do owner and mode changes.
22141         * lib/mkdir-p.h: Likewise.
22142         * lib/modechange.c (octal_to_mode): New function.
22143         (struct mode_change): New member mentioned.
22144         (make_node_op_equals): New arg mentioned.  All callers changed.
22145         (mode_compile): Keep track of which mode bits the user has explicitly
22146         mentioned.
22147         (mode_adjust): New arg DIR, so that we implement the X op correctly.
22148         New arg PMODE_BITS, to keep track of which mode bits the user
22149         mentioned; it treats S_ISUID and S_ISGID speciall.
22150         All callers changed.
22151         * lib/modechange.h: Likewise.
22152
22153 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
22154
22155         * MODULES.html.sh: Add mkancestors.
22156         * modules/mkancesdirs: New module.
22157         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
22158         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
22159         The chdir-safer and afs files are now orphans; I'll remove them
22160         unless someone speaks up.
22161         Add lib/dirchownmod.c, lib/dirchownmod.h.
22162         (Depends-on): Remove alloca, chown, save-cwd, dirname.
22163         Add lchown, mkancesdirs.
22164         (Maintainer): Add self.
22165
22166 2006-07-15  Karl Berry  <karl@gnu.org>
22167
22168         * gnulib-tool: help message wording/arrangement.
22169
22170 2006-07-14  Simon Josefsson  <jas@extundo.com>
22171
22172         * doc/gnulib.texi (Libtool and Windows): New section.
22173
22174 2006-07-12  Simon Josefsson  <jas@extundo.com>
22175
22176         * modules/gendocs (License): Fix license, approved by Karl.
22177
22178 2006-07-12  Eric Blake  <ebb9@byu.net>
22179
22180         * MODULES.html.sh: Add gendocs.
22181
22182 2006-07-11  Eric Blake  <ebb9@byu.net>
22183
22184         * modules/fdl: New module, to install doc/fdl.texi.
22185         * MODULES.html.sh: Add new section for documentation modules.
22186         * gnulib-tool: Avoid space-tab.
22187         (--doc-base): New option, to manage files from doc.
22188
22189 2006-07-11  Eric Blake  <ebb9@byu.net>
22190
22191         * m4/absolute-header.m4: Fix comments to match recent change.
22192
22193 2006-07-11  Eric Blake  <ebb9@byu.net>
22194
22195         * gnulib-tool: List --doc-base before --tests-base.
22196
22197 2006-07-11  Derek R. Price  <derek@ximbiot.com>
22198
22199         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
22200
22201 2006-07-11  Bruno Haible  <bruno@clisp.org>
22202
22203         * README: Mention where to put documentation.
22204
22205 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22206
22207         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
22208
22209 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
22210
22211         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
22212         to stdint.m4.
22213
22214 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
22215
22216         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
22217         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
22218         "no/such/file/stdint.h" when there is no such file, so that
22219         the resulting C code can be parsed by dodgy compilers.
22220         Problems reported by Bob Proulx.
22221
22222 2006-07-10  Derek R. Price  <derek@ximbiot.com>
22223
22224         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
22225         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
22226         macros into the GNU _D_EXACT_NAMLEN.
22227         * lib/savedir.c:  Likewise.
22228         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
22229
22230 2006-07-10  Derek R. Price  <derek@ximbiot.com>
22231         and Paul Eggert  <eggert@cs.ucla.edu>
22232
22233         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
22234         * m4/savedir.m4:
22235         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
22236         macros into the GNU _D_EXACT_NAMLEN.
22237
22238 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
22239
22240         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
22241         around the absolute name, to work around a problem with the HP-UX
22242         11.23 native C compiler, reported by Bob Proulx.
22243
22244 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
22245
22246         * doc/maintain.texi, make-stds.texi: Sync from
22247         <http://savannah.gnu.org/projects/gnustandards>.
22248
22249 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
22250
22251         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
22252
22253 2006-07-09  Jim Meyering  <jim@meyering.net>
22254
22255         * m4/glob.m4: Remove a doubled word in a comment.
22256
22257 2006-07-09  Jim Meyering  <jim@meyering.net>
22258
22259         * lib/argp-pv.c: Remove a doubled word in a comment.
22260         * lib/check-version.c (check_version): Likewise.
22261         * lib/javacomp.c (compile_java_class): Likewise.
22262
22263 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
22264
22265         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
22266         for the benefit of people using Autoconf 2.60.  If you want to
22267         support older Autoconf versions you can copy m4/onceonly_2_57.m4
22268         (or m4/onceonly.m4, if pre-2.57) manually.
22269
22270 2006-07-08  Jim Meyering  <jim@meyering.net>
22271
22272         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
22273         comment.
22274         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
22275         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
22276         comment.
22277
22278 2006-07-08  Jim Meyering  <jim@meyering.net>
22279
22280         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
22281
22282 2006-07-07  Simon Josefsson  <jas@extundo.com>
22283
22284         * tests/test-crc.c: Change expected crc value, the test vector
22285         were probably computed using the old broken crc.c?
22286
22287 2006-07-06  Simon Josefsson  <jas@extundo.com>
22288
22289         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
22290         now the canonical place for the M4 file).
22291
22292         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
22293         from the sys_socket dependency now.
22294
22295         * modules/inet_pton (Files): Ditto.
22296
22297         * modules/inet_ntop (Files): Ditto.
22298
22299 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
22300
22301         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
22302         not gl_PREREQ_GETUSERSHELL.
22303
22304 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22305
22306         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
22307         with only one argument, for Autoconf 2.60.
22308         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
22309         expand to nothing, so add a shell command to avoid syntax error.
22310         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
22311
22312 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22313
22314         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
22315
22316 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22317
22318         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
22319         no longer needed.  Check for isblank decl.
22320         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
22321         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
22322         of existence.
22323
22324 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22325
22326         * lib/getloadavg.c: Use __VMS, not VMS.
22327         * lib/getopt.c: Likewise.
22328         * lib/getpagesize.h: Likewise.
22329         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
22330         and probably does not work.
22331
22332 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22333
22334         * lib/.cppi-disable: Add wcwidth.
22335         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
22336         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
22337         (ISGRAPH): Remove.  All uses changed to isgraph.
22338         (FOLD) [!defined _LIBC]: Remove special case.
22339         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
22340         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
22341         HAVE_ISBLANK.
22342         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
22343         case.
22344
22345 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
22346
22347         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
22348         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
22349         brackets.  Other minor changes to suppress some compiler
22350         warnings.
22351
22352 2006-07-06  Derek R. Price  <derek@ximbiot.com>
22353         and Paul Eggert  <eggert@cs.ucla.edu>
22354
22355         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
22356         of invoking obsolescent AC_HEADER_DIRENT macro.
22357         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
22358         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
22359         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
22360         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
22361         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
22362         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
22363         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
22364         * m4/readdir.m4: Remove; no longer needed.
22365
22366 2006-07-06  Derek R. Price  <derek@ximbiot.com>
22367         and Paul Eggert  <eggert@cs.ucla.edu>
22368
22369         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
22370         Don't worry about this obsolete case any more.
22371         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
22372         directories.
22373         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
22374         worry about this obsolete case any more.
22375         * lib/fts.c: Likewise.
22376         * lib/getcwd.c: Likewise.
22377         * lib/glob.h: Likewise.
22378         * lib/savedir.c: Likewise.
22379
22380 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22381
22382         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
22383         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
22384         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
22385         needed.
22386         All uses removed.
22387         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
22388         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
22389         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
22390         needed.
22391         * m4/getdate.m4 (gl_GETDATE): Likewise.
22392         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
22393         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
22394         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
22395         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
22396         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
22397         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
22398         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
22399         needed.
22400
22401 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22402
22403         * lib/memcasecmp.c: Include <limits.h>.
22404         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
22405         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
22406         Don't assume isdigit succeeds only on '0' through '9'.
22407
22408 2006-07-05  Eric Blake  <ebb9@byu.net>
22409
22410         * modules/getaddrinfo (Depends-on): Add snprintf.
22411
22412 2006-07-05  Eric Blake  <ebb9@byu.net>
22413
22414         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
22415         to avoid 'header present but could not be compiled' on cygwin.
22416
22417 2006-07-05  Eric Blake  <ebb9@byu.net>
22418
22419         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
22420         missing from netdb.h.
22421         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
22422
22423 2006-07-05  Derek R. Price  <derek@ximbiot.com>
22424
22425         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
22426         no longer needed.
22427         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
22428         * m4/getdate.m4 (gl_GETDATE): Likewise.
22429         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
22430         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
22431         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
22432         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
22433         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
22434
22435 2006-07-05  Derek R. Price  <derek@ximbiot.com>
22436
22437         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
22438         All uses of is_space replaced by isspace.
22439         * lib/exit.h: Don't talk about STDC_HEADERS.
22440         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
22441         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
22442         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
22443         replaced by isprint etc.
22444         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
22445         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
22446         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
22447         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
22448         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
22449         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
22450
22451 2006-07-05  Bruno Haible  <bruno@clisp.org>
22452
22453         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
22454         the function exists, before testing against AIX.
22455         Reported by Martin Lambers <marlam@marlam.de>.
22456
22457 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
22458
22459         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
22460         From Mark D. Baushke.
22461
22462 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
22463
22464         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
22465         to the absolute name, not just one, to bypass Sun C 5.8's
22466         "warning: #include of /usr/include/... may be non-portable".
22467
22468 2006-07-04  Eric Blake  <ebb9@byu.net>
22469
22470         * modules/dirname-tests: New test module.
22471         * tests/test-dirname.c: New file, replacing dirname.c
22472         TEST_DIRNAME section that was recently deleted.
22473
22474 2006-07-04  Bruno Haible  <bruno@clisp.org>
22475
22476         Assume ANSI C header files and <ctype.h> functions.
22477         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
22478         (mbsnwidth): Use isprint, iscntrl instead.
22479
22480 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22481
22482         Merge from coreutils.
22483         * MODULES.html.sh: Add xstrtold.
22484         * modules/xstrtold: New file.
22485         * modules/cycle-check (Files): Add lib/same-inode.h.
22486         * modules/dirname (Files): Add m4/double-slash-root.m4.
22487         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
22488         * modules/mkdir-p (Files): Add lib/same-inode.h.
22489         * modules/same (Files): Add lib/same-inode.h.
22490
22491 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22492
22493         * m4/absolute-header.m4: Renamed from full-header-path.m4.
22494         This is to keep the terminology clean; POSIX talks about
22495         "absolute pathnames", not "full pathnames", but the GNU
22496         Coding Standards say to use "path" for something else;
22497         so use "absolute" to keep both sides happy.
22498         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
22499         Set gl_absolute_header, not gl_full_header_path.
22500         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
22501         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
22502         All uses changed.
22503
22504         Merge from coreutils.
22505
22506         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
22507
22508         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
22509         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
22510         want to require the building of c-strtod.o.
22511         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
22512         needs -lm directly.
22513         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
22514
22515         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
22516
22517         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
22518         --as-needed option if available.  Problem reported by Albert Chin in
22519         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
22520         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
22521         cc merely issues a bunch of annoying warnings for --as-needed
22522         (this problem was reported by Bob Proulx).  Also, try linking with
22523         -lm to detect a bug in binutils 2.16 (this problem was reported
22524         by Ralf Wildenhues).
22525
22526         2006-06-18  Jim Meyering  <jim@meyering.net>
22527
22528         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
22529         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
22530         macro.
22531         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
22532         also check for glibc-2.4's abort-inducing bug.
22533
22534         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
22535         Low-probability clean-up should be to use rmdir to get rid of
22536         the just-created directory, not unlink.
22537
22538         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
22539         configure fail, and request a bug report to inform us about it.
22540         Add a comment that, barring reports to the contrary, in 2007 we'll
22541         assume ftruncate is universally available.
22542
22543         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
22544
22545         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
22546
22547         2006-03-12  Jim Meyering  <jim@meyering.net>
22548
22549         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
22550         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
22551         * m4/same.m4 (gl_SAME): Likewise.
22552         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
22553
22554         2006-03-11  Eric Blake  <ebb9@byu.net>
22555
22556         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
22557         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
22558         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
22559         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
22560
22561 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22562
22563         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
22564         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
22565         reported by Mark D. Baushke, one in
22566         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
22567
22568         Merge from coreutils.
22569
22570         * lib/.cppi-disable: Add stdint_.h.
22571         * lib/.cvsignore: Add stdint.h.
22572
22573         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
22574
22575         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
22576         both double and long double versions.
22577         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
22578         * lib/xstrtold.c: New file.
22579         * lib/xstrtod.h (xstrtold): New decl.
22580
22581         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
22582
22583         * lib/filemode.c (setst): Remove.
22584         (strmode): Rewrite to avoid setst.  This makes the code shorter,
22585         (arguably) clearer, and the generated code is a bit smaller on my
22586         Debian GNU/Linux stable x86 host.
22587
22588         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
22589
22590         * lib/filemode.c: Include "filemode.h" first, to test the interface.
22591         Assume that filemode.h includes sys/types.h and sys/stat.h.
22592         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
22593         (ftypelet): Reorder to put common cases first, for efficiency.
22594         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
22595         to do 'M'.
22596         (strmode): Renamed from mode_string, and now stores 12 bytes instead
22597         of 10, for compatibility with FreeBSD.  All callers changed.
22598         (filemodestring): Now stores 12 bytes instead of 10, and sets file
22599         types that can't be deduced solely from st_mode.  First arg is now a
22600         const pointer.
22601         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
22602         (strmode): Renamed from mode_string.
22603         (filemodestring): New decl.
22604         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
22605         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
22606         needed.
22607         (S_ISPORT, S_ISWHT): New macros, if not already defined.
22608
22609         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
22610
22611         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
22612         fsusage.h now does that.  Include fsusage.h first, to test interface.
22613         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
22614         at most one method (the old code could have generated decls that
22615         didn't conform to C89, not that this was ever exercised).
22616         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
22617
22618         2006-03-19  Jim Meyering  <jim@meyering.net>
22619
22620         Work even in a chroot where d_ino values for entries in "/"
22621         don't match the stat.st_ino values for the same names.
22622         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
22623         number, iterate through all entries again, using lstat instead.
22624         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
22625         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
22626
22627         * lib/getcwd.c (__getcwd): Clarify a comment.
22628         Use memcpy in place of a call to strcpy.
22629
22630         2006-03-12  Jim Meyering  <jim@meyering.net>
22631
22632         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
22633         matches that of the current directory (which we're about to chdir ".."
22634         out of), then save the dev-ino of the parent, instead.
22635
22636         * lib/same-inode.h (SAME_INODE): New file/macro.
22637         * lib/chdir-safer.c (SAME_INODE): Remove definition.
22638         Include "same-inode.h", instead.
22639         * lib/same.c: Likewise.
22640         * lib/cycle-check.h: Include "same-inode.h".
22641         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
22642         * lib/cycle-check.c (SAME_INODE): Remove definition.
22643         * lib/root-dev-ino.h: Include "same-inode.h".
22644
22645         2006-03-11  Eric Blake  <ebb9@byu.net>
22646
22647         * lib/same.c (same_name): s/base_name/last_component/
22648         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
22649         * lib/filenamecat.c (file_name_concat): Likewise.
22650
22651         2006-03-11  Eric Blake  <ebb9@byu.net>,
22652                     Paul Eggert  <eggert@cs.ucla.edu>
22653
22654         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
22655         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
22656         drive prefix.
22657         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
22658         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
22659         (last_component): New method.
22660         * lib/dirname.c (dir_len): Determine when drive letters need a
22661         subsequent slash.  Preserve // when it is special.
22662         (dir_name): Don't append dot when drive letter is absolute.
22663         [TEST_DIRNAME]: Move into a full-blown gnulib test.
22664         * lib/basename.c (base_name): New semantics - malloc the result.
22665         Preserve // when it is special.  Preserve relative files that look
22666         like drive letters.
22667         (base_len): Preserve // when it is special.
22668         (last_component): New method, similar to old base_name semantics.
22669         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
22670         base_name.  Strip redundant slashes from ///.
22671
22672 2006-07-03  Jim Meyering  <jim@meyering.net>
22673
22674         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
22675         macro is used before the first cycle_check call.
22676
22677 2006-07-03  Eric Blake  <ebb9@byu.net>
22678
22679         * modules/dirname (Depends-on): Add xstrndup.
22680
22681 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
22682
22683         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
22684         test cases, so that config.log is a bit easier to follow.
22685
22686 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
22687
22688         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
22689         both are 64 bits, since this seems to be the tradition, and this
22690         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
22691         we ever run into a host that prefers long long to long in this
22692         case, we'll need another configure-time test.  Problem reported by
22693         Jim Meyering.
22694
22695 2006-07-02  Eric Blake  <ebb9@byu.net>
22696
22697         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
22698
22699 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
22700
22701         * modules/inttypes (Depends-on): No longer depends on stdint.
22702         * modules/stdint (Description): Say more about assumptions.
22703         Say that the fast types might differ.  Say macros are used.
22704         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
22705         (Makefile.am): Revise list of substituted symbols to match
22706         new stdint.m4.
22707         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
22708         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
22709         * tests/test-stdint.c (verify_same_types)
22710         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
22711         the code conforms to C99/C89.
22712         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
22713         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
22714
22715 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
22716
22717         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
22718         but fix a bug, by requiring at least 64 bits.
22719         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
22720         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
22721         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
22722         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
22723
22724         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
22725         changes.  Make 2.59 a prerequisite.  Check and substitute for
22726         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
22727         inttypes.h.  Do not use special include files; just use the
22728         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
22729         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
22730         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
22731         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
22732         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
22733         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
22734         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
22735         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
22736         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
22737         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
22738         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
22739         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
22740         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
22741         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
22742         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
22743         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
22744         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
22745         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
22746         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
22747         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
22748         WINT_MAX.  Check for C99 conformance more strictly, by detecting
22749         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
22750         not check for things that C99 does not require, e.g., int8_t.  If
22751         a test isn't needed unless <stdint.h> isn't working, and is
22752         unlikely to be needed for any other reason, then don't do it
22753         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
22754         size_t, since we assume C89 freestanding at least.  Do not check
22755         for sig_atomic_t, wchar_t, or wint_t, since the code now does
22756         the right thing even if the types are not defined.  Instead use:
22757         (gl_STDINT_TYPE_PROPERTIES): New macro.
22758         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
22759         testing whether <sys/types.h> clashes, as Autoconf does this for
22760         us now.  All uses removed.
22761         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
22762         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
22763         (gl_CHECK_TYPE_SAME):
22764         Remove; no longer needed.
22765         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
22766         exists, since we'll return 0 anyway in that case.
22767         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
22768
22769 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
22770
22771         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
22772         possible collision with system files.
22773         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
22774         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
22775         WCHAR_MIN and WCHAR_MAX in this case.
22776         (<stddef.h>): Do not include; no longer needed.
22777         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
22778         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
22779         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
22780         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
22781         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
22782         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
22783         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
22784         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
22785         !defined(__c99))]: Include in this case too, since it's harmless
22786         now.
22787         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
22788         dangerous to do so.
22789         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
22790         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
22791         (_STDINT_MIN, _STDINT_MAX): New macros.
22792         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
22793         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
22794         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
22795         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
22796         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
22797         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
22798         macros, not typedefs; this simplifies things quite a bit.
22799         Use long int for all types narrower than int64_t.
22800         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
22801         Define in terms of long long int or int64_t or long int,
22802         not int64_t or int32_t.  This saves some compile-time testing.
22803         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
22804         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
22805         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
22806         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
22807         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
22808         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
22809         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
22810         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
22811         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
22812         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
22813         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
22814         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
22815         undef any previous version and define our own version, for
22816         simplicity and consistency with the new macros for types.
22817         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
22818         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
22819         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
22820         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
22821         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
22822         @WINT_T_SUFFIX@ to keep things simple here.
22823         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
22824         Simplify by assuming typical 8/16/32/64 host, since we're
22825         already doing that elsewhere anyway.
22826         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
22827         and assume long long int is 64 bits if available.  This
22828         speeds up 'configure'.
22829
22830 2006-07-01  Eric Blake  <ebb9@byu.net>
22831
22832         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
22833         Reported by Andreas Buening.
22834
22835 2006-07-01  Eric Blake  <ebb9@byu.net>
22836
22837         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
22838
22839 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
22840
22841         * lib/getaddrinfo.c: fixed typo
22842
22843 2006-06-29  Jim Meyering  <jim@meyering.net>
22844
22845         * modules/strftime (Maintainer): Add my name, since with the
22846         FPRINTFTIME changes strftime.c has forked from glibc.
22847
22848 2006-06-29  Eric Blake  <ebb9@byu.net>
22849
22850         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
22851
22852 2006-06-29  Eric Blake  <ebb9@byu.net>
22853
22854         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
22855
22856 2006-06-29  Eric Blake  <ebb9@byu.net>
22857
22858         * lib/stat_.h: New file.
22859
22860 2006-06-29  Eric Blake  <ebb9@byu.net>
22861
22862         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
22863         unused static function.
22864
22865 2006-06-29  Eric Blake  <ebb9@byu.net>
22866
22867         * doc/functions.texi (Function Portability): Document missing lstat
22868         on mingw.
22869
22870 2006-06-29  Eric Blake  <ebb9@byu.net>
22871
22872         * MODULES.html.sh: Add sys_stat.
22873         * modules/sys_stat: New module.
22874         * modules/mkstemp (Depends-on): Add sys_stat.
22875
22876 2006-06-29  Derek R. Price  <derek@ximbiot.com>
22877
22878         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
22879
22880 2006-06-29  Derek R. Price  <derek@ximbiot.com>
22881
22882         * m4/c-bs-a.m4: Removed.
22883
22884 2006-06-29  Derek R. Price  <derek@ximbiot.com>
22885
22886         * lib/strftime.c: Assume strftime() exists.
22887
22888 2006-06-29  Derek Price  <derek@ximbiot.com>
22889
22890         * modules/c-bs-a: Removed - \a is C89.
22891         * MODULES.html.sh: Remove c-bs-a.
22892
22893 2006-06-29  Bruno Haible  <bruno@clisp.org>
22894
22895         * modules/wcwidth (License): Change to LGPL.
22896
22897 2006-06-28  Simon Josefsson  <jas@extundo.com>
22898
22899         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
22900         on _WIN32.
22901
22902         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
22903         getnameinfo.
22904
22905 2006-06-28  Simon Josefsson  <jas@extundo.com>
22906
22907         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
22908
22909 2006-06-28  Simon Josefsson  <jas@extundo.com>
22910
22911         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
22912         functions there.  It will succeed on Windows XP, but on Windows
22913         2000 and (presumably) earlier, it will fail, and use the internal
22914         re-implementation.
22915         (use_win32_p): New function.
22916         (getaddrinfo): Use strtoul on servname, to support numeric ports.
22917         Support AI_NUMERICSERV to disable getservbyname.
22918         (getnameinfo): New function, only supports
22919         NI_NUMERICHOST|NI_NUMERICSERV for now.
22920
22921         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
22922         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
22923         getnameinfo.
22924
22925 2006-06-28  Eric Blake  <ebb9@byu.net>
22926
22927         * modules/wcwidth: New file.
22928         * modules/mbchar (Depends-on): Add wcwidth.
22929         * modules/mbswidth (Depends-on): Add wcwidth.
22930         * MODULES.html.sh: Add wcwidth.
22931
22932 2006-06-28  Eric Blake  <ebb9@byu.net>
22933
22934         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
22935         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
22936
22937 2006-06-28  Eric Blake  <ebb9@byu.net>
22938
22939         * lib/xvasprintf.h: Fix comments.
22940
22941 2006-06-28  Eric Blake  <ebb9@byu.net>
22942
22943         * lib/mbchar.h (wcwidth): Include wcwidth.h.
22944         * lib/mbswidth.c (wcwidth): Move from here...
22945         * lib/wcwidth.h: ...to this new file.
22946
22947 2006-06-28  Derek R. Price  <derek@ximbiot.com>
22948
22949         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
22950
22951         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
22952         it's obsolete.
22953         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
22954
22955 2006-06-28  Derek R. Price  <derek@ximbiot.com>
22956
22957         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
22958         Autoconf 2.60 says this stuff was obsolete.
22959
22960 2006-06-28  Bruno Haible  <bruno@clisp.org>
22961
22962         * modules/wcwidth (Files): Add m4/wchar_t.m4.
22963
22964 2006-06-28  Bruno Haible  <bruno@clisp.org>
22965
22966         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
22967         gt_TYPE_WCHAR_T.
22968
22969 2006-06-28  Bruno Haible  <bruno@clisp.org>
22970
22971         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
22972         declaration for wcwidth.
22973         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
22974
22975 2006-06-28  Bruno Haible  <bruno@clisp.org>
22976
22977         * lib/mkdtemp.c [MINGW]: Include <io.h>.
22978         (mkdir): Define using _mkdir.
22979
22980 2006-06-28  Bruno Haible  <bruno@clisp.org>
22981
22982         * lib/getaddrinfo.h: Fix POSIX URL.
22983         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
22984         _WIN32.
22985         (use_win32_p): Make static.
22986         (getaddrinfo): Reject service name if it is empty or does not consist
22987         solely of decimal digits, or if its value is > 65535.
22988         (getnameinfo): Remove useless casts.
22989
22990 2006-06-27  Simon Josefsson  <jas@extundo.com>
22991
22992         * modules/sys_select: New file, suggested by Bruno Haible, Paul
22993         Eggert and Martin Lambers.
22994
22995 2006-06-27  Simon Josefsson  <jas@extundo.com>
22996
22997         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
22998         Eggert and Martin Lambers.
22999
23000 2006-06-27  Bruno Haible  <bruno@clisp.org>
23001
23002         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
23003         result to 0, not to empty.
23004         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
23005
23006 2006-06-27  Bruno Haible  <bruno@clisp.org>
23007
23008         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
23009
23010 2006-06-26  Simon Josefsson  <jas@extundo.com>
23011
23012         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
23013         present.
23014
23015 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
23016
23017         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
23018         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
23019         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
23020
23021 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
23022
23023         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
23024
23025 2006-06-26  Bruno Haible  <bruno@clisp.org>
23026
23027         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
23028
23029 2006-06-26  Bruno Haible  <bruno@clisp.org>
23030
23031         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
23032
23033 2006-06-26  Bruno Haible  <bruno@clisp.org>
23034
23035         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
23036         SGI C compiler in pre-C99 mode.
23037         Suggested by Mark D. Baushke and Larry Jones.
23038
23039 2006-06-26  Bruno Haible  <bruno@clisp.org>
23040
23041         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
23042         WCHAR_MAX.
23043         Reported by Mark D. Baushke and Larry Jones.
23044
23045 2006-06-26  Bruno Haible  <bruno@clisp.org>
23046
23047         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
23048         in pre-C99 mode.
23049         Suggested by Mark D. Baushke and Larry Jones.
23050
23051 2006-06-23  Simon Josefsson  <jas@extundo.com>
23052             Bruno Haible  <bruno@clisp.org>
23053
23054         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
23055         Emit mostlyclean-local rule.
23056         (func_emit_tests_Makefile_am): Likewise.
23057         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
23058
23059 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
23060
23061         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
23062
23063 2006-06-23  Bruno Haible  <bruno@clisp.org>
23064
23065         * tests/test-stdint.c: Update to match ISO C 99 Technical
23066         Corrigendum 1.
23067
23068 2006-06-23  Bruno Haible  <bruno@clisp.org>
23069
23070         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
23071
23072 2006-06-23  Bruno Haible  <bruno@clisp.org>
23073
23074         * lib/stdint_.h: Treat IRIX like OpenBSD.
23075
23076 2006-06-23  Bruno Haible  <bruno@clisp.org>
23077
23078         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
23079         ISO C 99 Technical Corrigendum 1.
23080
23081 2006-06-22  Simon Josefsson  <jas@extundo.com>
23082
23083         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
23084         MinGW.
23085
23086 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23087
23088         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
23089         needed.  Some compiler complained about some of them.  Problem reported
23090         by Larry Jones in
23091         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
23092
23093 2006-06-21  Simon Josefsson  <jas@extundo.com>
23094
23095         * tests/test-getaddrinfo.c: New file.
23096
23097         * modules/getaddrinfo-tests: New file.
23098
23099         * MODULES.html.sh: Add inet_pton.
23100
23101         * modules/inet_pton: New file.
23102
23103 2006-06-21  Simon Josefsson  <jas@extundo.com>
23104
23105         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
23106         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
23107         of using the (limited) gnulib implementation on Windows XP.
23108
23109         * m4/inet_pton.m4: New file.
23110
23111 2006-06-21  Simon Josefsson  <jas@extundo.com>
23112
23113         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
23114         variable.
23115
23116         * lib/socket_.h: Don't define WINVER.
23117
23118         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
23119         slightly modified to work in gnulib.
23120
23121 2006-06-21  Simon Josefsson  <jas@extundo.com>
23122
23123         * doc/gnulib.texi (Windows sockets): Add.
23124
23125 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
23126
23127         * lib/read-file.c (fread_file): Start with buffer allocation of
23128         0 bytes rather than 1 byte; this simplifies the code.
23129         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
23130         code to free buffer and save/restore errno.
23131         (internal_read_file): Remove unused local.
23132
23133 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
23134
23135         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
23136         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
23137         Problem reported by Denis Excoffier in
23138         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
23139
23140 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23141
23142         * modules/sys_socket, modules/socklen: Include sys/types since
23143         FreeBSD 4.x's sys/socket.h needs it.
23144
23145 2006-06-19  Simon Josefsson  <jas@extundo.com>
23146
23147         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
23148
23149 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
23150
23151         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
23152
23153 2006-06-19  Bruno Haible  <bruno@clisp.org>
23154
23155         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
23156         and FULL_PATH_INTTYPES_H in angle brackets.
23157         Reported by Mark D. Baushke <mdb@gnu.org>.
23158
23159 2006-06-17  Eric Blake  <ebb9@byu.net>
23160
23161         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
23162         errno.
23163
23164 2006-06-17  Bruno Haible  <bruno@clisp.org>
23165
23166         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
23167         <sys/inttypes.h>.
23168
23169 2006-06-17  Bruno Haible  <bruno@clisp.org>
23170
23171         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
23172         whether errno is declared. Assume <errno.h> declares errno.
23173
23174 2006-06-17  Bruno Haible  <bruno@clisp.org>
23175
23176         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
23177
23178 2006-06-17  Bruno Haible  <bruno@clisp.org>
23179
23180         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
23181         problem on Solaris 2.5.1.
23182
23183 2006-06-16  Eric Blake  <ebb9@byu.net>
23184
23185         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
23186         * lib/unicodeio.c [!defined errno]: Likewise.
23187         * lib/strtol.c [!defined errno]: Likewise.
23188         * lib/strtod.c [!defined errno]: Likewise.
23189
23190 2006-06-15  Eric Blake  <ebb9@byu.net>
23191
23192         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
23193
23194 2006-06-15  Eric Blake  <ebb9@byu.net>
23195
23196         * config/srclist.txt (ssize_t.m4): Lose sync.
23197
23198 2006-06-15  Bruno Haible  <bruno@clisp.org>
23199
23200         * modules/stdint (Files): Include m4/full-header-path.m4,
23201         m4/size_max.m4, m4/wchar_t.m4.
23202         (Makefile.am): Many more substitutions.
23203         * modules/stdint-tests: New file.
23204         * tests/test-stdint.c: New file.
23205
23206 2006-06-15  Bruno Haible  <bruno@clisp.org>
23207
23208         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
23209         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
23210         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
23211         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
23212         gl_CHECK_TYPE_SAME): New macros.
23213
23214 2006-06-15  Bruno Haible  <bruno@clisp.org>
23215
23216         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
23217
23218 2006-06-15  Bruno Haible  <bruno@clisp.org>
23219
23220         * lib/stdint_.h: Rewritten to be fully auto-configured.
23221         Fixes bug on HP-UX/IA64.
23222
23223 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
23224
23225         * lib/getdate.y (__attribute__): Don't define if already defined.
23226         Problem reported by Larry Jones.
23227         * lib/utimens.c (__attribute__): Likewise.
23228
23229 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
23230
23231         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
23232         reported by Andreas Schwab.
23233
23234 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23235             Bruno Haible  <bruno@clisp.org>
23236
23237         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
23238         check for the declaration of strnlen and a run test that exposes the
23239         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
23240         rpl_strndup.
23241
23242 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23243             Bruno Haible  <bruno@clisp.org>
23244
23245         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
23246
23247 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23248
23249         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
23250         compile test, for Tru64 4.0D.
23251
23252 2006-05-28  Karl Berry  <karl@gnu.org>
23253
23254         * config/srclist.txt (printf-args.c): lose sync.
23255
23256 2006-05-26  Martin Lambers  <marlam@marlam.de>
23257
23258         * lib/getpass.c: Updates the test for the native W32 API, and adds
23259         missing includes, thus fixing compilation warnings.
23260
23261 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
23262
23263         * lib/exclude.c (exclude_fnmatch): New function.
23264         (excluded_file_name): Call exclude_fnmatch.
23265         * lib/exclude.h (excluded_file_name): New prototype
23266
23267 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
23268
23269         * lib/tempname.c (small_open, large_open): New macros.
23270         (__open, __open64) [!_LIBC]: Remove.
23271         (__gen_tempname): Use small_open and large_open instead of __open
23272         and __open64.  This fixes a portability bug on HP-UX 11.11i
23273         reported by Simon Wing-Tang in
23274         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
23275
23276 2006-05-24  Bruno Haible  <bruno@clisp.org>
23277
23278         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
23279         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
23280         Reported by Thorsten Maerz <torte@netztorte.de> via
23281         Aaron Stone <aaron@serendipity.cx>.
23282
23283 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
23284
23285         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
23286         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
23287         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
23288         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
23289         not really conditional on the cache.
23290         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
23291
23292 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
23293
23294         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
23295         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
23296         (my_usleep): Don't mishandle maximum value.
23297
23298 2006-05-19  Jim Meyering  <jim@meyering.net>
23299
23300         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
23301
23302 2006-05-17  Bruno Haible  <bruno@clisp.org>
23303
23304         Cygwin portability.
23305         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
23306
23307 2006-05-17  Bruno Haible  <bruno@clisp.org>
23308
23309         * lib/stdint_.h: Fix recognition of Cygwin.
23310
23311 2006-05-15  Bruno Haible  <bruno@clisp.org>
23312
23313         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
23314         on libtool patch by Ralf Wildenhues.
23315
23316 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
23317
23318         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
23319         test for C99 conformance; (bool) 0.5 is an integer constant
23320         expression, but (bool) -0.5 is not.  Problem reported by Fedor
23321         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
23322
23323 2006-05-11  Simon Josefsson  <jas@extundo.com>
23324
23325         * m4/xvasprintf.m4: Fix obvious typo.
23326
23327 2006-05-11  Jim Meyering  <jim@meyering.net>
23328
23329         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
23330         James Lemley.
23331
23332 2006-05-10  Simon Josefsson  <jas@extundo.com>
23333
23334         * lib/md4.c: Typo fix, update copyright years.
23335         (K1, K2): Don't use L because it turn computations into 64-bit on
23336         64-bit platforms.
23337
23338 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
23339
23340         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
23341         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
23342         unwanted sign propagation, e.g., on hosts with 64-bit int.
23343         There still are some problems with reeelly weird theoretical hosts
23344         (e.g., 33-bit int) but it's not worth worrying about now.
23345         * lib/sha1.c (rol): Likewise.
23346         (K1, K2, K3, K4): Remove unnecessary L suffix.
23347
23348 2006-05-10  Bruno Haible  <bruno@clisp.org>
23349
23350         * lib/des.c: Cast to avoid warnings.
23351
23352 2006-05-09  Bruno Haible  <bruno@clisp.org>
23353
23354         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
23355         (Depends-on): Depend also on xsize, stdarg.
23356         (configure.ac): Add gl_XVASPRINTF.
23357
23358 2006-05-09  Bruno Haible  <bruno@clisp.org>
23359
23360         * m4/xvasprintf.m4: New file.
23361
23362 2006-05-09  Bruno Haible  <bruno@clisp.org>
23363
23364         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
23365         (EOVERFLOW): Define fallback value.
23366         (xstrcat): New function.
23367         (xvasprintf): Recognize the special case of a string concatenation.
23368
23369 2006-05-08  Eric Blake  <ebb9@byu.net>
23370
23371         * gnulib-tool (func_version): Base copyright year on CVS date.
23372         (func_emit_copyright_notice): New function.
23373         (func_emit_lib_Makefile_am): Use it.
23374         (func_emit_tests_Makefile_am): Likewise.
23375         (func_import): Likewise.
23376
23377 2006-05-08  Bruno Haible  <bruno@clisp.org>
23378
23379         * modules/stdarg: New file.
23380         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
23381
23382 2006-05-08  Bruno Haible  <bruno@clisp.org>
23383
23384         * m4/stdarg.m4: New file, from GNU gettext.
23385
23386 2006-05-08  Bruno Haible  <bruno@clisp.org>
23387
23388         * config/srclist.txt (build-aux/config.rpath): different from latest
23389         release.
23390
23391 2006-05-08  Bruno Haible  <bruno@clisp.org>
23392
23393         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
23394
23395 2006-05-05  Jim Meyering  <jim@meyering.net>
23396
23397         * m4/warning.m4: New file, derived from bison's file by the same name.
23398
23399 2006-05-03  Bruno Haible  <bruno@clisp.org>
23400
23401         * lib/stdint_.h: Shorter URL.
23402         * lib/inttypes.h: Likewise.
23403
23404 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
23405
23406         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
23407
23408 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
23409
23410         * lib/verify.h: Document the internals better.  Most of this change
23411         was written by Bruno Haible.
23412
23413 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
23414
23415         * doc/verify.texi: New file, partly based on a proposal by
23416         Bruno Haible.
23417
23418 2006-05-02  Bruno Haible  <bruno@clisp.org>
23419
23420         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
23421         test from here...
23422         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
23423
23424 2006-04-29  Bruno Haible  <bruno@clisp.org>
23425
23426         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
23427         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
23428
23429 2006-04-29  Bruno Haible  <bruno@clisp.org>
23430
23431         * gnulib-tool: Make --update option actually work.
23432
23433 2006-04-29  Bruno Haible  <bruno@clisp.org>
23434
23435         * doc/gcd.texi: New file.
23436         * doc/gnulib.texi: Include it.
23437
23438 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
23439
23440         * lib/getdate.y (get_date): When adding relative date, start with the
23441         initial time, not with the result of the first mktime call.
23442
23443 2006-04-25  Bruno Haible  <bruno@clisp.org>
23444
23445         * gnulib-tool (func_import): Output the include directives in three
23446         blocks, sorted separately.
23447         Reported by Ben Pfaff <blp@cs.stanford.edu>.
23448
23449 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
23450
23451         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
23452         to define main with arguments, for C++.  Reported by Eric Blake.
23453         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
23454         Prefer 'int main ()' to 'int main (void)', for C++.
23455         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
23456         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
23457         for 'main', for C99 and C++.
23458
23459 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
23460
23461         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
23462         Don't assume that exit status -1 is valid.
23463         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
23464         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
23465         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
23466         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
23467         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
23468         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
23469         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
23470         functions can be used without declaring them, or that you can
23471         exit with status -1.
23472         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
23473
23474 2006-04-24  Karl Berry  <karl@gnu.org>
23475
23476         * config/srclist.txt (longdouble.m4): sync lost.
23477
23478 2006-04-24  Eric Blake  <ebb9@byu.net>
23479
23480         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
23481
23482 2006-04-24  Bruno Haible  <bruno@clisp.org>
23483
23484         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
23485         poll() implementation in AIX.
23486         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23487
23488 2006-04-24  Bruno Haible  <bruno@clisp.org>
23489
23490         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
23491         assigned exactly once.
23492
23493 2006-04-23  Claudio Fontana  <claudio@gnu.org>
23494             Bruno Haible  <bruno@clisp.org>
23495
23496         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
23497         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
23498         for AM_CPPFLAGS.
23499
23500 2006-04-23  Bruno Haible  <bruno@clisp.org>
23501
23502         * modules/copy-file: Depend on unistd.
23503         * modules/execute: Likewise.
23504         * modules/fatal-signal: Likewise.
23505         * modules/findprog: Likewise.
23506         * modules/mkdtemp : Likewise.
23507         * modules/pipe: Likewise.
23508         * modules/wait-process: Likewise.
23509
23510 2006-04-23  Bruno Haible  <bruno@clisp.org>
23511
23512         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
23513         condition was already detected.
23514         Reported by Ben Pfaff <blp@cs.stanford.edu>.
23515
23516 2006-04-23  Bruno Haible  <bruno@clisp.org>
23517
23518         * lib/copy-file.c: Include <unistd.h> unconditionally.
23519         * lib/execute.c: Likewise.
23520         * lib/fatal-signal.c: Likewise.
23521         * lib/findprog.c: Likewise.
23522         * lib/mkdtemp.c: Likewise.
23523         * lib/pipe.h: Likewise.
23524         * lib/pipe.c: Likewise.
23525         * lib/wait-process.h: Likewise.
23526
23527 2006-04-23  Bruno Haible  <bruno@clisp.org>
23528
23529         * gnulib-tool (func_usage): Fix --import description. Document
23530         --update.
23531         (func_import): Create temporary file in a temporary directory, if
23532         --dry-run is specified. Silence errors from 'grep' when there are no
23533         m4 files in $m4dir.
23534         (func_create_testdir): Silence errors from 'grep' when there are no
23535         m4 files in $m4dir.
23536         Reported by Karl Berry <karl@freefriends.org>.
23537
23538 2006-04-20  Bruno Haible  <bruno@clisp.org>
23539
23540         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
23541         one argument, so that the code will be portable to Autoconf 2.60.
23542         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
23543         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
23544         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
23545
23546 2006-04-19  Derek Price  <derek@ximbiot.com>
23547             Eric Blake  <ebb9@byu.net>
23548
23549         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
23550         rather than "/full/path.h".  Update comment to match.  Shorten &
23551         generalize m4_translit call via AS_TR_CPP.
23552
23553 2006-04-19  Derek Price  <derek@ximbiot.com>
23554             Eric Blake  <ebb9@byu.net>
23555
23556         * lib/inttypes.h: Correct grammar in comment.
23557
23558 2006-04-18  Derek Price  <derek@ximbiot.com>
23559             Paul Eggert  <eggert@cs.ucla.edu>
23560
23561         * modules/inttypes: New file.
23562         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
23563
23564 2006-04-18  Derek Price  <derek@ximbiot.com>
23565             Paul Eggert  <eggert@cs.ucla.edu>
23566
23567         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
23568         New files.
23569
23570 2006-04-18  Derek Price  <derek@ximbiot.com>
23571             Paul Eggert  <eggert@cs.ucla.edu>
23572
23573         * lib/inttypes.h: New file.
23574         * lib/strtoimax.c: Assume <inttypes.h>.
23575
23576 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
23577
23578         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
23579         isn't mounted.  Problem reported by Kir Kolyshkin.
23580
23581 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
23582
23583         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
23584         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
23585         Derek R. Price.
23586         * lib/regex.h (RE_DUP_MAX): Update comment to match current
23587         implementation.
23588
23589 2006-04-12  Eric Blake  <ebb9@byu.net>
23590
23591         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
23592         is now done automatically by the corresponding Autoconf macro.
23593
23594 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
23595
23596         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
23597         time_r.h.
23598
23599 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23600
23601         Merge regex changes from libc, removing some of our
23602         POSIX-conformance changes that were rejected and redoing them in a
23603         less-intrusive way.
23604
23605         * lib/regcomp.c (re_compile_internal, init_dfa):
23606         Length arg is now size_t, not Idx.  All uses changed.
23607         (peek_token): Forward decl now says internal_function.
23608         (__re_error_msgid, __re_error_msgid_idx):
23609         Now static rather than extern with attribute_hidden.
23610         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
23611         For some reason libc prefers K&R style defns for external functions.
23612         (regerror) [!defined _LIBC]: Likewise.
23613         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
23614         (seek_collating_symbol_entry, lookup_collation_sequence_value):
23615         (build_range_exp, build_collating_symbol):
23616         Use K&R-style defn.
23617         (re_compile_fastmap): Use '\0' to memset, not 0.
23618         (utf8_sb_map): Make the calculations more obvious.
23619         (init_dfa, parse_bracket_exp, build_charclass_op):
23620         Call calloc and cast result, as glibc does.
23621         (init_word_char, fetch_token, peek_token, peek_token_bracket):
23622         (build_range_exp, build_collating_symbol):
23623         Now internal functions.
23624
23625         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
23626
23627         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
23628         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
23629         Don't depend on VMS; depend on __VMS instead, for POSIX
23630         namespace cleanness.
23631         (regoff_t): Define to ssize_t, not long int.
23632
23633         Remove the REG_ macros named below.  Instead, make the old names
23634         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
23635         __USE_GNU_REGEX.
23636         (REG_BACKSLASH_ESCAPE_IN_LISTS):
23637         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
23638         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
23639         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
23640         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
23641         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
23642         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
23643         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
23644         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
23645         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
23646         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
23647         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
23648         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
23649         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
23650         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
23651         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
23652         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
23653         (REG_NREGS):
23654         Remove.  All uses replaced by the old RE_* names.
23655         (RE_BACKSLASH_ESCAPE_IN_LISTS):
23656         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
23657         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
23658         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
23659         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
23660         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
23661         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
23662         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
23663         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
23664         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
23665         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
23666         Don't bother having these macros be independent of each others'
23667         values, since they no longer exist in the POSIX name space.
23668
23669         Rename the following member names back to their old names,
23670         unless !__USE_GNU_REGEX.  All uses changed back.
23671         (buffer): Renamed from re_buffer.
23672         (allocated): Renamed from re_allocated.
23673         (used): Renamed from re_used.
23674         (syntax): Renamed from re_syntax.
23675         (fastmap): Renamed from re_fastmap.
23676         (translate): Renamed from re_translate.
23677         (can_be_null): Renamed from re_can_be_null.
23678         (regs_allocated): Renamed from re_regs_allocated.
23679         (fastmap_accurate): Renamed from re_fastmap_accurate.
23680         (no_sub): Renamed from re_no_sub.
23681         (not_bol): Renamed from re_not_bol.
23682         (not_eol): Renamed from re_not_eol.
23683         (newline_anchor): Renamed from re_newline_anchor.
23684         (num_regs): Renamed from rm_num_regs.
23685         (start): Renamed from rm_start.
23686         (end): Renamed from rm_end.
23687
23688         (free_state): Move up a bit.
23689
23690         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
23691         #define to be empty.
23692         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
23693         when that is what is intended.
23694         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
23695         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
23696         (MAX): New macro.
23697         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
23698         All uses changed back to re_malloc, etc.  It's now the caller's
23699         responsibility to check for overflow; all callers changed.
23700         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
23701         (re_x2nrealloc): Remove.
23702         (free_state): Remove decl.
23703
23704         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
23705         (re_set_registers, re_exec):
23706         Use K&R-style defn.
23707
23708         2006-01-31  Roland McGrath  <roland@redhat.com>
23709
23710         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
23711         Reported by Mike Frysinger <vapier@gentoo.org>.
23712
23713         2006-01-15  Andreas Jaeger  <aj@suse.de>
23714
23715         [BZ #1950]
23716         * lib/regex_internal.c (re_string_reconstruct): Adjust for
23717         build_wcs_upper_buffer change.
23718         (build_wcs_upper_buffer): Change return type.
23719
23720         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
23721
23722         * lib/regex_internal.h: Include <stdint.h> if available.
23723
23724         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
23725
23726         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
23727
23728         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
23729
23730         * lib/regcomp.c: Adjust for changed secondary hash function.
23731
23732         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
23733
23734         * lib/regex.h: Pretty printing.
23735         Clean up namespace a bit.
23736
23737         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
23738
23739         * lib/regexec.c (update_cur_sifted_state, check_arrival,
23740         check_arrival_add_next_nodes): Avoid using uninitialized variable.
23741
23742         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
23743                     Ulrich Drepper  <drepper@redhat.com>
23744
23745         [BZ #1302]
23746         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
23747         changed.
23748         (bitset_word_t): Renamed from bitset_word.  All uses changed.
23749
23750         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
23751
23752         [BZ #281]
23753         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
23754         * lib/regcomp.c: Remove unnecessary uses of
23755         unsigned RE_TRANSLATE_TYPE.
23756         * lib/regex_internal.h: Likewise.
23757         * lib/regex_internal.c: Likewise.
23758         * lib/regexec.c: Likewise.
23759         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
23760
23761         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
23762
23763         * lib/regexec.c (find_recover_state): Remove unnecessary
23764         initialization.
23765         (transit_state_bkref): Make DFA a const pointer.
23766         (get_subexp): Likewise.
23767         (check_arrival): Likewise.
23768         (update_cur_sifted_state): Likewise.
23769         (re_search_internal): Likewise.
23770         (prune_impossible_nodes): Likewise.
23771         (acquire_init_state_context): Likewise.
23772         (proceed_next_node): Likewise.
23773         (set_regs): Likewise.
23774         (free_fail_stack_return): Likewise.
23775         (check_arrival_expand_ecl): Mark DFA parameter as const.
23776         (check_arrival_expand_ecl_sub): Likewise.
23777         (check_subexp_limits): Likewise.
23778         (sub_epsilon_src_nodes):  Likewise.
23779         (add_epsilon_src_nodes):  Likewise.
23780         (merge_state_array): Likewise.
23781         (update_regs): Likewise.
23782         (build_trtable): Likewise.
23783         (sift_states_backward): Mark MCTX parameter as const.
23784         (build_sifted_states): Likewise.
23785         (update_cur_sifted_state): Likewise.
23786         (sift_states_mkref): Likewise.
23787         (check_arrival_expand_ecl): Mark eclosure as const.
23788         (check_dst_limits_calc_pos_1): Likewise.
23789         * lib/regex_internal.h (re_match_context_t): Make dfa a const
23790         pointer.
23791
23792         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
23793
23794         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
23795         (transit_state_sb): Likewise.
23796         (transit_state_mb): Likewise.
23797         (sift_states_iter_mb): Likewise.
23798         (check_arrival_add_next_nodes): Likewise.
23799         (check_node_accept_bytes): Change first parameter to pointer-to-const.
23800         [_LIBC] (re_search_2_stub): Use mempcpy.
23801
23802         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
23803         mbrtowc for very simple UTF-8 case.
23804
23805         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
23806         a pointer-to-const.
23807         (re_acquire_state_context): Likewise.
23808         * lib/regex_internal.h: Adjust prototypes.
23809
23810         * lib/regex.c: Prevent using C++ compilers.
23811
23812         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
23813         (re_acquire_state_context): Likewise.
23814
23815 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23816
23817         * modules/regex (Depends-on): Add ssize_t.
23818
23819 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23820
23821         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
23822         translation table.
23823
23824 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23825
23826         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
23827
23828 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
23829             Bruno Haible  <bruno@clisp.org>
23830
23831         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
23832         <sys/types.h> and <inttypes.h>.
23833
23834 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23835
23836         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
23837         `__error_t_defined', so argp.h will not typedef the former.
23838
23839 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
23840
23841         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
23842         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
23843         glibc names.  Even if glibc is changed to conform to POSIX, the
23844         traditional names will be available anyway, since regex depends on
23845         the extensions module.  Also, fix a longstanding typo in the
23846         implementation of Spencer ERE test #75 from grep 2.3.  Problems
23847         reported by Emanuele Giaquinta.  Also, change sense of cached
23848         variable, so that the message makes sense.
23849
23850 2006-03-24  Simon Josefsson  <jas@extundo.com>
23851
23852         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
23853         including some doc fixes.
23854         (base64_encode_alloc): Fix +1 bug on allocation failures.
23855
23856 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23857
23858         * lib/base64.c (base64_encode): Do not read past end of array with
23859         unsanitized input on systems with CHAR_BIT > 8.
23860
23861 2006-03-24  Eric Blake  <ebb9@byu.net>
23862
23863         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
23864
23865 2006-03-22  Karl Berry  <karl@gnu.org>
23866
23867         * config/srclist.txt (*setenv.[ch]): get from coreutils.
23868         * config/srclistvars.sh (COREUTILS): new var.
23869
23870 2006-03-17  Jim Meyering  <jim@meyering.net>
23871
23872         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
23873         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
23874
23875 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
23876
23877         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
23878         no longer needs it.  Instead, check that regoff_t is as least
23879         as wide as ptrdiff_t.
23880
23881         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
23882         so that our regex.h stays compatible with the installed regex.
23883         This is helpful for installers who configure --without-included-regex.
23884         Problem reported by Emanuele Giaquinta.
23885
23886 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
23887
23888         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
23889         Typedef to long int, not to off_, as POSIX will likely change
23890         in that direction.
23891
23892 2006-03-15  Eric Blake  <ebb9@byu.net>
23893
23894         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
23895
23896 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
23897
23898         * lib/argp-help.c (validate_uparams): Fix typo
23899         * lib/argp-parse.c (argp_default_options): Consistently begin help
23900         messages with a lowercase letter.
23901
23902 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
23903
23904         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
23905         overrun buffers and shouldn't be used (much as gets shouldn't be
23906         used).
23907         * lib/time_r.c (asctime_r, ctime_r): Likewise.
23908
23909 2006-03-08  Simon Josefsson  <jas@extundo.com>
23910
23911         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
23912         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23913
23914 2006-03-08  Simon Josefsson  <jas@extundo.com>
23915
23916         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
23917         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23918
23919 2006-03-08  Simon Josefsson  <jas@extundo.com>
23920
23921         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
23922         signal that configure disabled the device.
23923
23924 2006-03-08  Simon Josefsson  <jas@extundo.com>
23925
23926         * build-aux/maint.mk: Fix refresh-po, to handle no translated
23927         languages.
23928
23929 2006-03-07  Simon Josefsson  <jas@extundo.com>
23930
23931         * modules/getopt (Depends-on): Add unistd.
23932
23933         * modules/unistd: New file.
23934
23935 2006-03-07  Simon Josefsson  <jas@extundo.com>
23936
23937         * modules/gc-random: New file.
23938
23939 2006-03-07  Simon Josefsson  <jas@extundo.com>
23940
23941         * m4/unistd_h.m4: New file.
23942
23943 2006-03-07  Simon Josefsson  <jas@extundo.com>
23944
23945         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
23946         test to be side-effect free by storing the result in the cache
23947         variable gl_cv_lib_readline, and moving the assignment of
23948         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
23949         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23950
23951 2006-03-07  Simon Josefsson  <jas@extundo.com>
23952
23953         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
23954         error on missing devices (the functions will return an error).
23955
23956         * m4/gc.m4: Move random stuff to gc-random.m4
23957
23958 2006-03-07  Simon Josefsson  <jas@extundo.com>
23959
23960         * lib/unistd_.h: New file.
23961
23962 2006-03-07  Simon Josefsson  <jas@extundo.com>
23963
23964         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
23965
23966 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
23967
23968         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
23969         Problem reported by Juan Manuel Guerrero.
23970
23971 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
23972
23973         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
23974         the unistd module.
23975         * lib/getlogin_r.c: Likewise.
23976         * lib/getlogin_r.h: Likewise.
23977         * lib/glob.c: Likewise.
23978         * lib/pagealign_alloc.c: Likewise.
23979         * lib/unistd_.h: Remove; no longer needed.
23980
23981 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
23982
23983         * MODULES.html.sh (Support for systems lacking POSIX:2001):
23984         Add unistd.
23985         * modules/c-stack (Depends-on): Add unistd.
23986         * modules/getlogin_r: Likewise.
23987         * modules/glob: Likewise.
23988         * modules/pagealign_alloc: Likewise.
23989         * modules/unistd (Files): Remove lib/unistd_.h.
23990         (EXTRA_DIST): Remove.
23991         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
23992         need unistd_.h.
23993         (MOSTLYCLEANFILES): Remove unistd.h-t.
23994
23995 2006-03-03  Simon Josefsson  <jas@extundo.com>
23996
23997         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
23998
23999 2006-03-03  Simon Josefsson  <jas@extundo.com>
24000
24001         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
24002         libidn and bison.
24003
24004 2006-03-03  Simon Josefsson  <jas@extundo.com>
24005
24006         * build-aux/maint.mk: Add indent target.
24007
24008 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
24009
24010         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
24011         our replacement poll.h in any case, to avoid a differing
24012         declaration from a system header.  Seen on AIX.
24013
24014 2006-03-01  Simon Josefsson  <jas@extundo.com>
24015
24016         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
24017         <kasal@ucw.cz>.
24018
24019 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
24020
24021         * modules/gettime (Depends-on): Add extensions module.
24022         * modules/nanosleep (Depends-on): Likewise.
24023         * modules/settime (Depends-on): Likewise.
24024
24025 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
24026
24027         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
24028         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
24029         pedantically.
24030         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
24031         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
24032
24033         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
24034         not "==".  Reported by Ralf Wildenhues.
24035
24036 2006-03-01  Karl Berry  <karl@gnu.org>
24037
24038         * doc/Copyright/request-*: new files, synced from gnuorg.
24039
24040 2006-03-01  Karl Berry  <karl@gnu.org>
24041
24042         * config/srclist.txt (Copyright/*): new entries.
24043
24044 2006-02-28  Simon Josefsson  <jas@extundo.com>
24045
24046         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
24047
24048 2006-02-27  Simon Josefsson  <jas@extundo.com>
24049
24050         * lib/base64.h: Indent #define's.  From Jim Meyering
24051         <jim@meyering.net>.
24052
24053 2006-02-27  Jim Meyering  <jim@meyering.net>
24054
24055         Revert the change of 2006-02-24, so these files can continue
24056         to be sync'd from gettext.
24057         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
24058         of `config.h'.
24059
24060 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
24061
24062         * modules/intprops: New file.
24063         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
24064         Add intprops.
24065         * modules/getloadavg (Files): Remove lib/intprops.h.
24066         (Depends-on): Add intprops.
24067         * modules/human: Likewise.
24068         * modules/inttostr: Likewise.
24069         * modules/openat: Likewise.
24070         * modules/sig2str: Likewise.
24071         * modules/userspec: Likewise.
24072         * modules/utimecmp: Likewise.
24073         * modules/xnanosleep: Likewise.
24074         * modules/xstrtol: Likewise.
24075
24076 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
24077
24078         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
24079         * modules/lock-tests (TESTS): Use $(EXEEXT).
24080         * modules/tls-tests: Likewise.
24081         * modules/argp-tests: Likewise.
24082         (check_PROGRAMS): New var, replacing...
24083         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
24084
24085 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24086
24087         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
24088         `config.h'.
24089
24090 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
24091
24092         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
24093
24094 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24095
24096         Sync from coreutils.
24097         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
24098         gl_CHDIR_SAFER.
24099
24100 2006-02-22  Jim Meyering  <jim@meyering.net>
24101
24102         Sync from coreutils.
24103         * m4/chdir-safer.m4: New file.
24104
24105 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
24106
24107         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
24108         AT_FDCWD exceeds INT_MAX.
24109         * lib/openat.h (AT_FDCWD): Likewise.
24110
24111 2006-02-17  Eric Blake  <address@hidden>
24112
24113         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
24114
24115 2006-02-16  Simon Josefsson  <jas@extundo.com>
24116
24117         * modules/getaddrinfo (Depends-on): Add sys_socket.
24118
24119 2006-02-15  Simon Josefsson  <jas@extundo.com>
24120
24121         * build-aux/maint.mk: Add dsyntax-check rule.
24122
24123 2006-02-15  Eric Blake  <ebb9@byu.net>
24124
24125         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
24126         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
24127         'present but cannot compile' warnings on cygwin.
24128         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
24129         use ws2tcpip.h if sys/socket.h works.
24130         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
24131         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
24132
24133 2006-02-14  Simon Josefsson  <jas@extundo.com>
24134
24135         * modules/maintainer-makefile (Files): Rename.
24136
24137         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
24138         and (the local) Makefile.cfg to maint-cfg.mk.
24139
24140         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
24141         to the latter.
24142
24143         * modules/maintainer-makefile: New module.
24144
24145         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
24146         severaly stripped to make it possible to build it up from scratch
24147         with reliable tests.
24148
24149         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
24150         fixes to permit overriding the default actions when configure and
24151         makefile are not available.
24152
24153 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
24154
24155         Sync from coreutils.
24156         * modules/lstat (Depends-on): Don't depend on xalloc.
24157         (License): Change from GPL to LGPL, since this is now simply a
24158         replacement for a libc function.
24159
24160 2006-02-14  Jim Meyering  <jim@meyering.net>
24161
24162         Sync from coreutils.
24163
24164         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
24165         failure on deficient systems, and simplify gnulib lgpl dependencies.
24166         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
24167         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
24168
24169         * lib/xalloc-die.c: Remove unused definition of N_.
24170
24171 2006-02-14  Jim Meyering  <jim@meyering.net>
24172
24173         Sync from coreutils.
24174         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
24175         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
24176         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
24177         double-quote uses of that variable, to accommodate the rare case in
24178         which getmntent is available in none of the libraries checked.  This
24179         happens at least on FreeBSD 5.0.
24180
24181 2006-02-13  Simon Josefsson  <jas@extundo.com>
24182
24183         * gnulib-tool (Usage): Fix --import, from
24184         karl@freefriends.org (Karl Berry).
24185
24186 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
24187
24188         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
24189
24190 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
24191
24192         * lib/argp-namefrob.h: Restore changes accidentally lost during the
24193         "autoupdate" on 2005-12-12.
24194
24195 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
24196
24197         * modules/closeout (Depends-on): Remove atexit.
24198
24199 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
24200
24201         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
24202         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
24203
24204 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
24205
24206         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
24207         __EXTENSIONS__ if this causes compilation to fail.  Problem
24208         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
24209         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
24210
24211 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
24212
24213         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
24214         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
24215         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
24216         All uses changed.
24217
24218 2006-01-26  Simon Josefsson  <jas@extundo.com>
24219
24220         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
24221         prototype is visible on mingw32.
24222
24223         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
24224         for mingw32.
24225
24226         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
24227         mingw32).
24228
24229 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
24230
24231         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
24232         attempt to open for write; this always fails, at least on POSIX
24233         hosts.  This reinstates the 2006-01-09 change, which was
24234         inadvertently removed.
24235
24236 2006-01-26  Bruno Haible  <bruno@clisp.org>
24237
24238         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
24239         Reported by Paul Eggert.
24240
24241 2006-01-26  Bruno Haible  <bruno@clisp.org>
24242             Paul Eggert  <eggert@cs.ucla.edu>
24243
24244         * lib/stdbool_.h (_Bool)
24245         [(! (defined __cplusplus || defined __BEOS__)
24246           && !defined __GNUC__
24247           && !(defined __HP_cc || defined __xlc__
24248                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
24249                || defined __sgi))]:
24250         #define to signed char in these cases too; this simplifies
24251         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
24252         etc., separately) and makes it more conservative.
24253
24254 2006-01-25  Simon Josefsson  <jas@extundo.com>
24255
24256         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
24257         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
24258         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
24259
24260 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
24261
24262         * lib/argp-namefrob.h: Bugfix. Remove stray #
24263
24264 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
24265
24266         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
24267         so that we test the test.
24268         Check for yet another HP-UX cc bug involving *bool |= bool.
24269
24270 2006-01-25  Karl Berry  <karl@gnu.org>
24271
24272         * config/srclist.txt (vasnprintf.c): sync lost.
24273
24274 2006-01-25  Jim Meyering  <jim@meyering.net>
24275
24276         Sync from the stable (b5) branch of coreutils:
24277
24278         * lib/fts.c (fts_children): Don't let close() clobber errno from
24279         failed fchdir().
24280
24281         * lib/fts.c (fts_stat): When following a symlink-to-directory,
24282         don't necessarily interpret stat-fails+lstat-succeeds as indicating
24283         a dangling symlink.  That can also happen at least for ELOOP.
24284         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
24285         FYI, this bug predates the inclusion of fts.c in coreutils.
24286
24287         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
24288         in their own block, so pre-c99 compilers don't object.
24289
24290         Avoid the double-free (first in fts_read, second in fts_close) that
24291         would occur when an `active' directory is made inaccessible (e.g.,
24292         via chmod a-x) during a traversal.
24293         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
24294         before returning.  Reproduce this failure by
24295         mkdir -p a/b; cd a; chmod a-x . b
24296         Reported by Stavros Passas.
24297
24298 2006-01-25  Jim Meyering  <jim@meyering.net>
24299
24300         * lib/fileblocks.c: Remove more useless parentheses.
24301         * lib/readutmp.h: Likewise.
24302
24303 2006-01-25  Bruno Haible  <bruno@clisp.org>
24304
24305         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
24306         warnings.
24307         Reported by Paul Eggert.
24308
24309 2006-01-25  Bruno Haible  <bruno@clisp.org>
24310
24311         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
24312         rid of a trap command. For Solaris sh.
24313         Reported by Mark D. Baushke <mdb@gnu.org>.
24314
24315 2006-01-24  Simon Josefsson  <jas@extundo.com>
24316
24317         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
24318         Bruno.
24319
24320 2006-01-24  Karl Berry  <karl@gnu.org>
24321
24322         * config/srclist.txt (argp-namefrob.h): sync lost.
24323
24324 2006-01-24  Jim Meyering  <jim@meyering.net>
24325
24326         * modules/openat (Files): Add lib/intprops.h.
24327         From Mark D. Baushke.
24328
24329 2006-01-24  Jim Meyering  <jim@meyering.net>
24330
24331         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
24332         Reported by Mark D. Baushke.
24333
24334 2006-01-24  Jim Meyering  <jim@meyering.net>
24335
24336         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
24337
24338 2006-01-24  Bruno Haible  <bruno@clisp.org>
24339
24340         * modules/strnlen (Maintainer): Change from glibc to all.
24341
24342 2006-01-24  Bruno Haible  <bruno@clisp.org>
24343
24344         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
24345         Patch by Paul Eggert.
24346
24347 2006-01-24  Bruno Haible  <bruno@clisp.org>
24348
24349         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
24350         already has it.
24351         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
24352         2005-11-26.
24353
24354         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
24355         'signed char' to avoid problems with the built-in _Bool type.
24356         Reported by Paul Eggert on 2005-11-26.
24357
24358 2006-01-24  Bruno Haible  <bruno@clisp.org>
24359
24360         * gnulib-tool (func_import): Avoid constructing complicated sed
24361         expressions inside backquote.
24362         Report and solution by Mark D. Baushke <mdb@gnu.org>.
24363
24364 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
24365
24366         These changes imported from libc.
24367         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
24368         test and two separate function calls.
24369         * lib/strndup.c (__strndup): Add libc_hidden_def.
24370
24371 2006-01-23  Simon Josefsson  <jas@extundo.com>
24372
24373         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
24374         Remove the test_*_SOURCES variable: automake infers it by default.
24375         * modules/tls-tests: Likewise.
24376
24377 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
24378
24379         Work around porting bugs reported by Dieter in
24380         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
24381         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
24382         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
24383         Include "getopt.h" first, to check interface.
24384         (getenv): Declare only if defined HAVE_DECL_GETENV &&
24385         !HAVE_DECL_GETENV.
24386         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
24387         (__strndup): Revert to K&R-style function dfns, the glibc style.
24388         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
24389         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
24390         Include strnlen.h first, to get prototype properly.
24391         (strnlen): Renamed from __strnlen.
24392         Remove weak alias.
24393
24394 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
24395
24396         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
24397
24398 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
24399
24400         * config/srclist.txt: Adjust to reflect glibc reorganization.
24401         This affects only comments.
24402
24403 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
24404
24405          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
24406          Reported by Bruce Korb <bkorb@gnu.org>.
24407
24408 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
24409
24410         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
24411         to pacify gcc -Wswitch-default.
24412
24413 2006-01-22  Bruno Haible  <bruno@clisp.org>
24414
24415         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
24416         temporary buffer for sprintf, take into account the precision also
24417         for 'd', 'i', 'u', 'o', 'x', 'X'.
24418
24419 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
24420
24421         * modules/argp-tests: New module
24422         * tests/test-argp.c: New file
24423         * tests/test-argp-2.sh: New file
24424
24425 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
24426
24427         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
24428         (__argp_base_name): Removed
24429         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
24430         typo.
24431         (__argp_base_name): Provide macro definition or extern declaration
24432         depending on the configuration
24433
24434 2006-01-20  Simon Josefsson  <jas@extundo.com>
24435
24436         * modules/inet_ntop (Depends-on): Depend on sys_socket.
24437
24438 2006-01-20  Simon Josefsson  <jas@extundo.com>
24439
24440         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
24441
24442 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
24443
24444         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
24445         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
24446         Suggested by Bruno Haible.
24447
24448 2006-01-20  Karl Berry  <karl@gnu.org>
24449
24450         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
24451         until changes propagate, I guess.
24452
24453 2006-01-19  Simon Josefsson  <jas@extundo.com>
24454
24455         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
24456
24457 2006-01-19  Simon Josefsson  <jas@extundo.com>
24458
24459         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
24460
24461 2006-01-19  Simon Josefsson  <jas@extundo.com>
24462
24463         * gnulib-tool: Set check_PROGRAMS.
24464
24465         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
24466         modules/des-tests, modules/gc-arcfour-tests,
24467         modules/gc-arctwo-tests, modules/gc-des-tests,
24468         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
24469         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
24470         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
24471         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
24472         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
24473         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
24474         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
24475         test_*_SOURCES.
24476
24477 2006-01-18  Simon Josefsson  <jas@extundo.com>
24478
24479         * modules/socklen (Depends-on): Depend on sys_socket.
24480
24481 2006-01-18  Simon Josefsson  <jas@extundo.com>
24482
24483         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
24484         modules/des-tests, modules/gc-arcfour-tests,
24485         modules/gc-arctwo-tests, modules/gc-des-tests,
24486         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
24487         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
24488         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
24489         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
24490         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
24491         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
24492         $(EXEEXT) to automake TESTS variable, for mingw32.
24493
24494 2006-01-17  Simon Josefsson  <jas@extundo.com>
24495
24496         * modules/socklen (Include): Need sys/socket.h.
24497
24498 2006-01-17  Bruno Haible  <bruno@clisp.org>
24499
24500         * modules/ssize_t (Include): Add <sys/types.h>.
24501
24502 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
24503
24504         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
24505         it's not portable and it doesn't work with cross-compiles.
24506         Problem reported by Bruno Haible.  Fix missing-$ typo in
24507         'test "gl_cv_ignore_unused_libraries" ...' that prevented
24508         -zignore from being used with Sun's C compiler.
24509
24510 2006-01-12  Simon Josefsson  <jas@extundo.com>
24511
24512         * lib/base64.c: Fix warning, reported by Bruno Haible
24513         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
24514
24515 2006-01-12  Bruno Haible  <bruno@clisp.org>
24516
24517         * modules/ldd: New file.
24518         * build-aux/ldd.sh.in: New file.
24519         * MODULES.html.sh (Support for building libraries and executables): Add
24520         ldd.
24521
24522 2006-01-12  Bruno Haible  <bruno@clisp.org>
24523
24524         * m4/ldd.m4: New file.
24525
24526 2006-01-12  Bruno Haible  <bruno@clisp.org>
24527
24528         * gnulib-tool (func_import, func_create_testdir): Don't go into an
24529         endless loop while replacing $auxdir with build-aux.
24530
24531 2006-01-11  Simon Josefsson  <jas@extundo.com>
24532
24533         * lib/stdint_.h (SIZE_MAX): Add missing (.
24534
24535 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
24536
24537         Sync from coreutils.
24538         * lib/md5.c: Fix commentary typos.
24539         (alignof, UNALIGNED_P): No need for a GCC-specific version.
24540         * lib/md5.h (__attribute__): Remove; unused.
24541         * lib/sha1.c: Fix commentary to match md5 better.
24542         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
24543         so that we don't need to worry about alignment.  All uses changed.
24544         This merges the 2005-10-28 md5 change into sha1.
24545
24546 2006-01-11  Jim Meyering  <jim@meyering.net>
24547
24548         Sync from coreutils.
24549         * lib/md5.c (OP): Fix spacing.
24550
24551 2006-01-11  Bruno Haible  <bruno@clisp.org>
24552
24553         Ensure automatic ordering between gl_LOCK and gl_ARGP.
24554         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
24555         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
24556
24557 2006-01-11  Bruno Haible  <bruno@clisp.org>
24558
24559         Ensure automatic ordering between gl_LOCK and gl_ARGP.
24560         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
24561         the "early" section as well.
24562
24563 2006-01-11  Bruno Haible  <bruno@clisp.org>
24564
24565         Avoid "ar: no archive members specified" error on MacOS X.
24566         * gnulib-tool (func_modules_add_dummy): New function.
24567         (func_import, func_create_testdir): Invoke it.
24568
24569 2006-01-11  Bruno Haible  <bruno@clisp.org>
24570
24571         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
24572         with $auxdir in AC_CONFIG_FILES statements.
24573
24574 2006-01-11  Bruno Haible  <bruno@clisp.org>
24575
24576         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
24577         Initialize also noinst_HEADERS to empty.
24578
24579 2006-01-11  Bruno Haible  <bruno@clisp.org>
24580
24581         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
24582         variables.
24583         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
24584         autoreconf.
24585
24586 2006-01-11  Bruno Haible  <bruno@clisp.org>
24587
24588         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
24589         overridable by the user.
24590         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
24591
24592 2006-01-10  Simon Josefsson  <jas@extundo.com>
24593
24594         * modules/sys_socket: New file.
24595
24596 2006-01-10  Simon Josefsson  <jas@extundo.com>
24597
24598         * m4/sys_socket_h.m4: New file.
24599
24600 2006-01-10  Simon Josefsson  <jas@extundo.com>
24601
24602         * lib/socket_.h: New file.
24603
24604 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
24605
24606         * modules/readutmp (Maintainer): Add myself.
24607
24608 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
24609
24610         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
24611         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
24612         People who are still concerned with buggy memcmp implementations
24613         can invoke gl_FUNC_MEMCMP themselves.
24614
24615 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
24616
24617         * lib/regex_internal.h (BITSET_WORD_BITS):
24618         Work around a bug in 64-bit PGC (before version 6.1-2), where the
24619         preprocessor mishandles large unsigned values as if they were signed.
24620         Problem reported by Claudio Fontana in
24621         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
24622
24623 2006-01-10  Jim Meyering  <jim@meyering.net>
24624
24625         Avoid the double-free (first in fts_read, second in fts_close) that
24626         would occur when an `active' directory is made inaccessible (e.g.,
24627         via chmod a-x) during a traversal.
24628         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
24629         before returning.  Reproduce this failure by
24630         mkdir -p a/b; cd a; chmod a-x . b
24631         Reported by Stavros Passas.
24632
24633         Sync from coreutils.
24634         * lib/sha1.c: Tweak grammar in a comment.
24635
24636 2006-01-10  Jim Meyering  <jim@meyering.net>
24637
24638         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
24639         Patch by Joerg Sonnenberger.
24640
24641 2006-01-10  Bruno Haible  <bruno@clisp.org>
24642
24643         * modules/readutmp: Depend on module free.
24644         * modules/strtok_r: Depend on module restrict.
24645
24646 2006-01-10  Bruno Haible  <bruno@clisp.org>
24647
24648         * modules/gettext (configure.ac): Add an invocation of
24649         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
24650
24651 2006-01-10  Bruno Haible  <bruno@clisp.org>
24652
24653         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
24654         Reported by Werner Lemberg <wl@gnu.org>.
24655
24656 2006-01-10  Bruno Haible  <bruno@clisp.org>
24657
24658         * lib/localcharset.c: Update from GNU gettext.
24659
24660 2006-01-10  Bruno Haible  <bruno@clisp.org>
24661
24662         * lib/argp.h (__const): Remove macro. Use const instead.
24663         * lib/argp-fmtstream.h (__const): Likewise.
24664         * lib/glob_.h (__const): Remove macro.
24665         * lib/glob-libc.h: Use const instead of __const.
24666
24667 2006-01-10  Bruno Haible  <bruno@clisp.org>
24668
24669         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
24670         variable.
24671         Needed to avoid an automake error regarding the 'gettext' module.
24672
24673 2006-01-09  Simon Josefsson  <jas@extundo.com>
24674
24675         * modules/inet_ntop (Depends-on): Add restrict.
24676
24677 2006-01-09  Simon Josefsson  <jas@extundo.com>
24678
24679         * modules/gc-rijndael-tests (License): Put under LGPL.
24680
24681         * modules/gc-des-tests (License): Likewise.
24682
24683         * modules/gc-arcfour-tests (License): Likewise.
24684
24685         * modules/gc-arctwo-tests (License): Likewise.
24686
24687         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
24688
24689         * modules/gc-hmac-sha1-tests (Files): Likewise.
24690
24691         * modules/gc-hmac-md5-tests (License): Likewise.
24692
24693         * modules/gc-sha1-tests (License): Likewise.
24694
24695         * modules/gc-md5-tests (License): Likewise.
24696
24697         * modules/gc-md4-tests (License): Likewise.
24698
24699         * modules/gc-md2-tests (License): Likewise.
24700
24701         * modules/gc-tests (License): Likewise.
24702
24703         * modules/des-tests (License): Likewise.
24704
24705         * modules/md4-tests (License): Likewise.
24706
24707         * modules/md2-tests (License): Likewise.
24708
24709 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
24710
24711         Sync from coreutils:
24712
24713         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
24714         * modules/lib-ignore: New file.
24715         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
24716         chdir-safer.m4, lchmod.m4.
24717         * modules/openat: Add mkdirat.c, openat-priv.h.
24718
24719 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
24720
24721         Sync from coreutils.
24722         * m4/lib-ignore.m4: New file.
24723         * m4/lchmod.m4: New file.
24724
24725 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
24726
24727         Sync from coreutils.
24728         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
24729         for write access: POSIX says that must fail.
24730         * lib/fts.c (diropen): Likewise.
24731         * lib/save-cwd.c (save_cwd): Likewise.
24732         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
24733         well, for minor improvements on hosts that lack O_DIRECTORY.
24734         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
24735         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
24736         Fall back on chown if open failed with EACCES.
24737
24738         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
24739         Report an error at compile-time if only a 1-second nominal clock
24740         resolution is found.
24741
24742         * lib/lchmod.h: New file.
24743         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
24744         (make_dir_parents): Use lchown rather than chown, and
24745         lchmod rather than chmod.
24746
24747         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
24748         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
24749         "proc" reported by n0dalus.
24750
24751         * lib/mountlist.c: Include <limits.h>.
24752         (dev_from_mount_options)
24753         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
24754         New function.  It no longer assumes "dev=" has the System V meaning
24755         on Linux (since it doesn't).  It also parses "dev=" more carefully.
24756         (read_file_system_list)
24757         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
24758         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
24759         dev= in that case.
24760
24761         * lib/posixtm.h (PDS_PRE_2000): New macro.
24762         * lib/posixtm.c (year): Arg is now syntax_bits rather than
24763         allow_century.  All usages changed.  Reject dates outside the range
24764         1969-1999 if PDS_PRE_2000 is used.
24765
24766 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
24767
24768         Sync from coreutils.
24769         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
24770         (Time of day items): Mention the possibility of leap seconds.
24771         Problem reported by Dr. David Alan Gilbert.
24772
24773 2006-01-09  Jim Meyering  <jim@meyering.net>
24774
24775         Sync from coreutils.
24776
24777         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
24778
24779         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
24780
24781         * lib/modechange.c (mode_compile): Reject an invalid mode string
24782         that starts with an octal digit.  From Andreas Gruenbacher.
24783
24784         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
24785         and dup to open_safer and dup_safer, respectively.
24786         (openat_permissive): Fix typo in comment.
24787
24788         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
24789         "gettext.h"; either no longer needed or are guaranteed by openat.h.
24790         (_): Remove; no longer needed.
24791         (openat): Renamed from rpl_openat; no need for rpl_openat
24792         since openat.h renames openat for us.
24793         Replace most of the body with a call to openat_permissive,
24794         to avoid duplicate code.
24795         Port to (probably hypothetical) environments were mode_t is
24796         wider than int.
24797         (openat_permissive): Require mode arg, so that we can check
24798         types better.  Put it just after flags.  Change cwd failure
24799         indicator from pointer-to-bool to pointer-to-errno-value.
24800         All callers changed.
24801         Invoke openat_save_fail and/or openat_restore_fail if
24802         cwd_errno is null, so that openat can call us.
24803         (openat_permissive, fdopendir, fstatat, unlinkat):
24804         Simplify errno handling to avoid some duplicate code,
24805         as it's OK to set errno on success.
24806         * lib/openat.h: Revamp code so that function macros depend on
24807         __OPENAT_PREFIX only, not also on AT_FDCWD.
24808         (openat_ro): Remove.  Caller changed to use openat_permissive.
24809         (openat_permissive): Now a macro, if not a function.
24810         (openat_restore_fail, openat_save_fail): Now always functions,
24811         since mkdirat needs them even if __OPENAT_PREFIX is defined.
24812
24813         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
24814         and openat.c.
24815         * lib/mkdirat.c: Include openat-priv.h.
24816         Remove definitions of macros defined therein.
24817         * lib/openat.c: Likewise.
24818
24819         * lib/mkdirat.c (mkdirat): New file and function.
24820         * lib/openat.h (mkdirat): Declare.
24821
24822         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
24823
24824         * lib/openat.h (openat_permissive): Declare.
24825         (openat_ro): Define.
24826
24827         * lib/openat.c (EXPECTED_ERRNO): New macro.
24828         (openat_permissive): New function -- used in remove.c rewrite.
24829         (all functions): Set errno just before returning, only if there
24830         was an actual failure.
24831         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
24832
24833         Emulate openat-family functions using Linux's procfs, if possible.
24834         Idea and some code based on Ulrich Drepper's glibc changes.
24835
24836         * lib/openat.c: (BUILD_PROC_NAME): New macro.
24837         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
24838         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
24839         before falling back on save_cwd and restore_cwd.
24840         (fdopendir, fstatat, unlinkat): Likewise.
24841
24842         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
24843         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
24844
24845         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
24846         as second argument to va_arg.  Otherwise, some versions of gcc
24847         warn that `if this code is reached, the program will abort'.
24848
24849 2006-01-09  Jim Meyering  <jim@meyering.net>
24850
24851         Sync from coreutils.
24852         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
24853         Require openat-priv.h.
24854
24855 2006-01-09  Bruno Haible  <bruno@clisp.org>
24856
24857         * modules/strnlen (Include): Use strnlen.h.
24858
24859 2006-01-09  Bruno Haible  <bruno@clisp.org>
24860
24861         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
24862
24863 2006-01-09  Bruno Haible  <bruno@clisp.org>
24864
24865         * lib/sysexit_.h (EX_OK): New macro.
24866         Suggested by Martin Lambers <marlam@marlam.de>.
24867
24868 2006-01-09  Bruno Haible  <bruno@clisp.org>
24869
24870         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
24871         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
24872
24873 2006-01-09  Bruno Haible  <bruno@clisp.org>
24874
24875         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
24876         numbers.
24877
24878 2006-01-09  Bruno Haible  <bruno@clisp.org>
24879
24880         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
24881         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
24882         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
24883         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
24884
24885 2006-01-09  Bruno Haible  <bruno@clisp.org>
24886
24887         * build-aux/javacomp.sh.in: New file, moved from lib/.
24888         * modules/javacomp-script (Files): Update.
24889         (configure.ac): Add AC_CONFIG_FILES invocation.
24890         (EXTRA_DIST): Remove variable.
24891
24892         * build-aux/javaexec.sh.in: New file, moved from lib/.
24893         * modules/javaexec (Files): Update.
24894         (configure.ac): Add AC_CONFIG_FILES invocation.
24895         (EXTRA_DIST): Remove javaexec.sh.in.
24896
24897         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
24898         * modules/csharpcomp-script (Files): Update.
24899         (configure.ac): Add AC_CONFIG_FILES invocation.
24900         (EXTRA_DIST): Remove variable.
24901
24902         * build-aux/csharpexec.sh.in: New file, moved from lib/.
24903         * modules/csharpexec (Files): Update.
24904         (configure.ac): Add AC_CONFIG_FILES invocation.
24905         (EXTRA_DIST): Remove csharpexec.sh.in.
24906
24907 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
24908
24909         Sync from coreutils.
24910
24911         Add POSIX ACL support
24912         * lib/acl.h (copy_acl, set_acl): Add declarations.
24913         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
24914         systems other than Linux.
24915         (chmod_or_fchmod): New function: use fchmod when possible,
24916         and chmod otherwise.
24917         (file_has_acl): Add a POSIX ACL implementation, with a
24918         Linux-specific subcase.
24919         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
24920         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
24921         acls are unsupported.
24922         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
24923         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
24924         are unsupported.
24925
24926 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
24927
24928         Sync from coreutils.
24929         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
24930
24931 2006-01-07  Bruno Haible  <bruno@clisp.org>
24932
24933         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
24934         gl_EARLY.
24935
24936 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24937
24938         * lib/strftime.c (tzname): Don't declare if it is already #defined.
24939         Problem reported for Mingw by Mark Junker.
24940
24941 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24942
24943         * README: Gnulib normally doesn't generate a tarball.
24944
24945 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
24946
24947         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
24948         long int, not int, for nanosecond counts, so that people who are
24949         used to POSIX struct timespec won't be surprised.  Reported by Jim
24950         Meyering.
24951
24952 2005-12-28  Bruno Haible  <bruno@clisp.org>
24953
24954         * build-aux/config.rpath: Update from GNU gettext.
24955
24956 2005-12-16  Jim Meyering  <jim@meyering.net>
24957
24958         * modules/fprintftime: New module.
24959         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
24960
24961 2005-12-16  Jim Meyering  <jim@meyering.net>
24962
24963         * m4/fprintftime.m4: New file.
24964
24965 2005-12-16  Jim Meyering  <jim@meyering.net>
24966
24967         * lib/fprintftime.c, lib/fprintftime.h: New files.
24968
24969 2005-12-15  Simon Josefsson  <jas@extundo.com>
24970
24971         * modules/socklen (configure.ac): Fix M4 macro name, to align with
24972         new m4/socklen.m4.
24973
24974 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
24975
24976         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
24977         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
24978
24979 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
24980
24981         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
24982         * lib/argp-help.c (fill_in_uparams): Check if the constructed
24983         struct uparams is valid. Fall back to the default values if it is
24984         not.
24985
24986 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
24987
24988         * modules/argp (Files): Add argp-pin.c
24989         (Depends-on): dirname
24990         (lib_SOURCES): Add argp-pin.c
24991
24992 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
24993
24994         * m4/argp.m4:  Check if program_invocation_name and
24995         program_invocation_short_name are declared and define appropriate
24996         macros if they are not.
24997
24998 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
24999
25000         * lib/argp-help.c (__argp_base_name): New function
25001         (__argp_short_program_name): Rewrite using __argp_base_name
25002         * lib/argp-namefrob.h: Define program_invocation_name and
25003         program_invocation_short_name if requested
25004         (__argp_base_name): Add prototype
25005         * lib/argp-parse.c (argp_def): Use gettext wrappers
25006         (argp_default_parser): Use __argp_base_name
25007         * lib/argp-pin.c: New file. Defines program_invocation_name and
25008         program_invocation_short_name on systems that lack them.
25009
25010 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
25011
25012         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
25013         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
25014         porting problem reported by Georg Schwarz in
25015         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
25016
25017 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
25018
25019         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
25020         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
25021         porting problem reported by Georg Schwarz in
25022         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
25023
25024 2005-12-05  Bruno Haible  <bruno@clisp.org>
25025
25026         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
25027         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
25028         Reported by Mark Junker <mjscod@gmx.de>.
25029
25030 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
25031
25032         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
25033         Use implementation from Albert Chin, with some
25034         comments/corrections by Stepan Kasal and myself.
25035
25036 2005-12-02  Bruno Haible  <bruno@clisp.org>
25037
25038         * gnulib-tool (func_import): Accept GPLed build tool modules when
25039         --lgpl is given.
25040         * modules/csharpcomp-script: New file.
25041         * modules/csharpcomp: Depend on it.
25042         * modules/javacomp-script: New file.
25043         * modules/javacomp: Depend on it.
25044         Suggested by Simon Josefsson.
25045
25046 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
25047
25048         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
25049         statement, to work around an HP-UX 10.20 compiler bug reported by
25050         Peter O'Gorman.
25051
25052 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
25053
25054         * modules/savedir (Depends-on): Add openat.
25055
25056 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
25057
25058         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
25059         (uintmax_t) [defined uintmax_t]: Do not declare.
25060         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
25061         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
25062         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
25063         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
25064         sake of portability to weird hosts that C allows (though we don't
25065         know of any practical examples).
25066
25067         * lib/savedir.h (fdsavedir): New decl.
25068         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
25069         contains most of the former guts of savedir.
25070         (savedir): Use savedirstream.
25071         Include "openat.h".
25072
25073 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
25074
25075         * modules/obstack (Files): Add m4/ulonglong.m4.
25076         Problem reported by Davide Angelocola.
25077
25078 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
25079
25080         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
25081         coreutils no longer futzes with rounding modes.
25082
25083 2005-11-14  Jim Meyering  <jim@meyering.net>
25084
25085         * lib/mkstemp-safer.c: Include <config.h>, required for possible
25086         replacement of mkstemp.
25087
25088 2005-11-10  Simon Josefsson  <jas@extundo.com>
25089
25090         * lib/readline.c: Remove EOL.
25091
25092 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
25093
25094         * modules/gethrxtime (Depends-on): Add gettime.
25095
25096 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
25097
25098         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
25099         or gettimeofday; no longer needed.
25100
25101 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
25102
25103         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
25104         time business.
25105         (gethrxtime) [! (HAVE_NANOUPTIME
25106         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
25107         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
25108         our own approximation.
25109
25110 2005-11-08  Eric Blake  <ebb9@byu.net>
25111
25112         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
25113
25114 2005-11-08  Eric Blake  <ebb9@byu.net>
25115
25116         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
25117
25118 2005-11-04  Bruno Haible  <bruno@clisp.org>
25119
25120         * gnulib-tool: Implement --update mode.
25121
25122 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
25123
25124         Fix porting problem reported by Theodoros V. Kalamatianos.
25125         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
25126         Don't assume that futimes failing means we must fail.
25127
25128 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
25129
25130         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
25131         variables to suggest the intended function of the PATH_MAX check.
25132
25133 2005-10-30  Kean Johnston  <jkj@sco.com>
25134
25135         Trivial changes to support SCO systems.
25136         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
25137         as PATH_MAX.
25138         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
25139         where __ptr is null when no I/O is pending.
25140
25141 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
25142
25143         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
25144         leave errno alone.  Problem reported by Dmitry V. Levin.
25145
25146 2005-10-28  Simon Josefsson  <jas@extundo.com>
25147
25148         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
25149         Test more.
25150
25151         * tests/test-gc-md2.c, tests/test-md2.c: New files.
25152
25153         * modules/md2, modules/md2-tests: New files.
25154
25155 2005-10-28  Simon Josefsson  <jas@extundo.com>
25156
25157         * m4/inet_ntop.m4: More tests.
25158
25159         * m4/gc-md2.m4, md2.m4: New file.
25160
25161 2005-10-28  Simon Josefsson  <jas@extundo.com>
25162
25163         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
25164         "restrict" keywords, as per POSIX.  Protect the function
25165         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
25166         Don't use K&R prototypes.  Check the sprintf return values.
25167         Re-define EAFNOSUPPORT if not present.  Indent.
25168
25169         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
25170         suggested by Bruno Haible <bruno@clisp.org>.
25171
25172         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
25173
25174         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
25175
25176         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
25177         libgcrypt).
25178
25179         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
25180
25181         * lib/md2.h, lib/md2.c: New files.
25182
25183 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
25184
25185         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
25186         errno alone.  Problem reported by Frederic Jolliton.
25187
25188 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
25189
25190         * modules/verify (License): Change from GPL to LGPL.  This is a
25191         tiny module and there are apparently near-equivalents that are
25192         under the BSD license.
25193
25194 2005-10-24  Simon Josefsson  <jas@extundo.com>
25195
25196         * modules/sha1: Relicense to LGPL.
25197
25198 2005-10-24  Simon Josefsson  <jas@extundo.com>
25199
25200         * lib/md4.h: Shrink buffer size, now that we changed the type.
25201
25202 2005-10-23  Simon Josefsson  <jas@extundo.com>
25203
25204         * gnulib-tool (func_import): Fix --tests-base.
25205
25206 2005-10-22  Simon Josefsson  <jas@extundo.com>
25207
25208         * modules/arcfour (Depends-on): Need stdint.
25209
25210 2005-10-22  Simon Josefsson  <jas@extundo.com>
25211
25212         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
25213         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
25214
25215 2005-10-22  Simon Josefsson  <jas@extundo.com>
25216
25217         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
25218         suggested by Bruno Haible <bruno@clisp.org>.
25219
25220 2005-10-22  Simon Josefsson  <jas@extundo.com>
25221
25222         * lib/crc.h: Include stddef.h, for size_t.
25223
25224 2005-10-22  Simon Josefsson  <jas@extundo.com>
25225
25226         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
25227         arcfour_context struct (simplify test vector testing in GNU
25228         Shishi).
25229
25230 2005-10-21  Simon Josefsson  <jas@extundo.com>
25231
25232         * modules/des, modules/des-tests: New files.
25233
25234         * modules/gc-des, modules/gc-des-tests: New files.
25235
25236         * tests/test-des.c, tests/test-gc-des.c: New file.
25237
25238 2005-10-21  Simon Josefsson  <jas@extundo.com>
25239
25240         * modules/arctwo, modules/arctwo-tests: New files.
25241
25242         * tests/test-arctwo.c: New file.
25243
25244         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
25245
25246         * tests/test-gc-arctwo.c: New file.
25247
25248 2005-10-21  Simon Josefsson  <jas@extundo.com>
25249
25250         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
25251         Bruno Haible <bruno@clisp.org>.
25252
25253         * m4/gc-des.m4: New file.
25254
25255 2005-10-21  Simon Josefsson  <jas@extundo.com>
25256
25257         * m4/arctwo.m4: New file.
25258
25259         * m4/gc-arctwo.m4: New file.
25260
25261 2005-10-21  Simon Josefsson  <jas@extundo.com>
25262
25263         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
25264         block.
25265
25266 2005-10-21  Simon Josefsson  <jas@extundo.com>
25267
25268         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
25269         <bruno@clisp.org>.
25270
25271         * lib/hmac-sha1.c (hmac_sha1): Likewise.
25272
25273         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
25274         Bruno Haible <bruno@clisp.org>.
25275
25276         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
25277         <bruno@clisp.org>.
25278
25279 2005-10-21  Simon Josefsson  <jas@extundo.com>
25280
25281         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
25282
25283 2005-10-21  Simon Josefsson  <jas@extundo.com>
25284
25285         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
25286
25287 2005-10-21  Simon Josefsson  <jas@extundo.com>
25288
25289         * lib/des.h, lib/des.c: New files.
25290
25291         * lib/gc-gnulib.c: Support DES.c
25292
25293 2005-10-21  Simon Josefsson  <jas@extundo.com>
25294
25295         * lib/arctwo.h, lib/arctwo.c: New files.
25296
25297         * lib/gc-gnulib.c: Support ARCTWO.
25298
25299 2005-10-21  Simon Josefsson  <jas@extundo.com>
25300
25301         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
25302         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25303
25304 2005-10-21  Simon Josefsson  <jas@extundo.com>
25305
25306         * gnulib-tool (func_import, func_create_testdir): Define automake
25307         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
25308         Makefile.am snippet),
25309         suggested by Bruno Haible <bruno@clisp.org>.
25310
25311         * modules/gc (Makefile.am): Use it.
25312
25313 2005-10-21  Bruno Haible  <bruno@clisp.org>
25314
25315         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
25316         patch.
25317
25318 2005-10-19  Simon Josefsson  <jas@extundo.com>
25319
25320         * tests/test-gc-rijndael.c: New file.
25321
25322         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
25323
25324 2005-10-19  Simon Josefsson  <jas@extundo.com>
25325
25326         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
25327         interface too.
25328
25329 2005-10-19  Simon Josefsson  <jas@extundo.com>
25330
25331         * tests/test-gc-arcfour.c: New file.
25332
25333         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
25334
25335 2005-10-19  Simon Josefsson  <jas@extundo.com>
25336
25337         * modules/gc-md4, modules/gc-md4-tests: New file.
25338
25339         * tests/test-gc-md4.c: New file.
25340
25341 2005-10-19  Simon Josefsson  <jas@extundo.com>
25342
25343         * m4/gc-md4.m4: New file.
25344
25345 2005-10-19  Simon Josefsson  <jas@extundo.com>
25346
25347         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
25348         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
25349         <kasal@ucw.cz>.
25350
25351 2005-10-19  Simon Josefsson  <jas@extundo.com>
25352
25353         * m4/gc-arcfour.m4: New file.
25354
25355         * m4/gc-rijndael.m4: New file.
25356
25357 2005-10-19  Simon Josefsson  <jas@extundo.com>
25358
25359         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
25360
25361 2005-10-19  Simon Josefsson  <jas@extundo.com>
25362
25363         * lib/gc-gnulib.c: Support ARCFOUR.
25364
25365 2005-10-19  Simon Josefsson  <jas@extundo.com>
25366
25367         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
25368         support.
25369
25370         * lib/gc.h: Add ECB enum type.
25371
25372         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
25373
25374 2005-10-18  Simon Josefsson  <jas@extundo.com>
25375
25376         * tests/test-md5.c: New file.
25377
25378         * modules/md5-tests: New file.
25379
25380 2005-10-18  Simon Josefsson  <jas@extundo.com>
25381
25382         * tests/test-md4.c: New file.
25383
25384         * modules/md4, modules/md4-tests: New files.
25385
25386 2005-10-18  Simon Josefsson  <jas@extundo.com>
25387
25388         * m4/md4.m4: New file.
25389
25390 2005-10-18  Simon Josefsson  <jas@extundo.com>
25391
25392         * lib/md4.h, lib/md4.c: New files, based on md5.?.
25393
25394 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
25395
25396         * gnulib-tool (func_create_testdir): Omit the second check whether
25397         BUILT_SOURCES in nonempty.
25398
25399 2005-10-17  Simon Josefsson  <jas@extundo.com>
25400
25401         * tests/test-rijndael.c: New file.
25402
25403 2005-10-17  Simon Josefsson  <jas@extundo.com>
25404
25405         * modules/sha1: Depend on stdint instead of md5.
25406
25407         * modules/md5: Depend on stdint, remove uint32_t.
25408
25409 2005-10-17  Simon Josefsson  <jas@extundo.com>
25410
25411         * modules/gc-sha1-tests: New file.
25412
25413         * tests/test-gc-sha1.c: New file.
25414
25415 2005-10-17  Simon Josefsson  <jas@extundo.com>
25416
25417         * m4/md5.m4: Remove call to uint32_t.m4.
25418
25419 2005-10-17  Simon Josefsson  <jas@extundo.com>
25420
25421         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
25422
25423         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
25424         md5.h.
25425
25426         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
25427
25428         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
25429
25430 2005-10-17  Simon Josefsson  <jas@extundo.com>
25431
25432         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
25433
25434 2005-10-17  Simon Josefsson  <jas@extundo.com>
25435
25436         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
25437
25438 2005-10-17  Simon Josefsson  <jas@extundo.com>
25439
25440         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
25441
25442         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
25443
25444 2005-10-17  Bruno Haible  <bruno@clisp.org>
25445
25446         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
25447         that it can also be used in a test.
25448
25449 2005-10-16  Bruno Haible  <bruno@clisp.org>
25450
25451         * gnulib-tool (func_emit_tests_Makefile_am): Also define
25452         TESTS_ENVIRONMENT, so that individual tests can augment it.
25453
25454         * gnulib-tool (func_create_testdir): Use an intermediate target for
25455         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
25456         macros, like $(ALLOCA_H), which cannot be passed through the command
25457         line.
25458
25459 2005-10-15  Simon Josefsson  <jas@extundo.com>
25460
25461         * modules/rijndael-tests: New file.
25462
25463         * modules/rijndael: New file.
25464
25465 2005-10-15  Simon Josefsson  <jas@extundo.com>
25466
25467         * m4/rijndael.m4: New file.
25468
25469 2005-10-15  Simon Josefsson  <jas@extundo.com>
25470
25471         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
25472
25473         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
25474
25475 2005-10-14  Simon Josefsson  <jas@extundo.com>
25476
25477         * tests/test-arcfour.c: New file.
25478
25479         * modules/arcfour, modules/arcfour-tests: New files.
25480
25481 2005-10-14  Simon Josefsson  <jas@extundo.com>
25482
25483         * m4/arcfour.m4: New file.
25484
25485 2005-10-14  Simon Josefsson  <jas@extundo.com>
25486
25487         * lib/arcfour.h, lib/arcfour.c: New files.
25488
25489 2005-10-14  Roland McGrath  <roland@redhat.com>
25490
25491         Import from libc.  [BZ #1331]
25492         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
25493         macro argument.
25494         Reported by Matej Vela <vela@debian.org>.
25495
25496 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
25497
25498         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
25499         include <wchar.h>; no longer needed.
25500
25501 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
25502
25503         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
25504
25505 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
25506         and  Ulrich Drepper  <drepper@redhat.com>
25507
25508         Import from libc.
25509         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
25510         instead of inline stream orientation test and two separate
25511         function calls.  Pay no attention to USE_IN_LIBIO.
25512
25513 2005-10-13  Simon Josefsson  <jas@extundo.com>
25514
25515         * modules/gc-hmac-md5-tests: New file.
25516
25517         * tests/test-gc-hmac-sha1.c: New file.
25518
25519         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
25520
25521         * modules/gc-hmac-md5-tests: New file.
25522
25523         * tests/test-gc-md5.c: New file.
25524
25525         * modules/gc-md5-tests: New file.
25526
25527 2005-10-13  Simon Josefsson  <jas@extundo.com>
25528
25529         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
25530         Move memory allocation outside of loop.
25531
25532 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
25533
25534         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
25535         intermediate directory is in a read-only file system.  Problem
25536         reported by Eric Blake.
25537
25538 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
25539
25540         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
25541
25542 2005-10-12  Simon Josefsson  <jas@extundo.com>
25543
25544         * tests/test-hmac-sha1.c: New file.
25545
25546         * modules/hmac-sha1-tests: New file.
25547
25548         * modules/hmac-sha1: New file.
25549
25550 2005-10-12  Simon Josefsson  <jas@extundo.com>
25551
25552         * modules/gc-sha1: New file.
25553
25554 2005-10-12  Simon Josefsson  <jas@extundo.com>
25555
25556         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
25557
25558         * tests/test-gc-pbkdf2-sha1.c: New file.
25559
25560 2005-10-12  Simon Josefsson  <jas@extundo.com>
25561
25562         * modules/gc-md5, modules/gc-hmac-md5: New files.
25563
25564         * modules/gc (Files): Remove md5, memxor and hmac files.
25565
25566 2005-10-12  Simon Josefsson  <jas@extundo.com>
25567
25568         * m4/gc-pbkdf2-sha1.m4: New file.
25569
25570         * m4/gc-hmac-sha1.m4: New file.
25571
25572         * m4/gc-sha1: New file.
25573
25574         * m4/hmac-sha1.m4: New file.
25575
25576 2005-10-12  Simon Josefsson  <jas@extundo.com>
25577
25578         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
25579
25580         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
25581
25582 2005-10-12  Simon Josefsson  <jas@extundo.com>
25583
25584         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
25585         suggested by Bruno Haible <bruno@clisp.org>.
25586
25587 2005-10-12  Simon Josefsson  <jas@extundo.com>
25588
25589         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
25590
25591 2005-10-12  Simon Josefsson  <jas@extundo.com>
25592
25593         * lib/gc-pbkdf2-sha1.c: New file.
25594
25595         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
25596
25597 2005-10-12  Simon Josefsson  <jas@extundo.com>
25598
25599         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
25600
25601         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
25602
25603 2005-10-12  Simon Josefsson  <jas@extundo.com>
25604
25605         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
25606         GC_USE_HMAC_MD5, respectively.
25607
25608         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
25609         (gc_md5): Fix typo.
25610
25611         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
25612
25613         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
25614
25615         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
25616
25617 2005-10-12  Bruno Haible  <bruno@clisp.org>
25618
25619         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
25620         Reported by Stepan Kasal <kasal@ucw.cz>.
25621
25622 2005-10-11  Simon Josefsson  <jas@extundo.com>
25623
25624         * tests/test-crc.c: New file.
25625
25626         * modules/crc, modules/crc-tests: New files.
25627
25628 2005-10-11  Simon Josefsson  <jas@extundo.com>
25629
25630         * m4/crc.m4: New file.
25631
25632 2005-10-11  Simon Josefsson  <jas@extundo.com>
25633
25634         * lib/gc.h: Add gc_hash and gc_hash_buffer.
25635
25636         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
25637
25638         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
25639
25640 2005-10-11  Simon Josefsson  <jas@extundo.com>
25641
25642         * lib/crc.h, lib/crc.c: New files.
25643
25644         * lib/gc.h (gc_hash_buffer): Add doc.
25645
25646 2005-10-11  Bruno Haible  <bruno@clisp.org>
25647
25648         * modules/c-strcasestr: New file.
25649         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
25650
25651 2005-10-11  Bruno Haible  <bruno@clisp.org>
25652
25653         * modules/c-strcase: New file.
25654         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
25655
25656 2005-10-11  Bruno Haible  <bruno@clisp.org>
25657
25658         * lib/strcasecmp.c: Include limits.h.
25659         (strcasecmp): Avoid integer overflow on exotic platforms.
25660         * lib/strncasecmp.c: Include limits.h.
25661         (strncasecmp): Avoid integer overflow on exotic platforms.
25662         Reported by Paul Eggert.
25663
25664 2005-10-11  Bruno Haible  <bruno@clisp.org>
25665
25666         * lib/c-strcasestr.h: New file, from GNU gettext.
25667         * lib/c-strcasestr.c: New file, from GNU gettext.
25668
25669 2005-10-11  Bruno Haible  <bruno@clisp.org>
25670
25671         * lib/c-strcase.h: New file, from GNU gettext.
25672         * lib/c-strcasecmp.c: New file, from GNU gettext.
25673         * lib/c-strncasecmp.c: New file, from GNU gettext.
25674
25675 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
25676
25677         * modules/mempcpy (License): GPL -> LGPL.
25678         * modules/strchrnul (License): Likewise.
25679         * modules/sysexits (License): Likewise.
25680
25681 2005-10-08  Simon Josefsson  <jas@extundo.com>
25682
25683         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
25684
25685 2005-10-07  Simon Josefsson  <jas@extundo.com>
25686
25687         * m4/memxor.m4: Remove gl_C_RESTRICT call.
25688
25689 2005-10-06  Simon Josefsson  <jas@extundo.com>
25690
25691         * tests/test-hmac-md5.c: New file.
25692
25693         * modules/hmac-md5-tests: New file.
25694
25695         * modules/hmac-md5: New file.
25696
25697 2005-10-06  Simon Josefsson  <jas@extundo.com>
25698
25699         * m4/hmac-md5.m4: New file.
25700
25701         * m4/memxor.m4: Require gl_C_RESTRICT.
25702
25703 2005-10-06  Simon Josefsson  <jas@extundo.com>
25704
25705         * lib/memxor.c (memxor): Avoid casts and warnings.
25706
25707 2005-10-06  Simon Josefsson  <jas@extundo.com>
25708
25709         * lib/hmac-md5.c: New file.
25710
25711         * lib/hmac.h: New file.
25712
25713 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
25714
25715         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
25716         promotes to int, not unsigned int, to catch the AIX 5.3
25717         compiler bug.
25718
25719 2005-10-05  Simon Josefsson  <jas@extundo.com>
25720
25721         * modules/memxor: New file.
25722
25723         * modules/iconv (Files): Move config.rpath to havelib, it is used
25724         there.
25725
25726         * modules/havelib (Files): Add config.rpath.
25727
25728 2005-10-05  Simon Josefsson  <jas@extundo.com>
25729
25730         * m4/memxor.m4: New file.
25731
25732 2005-10-05  Simon Josefsson  <jas@extundo.com>
25733
25734         * lib/memxor.c (memxor): Fix compiler error.
25735
25736         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
25737         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
25738
25739         * lib/memxor.h, lib/memxor.c: New files.
25740
25741         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
25742         we assume all systems have it, suggested by Jim Meyering
25743         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
25744         any systems lack sys/socket.h; mingw32 is known to lack it, but we
25745         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
25746         same reasons.
25747
25748 2005-10-05  Simon Josefsson  <jas@extundo.com>
25749
25750         * config/srclist.txt: Add glibc bug 1423 for md5.h.
25751
25752 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
25753
25754         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
25755         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
25756         needed, since the source code now assumes these .h files.
25757
25758 2005-10-05  Derek Price  <derek@ximbiot.com>
25759
25760         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
25761
25762 2005-10-05  Bruno Haible  <bruno@clisp.org>
25763
25764         * modules/stdint (License): Change to LGPL.
25765
25766 2005-10-04  Simon Josefsson  <jas@extundo.com>
25767
25768         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
25769         D. Baushke" <mdb@gnu.org>.
25770
25771 2005-10-04  Bruno Haible  <bruno@clisp.org>
25772
25773         * lib/verify.h (verify_true): Provide alternative definition for C++.
25774
25775 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
25776
25777         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
25778         (SSIZE_MAX): New macro, if not already defined.
25779         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
25780         than 2 GiB.
25781
25782 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
25783
25784         Sync from coreutils.
25785         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
25786         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
25787         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
25788         ULLONG_MAX doesn't work with 2.7.2.1.
25789
25790 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
25791
25792         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
25793         From Ben Pfaff.
25794
25795         * modules/exclude (Depends-on): Depend on verify.
25796         * modules/strtoimax (Depends-on): Likewise.
25797         * modules/utimecmp (Depends-on): Likewise.
25798
25799 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
25800
25801         * lib/exclude.c: Include verify.h.
25802         (verify): Remove.  All callers changed to use verify.h's version.
25803         * lib/strtoimax.c: Likewise.
25804         * lib/utimecmp.c: Likewis.e
25805
25806         Sync from coreutils.
25807         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
25808         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
25809         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
25810         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
25811         bother returning ENOSYS if settimeofday or stime fails; just let
25812         them return whatever errno they want to return.
25813         * lib/utimens.c: Include unistd.h, for dup2.
25814         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
25815         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
25816
25817 2005-10-02  Jim Meyering  <jim@meyering.net>
25818
25819         Sync from coreutils.
25820         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
25821         from glibc-2.2.5 that fails for read-only files.
25822
25823 2005-10-02  Jim Meyering  <jim@meyering.net>
25824
25825         Sync from coreutils.
25826         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
25827         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
25828         `#if HAVE_CONFIG_H'.
25829         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
25830         Remove AT_FDCWD test.
25831         Do not consume the fd unless successful.
25832         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
25833         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
25834         block, so that we don't even try to compile it if settimeofday is
25835         available.  This works around a compilation failure on OSF1 V5.1,
25836         due to stime requiring a `long int*' while tv_sec is `int'.
25837
25838 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
25839
25840         Sync from coreutils.
25841         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
25842         against `yes', rather than just testing for nonempty.
25843
25844 2005-10-01  Simon Josefsson  <jas@extundo.com>
25845
25846         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
25847         and Darwin.
25848
25849         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
25850         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
25851         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
25852         freeaddrinfo and gai_strerror are declared by the POSIX headers.
25853         Check if struct addrinfo is declared.
25854
25855 2005-10-01  Simon Josefsson  <jas@extundo.com>
25856
25857         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
25858         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
25859         AI_* and EAI_* definitions.  Protect function declarations.
25860
25861 2005-10-01  Jim Meyering  <jim@meyering.net>
25862
25863         Sync from coreutils.
25864
25865         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
25866         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
25867         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
25868         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
25869         in the inet and nsl libraries.  Required on Solaris 5.7.
25870
25871 2005-10-01  Jim Meyering  <jim@meyering.net>
25872
25873         Sync from coreutils.
25874         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
25875         in the inet and nsl libraries.  Required on Solaris 5.7.
25876
25877 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
25878
25879         * lib/getdelim.c (getdelim): Remove unused variables.
25880
25881 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
25882
25883         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
25884         so that the code works even with ancient cpp.  Portability problem
25885         with GCC 2.7.2.1 reported by Thomas M.Ott.
25886
25887 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
25888
25889         * modules/regex (Depends-on): Add strcase.
25890
25891         * modules/gethostname (Licence): Change from GPL to LGPL, since
25892         gethostname.c is a trivial implementation of a standard library
25893         function.
25894         * modules/poll (License): Change from GPL to LGPL, since it's
25895         derived from LGPL code.
25896
25897 2005-09-27  Jim Meyering  <jim@meyering.net>
25898
25899         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
25900         HAVE_CONFIG_H.
25901
25902         * lib/intprops.h (signed_type_or_expr__): Define.
25903         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
25904         for unsigned types.
25905
25906 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
25907
25908         * lib/verify.h (verify_expr): Remove, replacing with:
25909         (verify_true): New macro that returns true instead of void.
25910         (verify_type__): Remove.
25911         (verify): Use verify_true rather than verify_type__.
25912
25913 2005-09-26  Bruno Haible  <bruno@clisp.org>
25914
25915         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
25916         is necessary.
25917         (lib_SOURCES): Remove mbchar.c.
25918         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
25919         (Files): Add m4/mbrtowc.m4.
25920         * modules/mbiter: Likewise.
25921         * modules/mbuiter: Likewise.
25922
25923 2005-09-26  Bruno Haible  <bruno@clisp.org>
25924
25925         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
25926         compile mbchar.c if they are not both present.
25927         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
25928         * m4/mbiter.m4 (gl_MBITER): Likewise.
25929         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
25930         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
25931         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
25932
25933 2005-09-25  Jim Meyering  <jim@meyering.net>
25934
25935         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
25936         also uses socklen_t.
25937
25938 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
25939
25940         * lib/utimens.c (ENOSYS): Define if not already defined.
25941         (futimens): Support having a null PATH if the file descriptor
25942         is nonnegative.
25943
25944         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
25945         Remove.
25946         (__attribute): Define to empty unless GCC 3.1 or later.
25947         This works around a core dump on OpenBSD 3.4, which has GCC
25948         2.95.3, which dumps core when given __attribute__(()).  It also
25949         simplifies other tests, since we really don't want to bother with
25950         worrying about which ancient version of GCC supported what.
25951         Original problem reported by Yoann Vandoorselaere, with part of
25952         the fix suggested by Derek Price.
25953
25954 2005-09-24  Jim Meyering  <jim@meyering.net>
25955
25956         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
25957         so we can once again use a positive bitfield width of 1 -- now we
25958         don't have to explain why we were using a bitfield width of 2.
25959
25960 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
25961
25962         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
25963         and similarly for the other external symbols.  Problem reported
25964         by James Gallager.
25965
25966         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
25967         bug reported by Jim Meyering.
25968
25969         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
25970         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
25971         not needed, since socklen is a prerequisite module.
25972
25973 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
25974
25975         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
25976         Problem reported by Eric Blake.
25977         (getaddrinfo): Initialize se so that it's not garbage.
25978         Redo internal storage allocation so that it doesn't make unportable
25979         assumptions about alignment.
25980         Fix a memory leak.
25981
25982         * lib/utimens.c (futimens): Use futimesat if available.
25983         Prefer it to futimes since it doesn't have the futimes bug.
25984
25985         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
25986         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
25987         Instead, declare a function that returns a pointer to an array,
25988         and use verify_type__ to declare the size of the array.
25989         Problem and germ of a solution reported by Bruno Haible.
25990         (verify_type__): Use 2, not 1, for bitfield size, to avoid
25991         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
25992
25993 2005-09-23  Jim Meyering  <jim@meyering.net>
25994
25995         Sync from coreutils.
25996         Correct build failure (socklen_t not defined) on at least
25997         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
25998         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
25999
26000 2005-09-23  Jim Meyering  <jim@meyering.net>
26001
26002         * modules/getaddrinfo (Depends-on): Add socklen.
26003
26004 2005-09-23  Bruno Haible  <bruno@clisp.org>
26005
26006         * tests/test-verify.c: New file.
26007
26008 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
26009
26010         Sync from coreutils.
26011
26012         * modules/argmatch (Depends-on): Add verify.
26013         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
26014         unistd-safer.
26015         * modules/save-cwd (Depends-on): Likewise.
26016
26017         * modules/openat (Files): Add lib/openat-die.c.
26018         (Depends-on): Remove error, exitfail.
26019         Add dirname.
26020
26021         * modules/verify: New file.
26022         * MODULES.html.sh (Diagnostics <assert.h>): New section,
26023         with "verify" module.
26024
26025 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
26026
26027         Sync from coreutils.
26028
26029         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
26030         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
26031         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
26032         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
26033         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
26034         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
26035         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
26036         Don't bother checking for string.h, stdlib.h, unistd.h.
26037         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
26038         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
26039         module's job.
26040         * m4/jm-macros.m4 (gl_MACROS): Likewise.
26041         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
26042
26043         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
26044         (gl_GETDATE): Use it.
26045
26046         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
26047
26048 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
26049
26050         Sync from coreutils.
26051
26052         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
26053         stat-time.h.
26054         * lib/argmatch.h: Include verify.h
26055         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
26056         (ARGMATCH_ASSERT): Remove; unused.
26057         * lib/canonicalize.c: Assume STDC_HEADERS.
26058         * lib/exclude.c: Include "strcase.h".
26059         * lib/regex_internal.h [!defined _LIBC]: Likewise.
26060         * lib/getusershell.c: Include stdio--.h rather than stdio.h
26061         and stdio-safer.h.
26062         (getusershell): Call fopen, not fopen_safer.
26063         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
26064         Do not include unistd-safer.h.
26065         (save_cwd): Don't call fd_safer; no longer needed
26066         now that we include fcntl--.h.
26067
26068         * lib/getdate.y (relative_time): New type.
26069         (RELATIVE_TIME_0): New constant.
26070         (parser_control): Use relative_time instead of doing it ourselves.
26071         (%union): Add new relative_time rel member.
26072         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
26073         Now typeless.
26074         (relunit, relunit_snumber): Now of type rel.
26075         (zone, rel, relunit, get_date): Adjust to above changes.
26076
26077         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
26078         Do not include unistd-safer.h.
26079         (getloadavg): Don't call fd_safer; no longer needed
26080         now that we include fcntl--.h.
26081
26082         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
26083         (make_dir_parents): Treat ENOSYS like EEXIST.
26084
26085         Improve quality of diagnostics on restore_cwd failure.
26086         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
26087         (make_dir_parents): Last arg is now int * (for errno), not bool *.
26088         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
26089         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
26090         each time through the loop.  Do not diagnose restore_cwd failure;
26091         that is the caller's job (and perhaps the caller does not care).
26092
26093         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
26094         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
26095         If the file already exists but is not a directory, don't bother
26096         to try to make its parents.
26097         Close potential file descriptor leak if we can't chdir("/") (!).
26098         Don't always return true if chdir($PWD) fails; return true only
26099         if the requested action was done successfully (except for the
26100         chdir($PWD)).
26101         Don't log final directory unless we actually made it.
26102         Refactor to avoid duplicate code to fix up permissions.
26103         Don't attempt to fix up parent permissions if chdir($PWD) fails.
26104
26105         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
26106         to make it a bit faster and (I hope) clearer.
26107         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
26108         Fix bug in formats like %2N.
26109
26110         * lib/verify.h: New file.
26111
26112 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
26113
26114         Sync from coreutils.
26115         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
26116
26117 2005-09-22  Jim Meyering  <jim@meyering.net>
26118
26119         Sync from coreutils.
26120
26121         * m4/lstat.m4 (gl_FUNC_LSTAT):
26122         Use AC_LIBSOURCES to require lstat.c and lstat.h.
26123         Remove obsolete comment.
26124         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
26125         * m4/xstrtod.m4: Likewise.
26126
26127         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
26128
26129 2005-09-22  Jim Meyering  <jim@meyering.net>
26130
26131         Sync from coreutils.
26132
26133         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
26134
26135         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
26136         the .tm_year member, since otherwise gcc-4.0 would now warn about
26137         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
26138
26139         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
26140         order to avoid an unsuppressible warning from gcc on 64-bit systems.
26141
26142         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
26143         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
26144         when run in a time zone for which daylight savings time is in effect
26145         for the starting date.
26146
26147         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
26148         stop us from restricting permissions of just-created absolute-named
26149         directories.
26150         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
26151         to restore initial working directory.
26152         * lib/mkdir-p.c (make_dir_parents): New parameter:
26153         different_working_dir, to tell caller if/when we change the working
26154         directory and are unable to return to the initial one.
26155         * lib/mkdir-p.h (make_dir_parents): Update prototype.
26156         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
26157         `return false'.  This fixes a bug introduced on 2004-07-30.
26158
26159         * lib/openat.c (fdopendir): Be sure to close the supplied
26160         file descriptor before returning.  This makes our replacement
26161         implementation a little closer to Solaris's, where fdopendir
26162         ties the file descriptor to the returned DIR* pointer.
26163         * lib/openat.c (unlinkat): New function.
26164         * lib/openat.h (unlinkat): Add prototype.
26165         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
26166         (openat_restore_fail): Rename from openat_restore_die.
26167         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
26168
26169         Provide an alternative to exiting immediately upon save_cwd or
26170         restore_cwd failure.  Now, an application can arrange e.g.,
26171         to perform a longjump in that case.
26172         * lib/openat.c: Include dirname.h.
26173         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
26174         (rpl_openat, fdopendir, fstatat): Call openat_save_die
26175         and openat_restore_die rather than calling error directly.
26176         Don't include "error.h" or "exitfail.h"; they're no longer needed.
26177
26178         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
26179         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
26180         define.
26181
26182         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
26183         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
26184                             int utc, int nanoseconds);
26185         Background:
26186         date should not have to allocate a megabyte of virtual memory to
26187         handle a format argument like +%1048575T.  When implemented with
26188         strftime, it must allocate such a buffer, use strftime to fill it
26189         in, print it, then free it.
26190         With fprintftime, it simply prints everything and exits.
26191         With no need for memory allocation, that's one fewer way to fail.
26192         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
26193         optional field width, not before, so we accept %9:z, not %:9z.
26194         (my_strftime): Be sure to use L_('x') for literals.
26195
26196         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
26197         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
26198         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
26199         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
26200         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
26201         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
26202         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
26203         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
26204         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
26205         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
26206         * lib/xgethostname.c, lib/xreadlink.c:
26207         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
26208
26209         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
26210         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
26211         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
26212         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
26213         and don't include <sys/file.h>).
26214
26215 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
26216
26217         Sync from coreutils.
26218
26219         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
26220         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
26221         [!LDAV_DONE]: Avoid unused variable warning.
26222
26223 2005-09-21  Bruno Haible  <bruno@clisp.org>
26224
26225         * lib/unicodeio.h (unicode_to_mb): New declaration.
26226
26227 2005-09-20  Derek Price  <derek@ximbiot.com>
26228
26229         * lib/getaddrinfo.c: Don't include <netdb.h> included from
26230         getaddrinfo.h.
26231
26232 2005-09-20  Bruno Haible  <bruno@clisp.org>
26233
26234         * gnulib-tool: Remove trailing slashes from the values specified for
26235         --source-base, --m4-base, --tests-base, --aux-dir.
26236         Suggested by Simon Josefsson <jas@extundo.com>.
26237
26238 2005-09-20  Bruno Haible  <bruno@clisp.org>
26239
26240         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
26241         func_modules_to_filelist, func_import, func_create_testdir): Make all
26242         sorting results locale-independent, so that gnulib-cache.m4 doesn't
26243         change when gnulib-tool is invoked in a different locale.
26244
26245 2005-09-19  Simon Josefsson  <jas@extundo.com>
26246
26247         * m4/socklen.m4: Fix typo.
26248
26249 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26250
26251         Use a consistent style for including <config.h>.
26252         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
26253         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
26254         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
26255         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
26256         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
26257         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
26258         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
26259         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
26260         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
26261         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
26262         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
26263         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
26264         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
26265         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
26266         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
26267         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
26268         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
26269         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
26270         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
26271         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
26272         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
26273         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
26274         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
26275         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
26276         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
26277         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
26278         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
26279         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
26280         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
26281         lib/xstrtoumax.c, lib/yesno.c:
26282         Standardize inclusion of config.h.
26283         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
26284         lib/inttostr.h:  Removed inclusion of config.h from header files.
26285         * lib/inttostr.c:  Adjusted in-tree users.
26286         * lib/timespec.h: Remove superfluous warning to include config.h.
26287         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
26288         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
26289         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
26290         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
26291         config.h with HAVE_CONFIG_H.
26292
26293 2005-09-19  Jim Meyering  <jim@meyering.net>
26294
26295         * modules/pathmax (License): Change to LGPL.
26296
26297 2005-09-19  Derek Price  <derek@ximbiot.com>
26298
26299         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
26300
26301 2005-09-19  Bruno Haible  <bruno@clisp.org>
26302
26303         * gnulib-tool (import): Provide default for --tests-base.
26304
26305 2005-09-19  Bruno Haible  <bruno@clisp.org>
26306
26307         * doc/quote.texi: New file, extracted from gnulib.texi.
26308         * doc/ctime.texi: New file, extracted from gnulib.texi.
26309         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
26310         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
26311         * doc/gnulib.texi: Include them.
26312
26313 2005-09-18  Bruno Haible  <bruno@clisp.org>
26314
26315         Portability fix.
26316         * gnulib-tool (func_readlink): New function.
26317         (func_ln_if_changed): Use it.
26318
26319 2005-09-18  Bruno Haible  <bruno@clisp.org>
26320
26321         * gnulib-tool: Support --with-tests also with --import.
26322         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
26323         (func_import): Use variables $testsbase and $inctests. Emit a
26324         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
26325         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
26326         SUBDIRS += $testsdir.
26327         (func_create_testdir): Update.
26328
26329 2005-09-18  Bruno Haible  <bruno@clisp.org>
26330
26331         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
26332         instead of $dry_run.
26333         (func_cp_if_changed, func_mv_if_changed): Remove functions.
26334         (func_ln_if_changed): Don't handle dry-run here.
26335         (func_import): In dry-run mode, detect more precisely which actions
26336         would be performed, and don't use "...ing" verbs.
26337
26338 2005-09-18  Bruno Haible  <bruno@clisp.org>
26339
26340         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
26341         (func_import): Use join on two temporary files instead of three nested
26342         loops, in order to determine which files are new or old.
26343
26344 2005-09-18  Bruno Haible  <bruno@clisp.org>
26345
26346         * gnulib-tool (func_import): Comment out code that spits out the
26347         new files with --dry-run.
26348
26349 2005-09-18  Bruno Haible  <bruno@clisp.org>
26350
26351         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
26352
26353 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26354
26355         * lib/stat-time.h: New file.
26356         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
26357         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
26358         in a different way.
26359         (timespec_cmp): New function.
26360         * lib/utimecmp.c: Include stat-time.h.
26361         (SYSCALL_RESOLUTION): Depend on whether various struct stat
26362         members exist, not on the obsolescent ST_MTIM_NSEC.
26363         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
26364
26365 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26366
26367         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
26368
26369 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26370
26371         * MODULES.html.sh (File system functions): Add stat-time.
26372         * modules/stat-time: New file.
26373         * modules/timespec (Files): Remove m4/st_mtim.m4; this
26374         is now done in a different way, by the stat-time module.
26375         * modules/utimecmp (Depends-on): Add stat-time.
26376
26377 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26378
26379         * m4/st_mtim.m4: Remove.  Superseded by...
26380         * m4/stat-time.m4: New file.
26381         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
26382         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
26383
26384 2005-09-15  Derek Price  <derek@ximbiot.com>
26385
26386         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
26387
26388 2005-09-15  Derek Price  <derek@ximbiot.com>
26389
26390         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
26391         * lib/regex_internal.c: Ditto, using this...
26392         (__GNUC_PREREQ): ...new macro.
26393         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
26394         using...
26395         (__GNUC_PREREQ): ...this new macro.
26396
26397         * lib/strstr.h: Include string.h. Define strstr as a macro here.
26398
26399 2005-09-15  Derek Price  <derek@ximbiot.com>
26400             Paul Eggert  <eggert@cs.ucla.edu>
26401
26402         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
26403         changes, consolidating in...
26404         * lib/regex_internal.h: ...this file.
26405
26406 2005-09-13  Jim Meyering  <jim@meyering.net>
26407
26408         * lib/canon-host.c: Filter through gnu indent and reword comments
26409         slightly.
26410         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
26411
26412 2005-09-13  Derek Price  <derek@ximbiot.com>
26413
26414         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
26415         failure.
26416         Reported by Jim Meyering  <jim@meyering.net>.
26417
26418 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
26419
26420         * lib/base64.c: Typo.
26421         (base64_encode): Put b64str in initialized data section.
26422
26423 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
26424
26425         Merge glibc and coreutils changes into gnulib, plus a few
26426         extra fixes.
26427         * lib/md5.c: Use #error rather than a string.
26428         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
26429         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
26430         (__attribute__): Define to empty for non recent-GCC.
26431         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
26432         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
26433         Renamed from their non-__ counterparts, with new macros replacing
26434         them if not _LIBC.  Add __THROW attribute.
26435         (rol): Remove.
26436         (struct md5_ctx): Align buffer if using GCC.
26437         * lib/sha1.h (struct sha1_ctx): Likewise.
26438         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
26439         The old name was backwards.
26440         (NOTSWAP): Remove; not used.
26441         (rol): New macro, moved here from md5.h.
26442         (sha1_process_block): Remove a FIXME that doesn't make sense.
26443
26444 2005-09-12  Derek Price  <derek@ximbiot.com>
26445
26446         Return usable errors from canon-host.
26447         * lib/canon-host.h: New file.
26448         * lib/canon-host.c (canon_host): Wrap...
26449         (canon_host_r): ...this new function, which now relies exclusively on
26450         getaddrinfo.
26451         (ch_strerror): New function.
26452         (last_cherror): New global.
26453         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
26454         interface.
26455         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
26456         void *.
26457         (freeaddrinfo): Free ai->ai_canonname when set.
26458
26459 2005-09-12  Derek Price  <derek@ximbiot.com>
26460
26461         Make canon-host require getaddrinfo.
26462         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
26463         AC_LIBSOURCE canon-host.h.  Call...
26464         (gl_PREREQ_CANON_HOST): ...this new function, which requires
26465         gl_GETADDRINFO.
26466         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
26467
26468 2005-09-12  Derek Price  <derek@ximbiot.com>
26469
26470         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
26471         LGPL.
26472         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
26473
26474 2005-09-12  Derek Price  <derek@ximbiot.com>
26475
26476         * lib/gai_strerror.c: Include config.h when available.  Include
26477         getaddrinfo.h before other headers to test interface.
26478         Reported by Larry Jones <lawrence.jones@ugs.com>.
26479
26480 2005-09-12  Derek Price  <derek@ximbiot.com>
26481             Paul Eggert  <eggert@cs.ucla.edu>
26482
26483         * modules/glob (Files): Add glob-libc.h.
26484
26485 2005-09-12  Derek Price  <derek@ximbiot.com>
26486             Paul Eggert  <eggert@cs.ucla.edu>
26487
26488         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
26489         glob_.h, glob-libc.h.
26490         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
26491
26492 2005-09-12  Derek Price  <derek@ximbiot.com>
26493             Paul Eggert  <eggert@cs.ucla.edu>
26494
26495         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
26496         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
26497         protecting things that should be done only in gnulib contexts.
26498         * lib/glob_.h: New file, containing only the glob things needed for
26499         gnulib.
26500         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
26501         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
26502         (glob, globfree, glob_pattern_p): Now defined simply in terms of
26503         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
26504         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
26505         and to respect the namespace rules better.
26506
26507 2005-09-08  Simon Josefsson  <jas@extundo.com>
26508
26509         * modules/socklen: New file.
26510
26511 2005-09-08  Simon Josefsson  <jas@extundo.com>
26512
26513         * m4/socklen.m4: New file.
26514
26515 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26516
26517         * modules/utimens (Files): Add m4/utimbuf.m4, since
26518         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
26519         Reported by Sergey Poznyakoff.
26520
26521 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26522
26523         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
26524         definitions, since that's the preferred style in glibc.
26525         Fix a minor spacing issue, and update copyright notice to match
26526         glibc's.
26527
26528 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26529
26530         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
26531
26532 2005-09-06  Simon Josefsson  <jas@extundo.com>
26533
26534         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
26535         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
26536
26537 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
26538
26539         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
26540         warning.
26541
26542 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
26543
26544         * config/srclist.txt: Add glibc bug 1302.
26545
26546 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
26547
26548         Change bitset word type from unsigned int to unsigned long int,
26549         as this has better performance on typical 64-bit hosts.
26550         Port bitset code to hosts with unusual word sizes.
26551         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
26552         (build_collating_symbol):
26553         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
26554         argument is a bitset.  This is merely a style issue, but it makes
26555         it clearer that an entire array is expected.
26556         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
26557         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
26558         Port to the case where bitset_word is not the same as unsigned int.
26559         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
26560         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
26561         Likewise.
26562         * lib/regexec.c (check_dst_limits_calc_pos_1,
26563         check_subexp_matching_top):
26564         (build_trtable, group_nodes_into_DFAstates):
26565         Likewise.
26566         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
26567         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
26568         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
26569         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
26570         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
26571         * lib/regcomp.c (optimize_subexps, lower_subexp):
26572         Work even if bitset_word has holes in its bitwise representation.
26573         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
26574         * lib/regexec.c (check_dst_limits_calc_pos_1,
26575         check_subexp_matching_top):
26576         Likewise.
26577         * lib/regex_internal.c (re_string_reconstruct):
26578         Don't assume UCHAR_MAX == 255.
26579         * lib/regex_internal.h (bitset_set_all): Likewise.
26580         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
26581         All uses changed.
26582         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
26583         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
26584         All uses changed.
26585         (BITSET_WORD_MAX): New macro.
26586         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
26587         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
26588         (bitset_empty, bitset_copy):
26589         Prefer sizeof (bitset) to multiplying it out ourselves.
26590         (bitset_not_merge): Remove; unused.
26591         (bitset_contain): Return bool, not unsigned int with one bit on.
26592         All callers changed.
26593         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
26594         alignment than re_node_set; do this by defining a new internal
26595         type struct dests_alloc and using it to allocate memory.
26596
26597 2005-09-05  Bruno Haible  <bruno@clisp.org>
26598
26599         * gnulib-tool (func_import): Fix comparison in handling of symbolic
26600         links.
26601
26602 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
26603
26604         * modules/size_max (Makefile.am): Add size_max.h
26605
26606 2005-09-04  Derek Price  <derek@ximbiot.com>
26607
26608         * gnulib-tool (func_import): Fix reversed $symbolic logic.
26609
26610 2005-09-03  Simon Josefsson  <jas@extundo.com>
26611
26612         * gnulib-tool: Fix typo.
26613
26614 2005-09-03  Simon Josefsson  <jas@extundo.com>
26615
26616         * config/srclist.txt: Add glibc bug 1293.
26617
26618 2005-09-03  Derek Price  <derek@ximbiot.com>
26619
26620         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
26621         From Larry Jones <lawrence.jones@ugs.com>.
26622
26623 2005-09-02  Simon Josefsson  <jas@extundo.com>
26624
26625         * modules/socklen: New file.
26626
26627 2005-09-02  Simon Josefsson  <jas@extundo.com>
26628
26629         * modules/havelib: New module.
26630
26631         * modules/gettext, modules/iconv, modules/lock, modules/readline:
26632         Use havelib.
26633
26634 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
26635
26636         Check for arithmetic overflow when calculating sizes, to prevent
26637         some buffer-overflow issues.  These patches are conservative, in the
26638         sense that when I couldn't determine whether an overflow was possible,
26639         I inserted a run-time check.
26640         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
26641         macros.
26642         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
26643         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
26644         (re_xnrealloc, re_x2nrealloc): New inline functions.
26645         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
26646         parse_bracket_exp):
26647         (build_equiv_class, build_charclass): Check for arithmetic overflow
26648         in size expression calculations.
26649         * lib/regex_internal.c (re_string_realloc_buffers):
26650         (build_wcs_upper_buffer, re_node_set_add_intersect):
26651         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
26652         (re_dfa_add_node, register_state): Likewise.
26653         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
26654         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
26655         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
26656         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
26657
26658 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
26659
26660         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
26661         m4/ulonglong.m4.  Problem reported by Martin Lambers.
26662
26663 2005-09-02  Bruno Haible  <bruno@clisp.org>
26664
26665         Support for lib vs. lib64 distinction on biarch platforms.
26666         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
26667         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
26668         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
26669
26670 2005-09-02  Bruno Haible  <bruno@clisp.org>
26671
26672         * gnulib-tool (import): In the other first-use case, provide defaults
26673         as well.
26674
26675 2005-09-02  Bruno Haible  <bruno@clisp.org>
26676
26677         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
26678         patches not yet found in the latest gettext release.
26679
26680 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26681
26682         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
26683         to avoid a collision with bits/local_lim.h in glibc.
26684         All uses changed.  Problem reported by Dmitry V. Levin in
26685         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
26686
26687         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
26688         bugs in int versus size_t comparisons.
26689         (re_string_context_at): Fix bug where the code assumed that
26690         Idx is signed.
26691
26692         Use bool where appropriate.
26693         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
26694         All callers changed.
26695         (calc_eclosure_iter): Likewise, for ROOT arg.
26696         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
26697         (build_charclass_op): Likewise, for NON_MATCH arg.
26698         * lib/regex_internal.c (re_string_allocate, re_string_construct):
26699         (re_string_construct_common): Likewise, for ICASE arg.
26700         * lib/regexec.c (re_search_2_stub, re_search_stub):
26701         Likewise, for RET_LEN arg.
26702         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
26703         (set_regs): Likewise, for FL_BACKTRACK arg.
26704         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
26705         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
26706         (calc_eclosure_iter, parse_bracket_exp):
26707         Use bool for internal variables that are booleans.
26708         * lib/regexec.c (re_search_internal, check_matching,
26709         proceed_next_node):
26710         (set_regs, build_sifted_states, sift_states_bkref):
26711         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
26712         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
26713         (find_collation_sequence_value):
26714         Likewise.
26715         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
26716         (re_node_set_compare):
26717         Return bool, not int. All callers changed.
26718         * lib/regexec.c (check_halt_node_context, check_dst_limits):
26719         (build_trtable, check_node_accept): Likewise.
26720         * lib/regex_internal.h: Include stdbool.h.
26721
26722         Fix bugs uncovered when converting to bool.
26723         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
26724         failure instead of charging ahead blindly.
26725         * lib/regex_internal.c (register_state): Likewise.
26726         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
26727         for freeing internal storage.
26728         (group_nodes_into_DFA_states): Use unsigned int, not int, for
26729         bitset pieces used as boolean, to avoid undefined behavior
26730         on hosts that do int overflow checking.
26731
26732 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26733
26734         * config/srclist.txt: Add glibc bugs 1285-1287.
26735
26736 2005-09-01  Jim Meyering  <jim@meyering.net>
26737
26738         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
26739         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
26740         Require gl_STAT_MACROS, too.
26741
26742 2005-09-01  Bruno Haible  <bruno@clisp.org>
26743
26744         * gnulib-tool (import): In the first-use case, provide defaults.
26745
26746 2005-09-01  Bruno Haible  <bruno@clisp.org>
26747
26748         * gnulib-tool (func_import): Remove the .tmp files.
26749
26750 2005-09-01  Bruno Haible  <bruno@clisp.org>
26751
26752         * gnulib-tool (func_import): Fix handling of symbolic links.
26753
26754 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26755
26756         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
26757         old glibc regex code mishandles strings longer than 2**31 bytes.
26758         This patch fixes this when the regex code is used in gnulib
26759         (i.e., outside glibc).
26760
26761         This patch should not affect the use of the regex code inside
26762         glibc.  No doubt this problem also needs to be handled for glibc
26763         as well, but the result will be an incompatible change to the
26764         glibc ABI, and the old ABI will have to be supported too.  That
26765         can be the the subject for another patch.
26766
26767         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
26768         governing whether the rest of this patch is active.  By default,
26769         the macro is disabled and the patch has no effect.
26770         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
26771         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
26772         (struct re_pattern_buffer, re_search, re_search_2, re_match):
26773         (re_match_2, re_set_registers): Use the new types.
26774         * lib/regex_internal.h (Idx, re_hashval_t): New types.
26775         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
26776         New macros.
26777         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
26778         (re_string_context_at, bin_tree_t, re_dfastate_t):
26779         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
26780         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
26781         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
26782         (re_string_char_size_at, re_string_wchar_at):
26783         (re_string_elem_size_at):
26784         Use the new types and macros to port to 64-bit hosts.
26785         Use unsigned types for internal values, so that the code
26786         mostly works even for arrays larger than SSIZE_MAX.
26787         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
26788         (search_duplicated_node, calc_eclosure_iter, fetch_number):
26789         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
26790         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
26791         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
26792         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
26793         (calc_inveclosure, parse_dup_op, build_range_exp):
26794         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
26795         (fetch_number, create_token_tree, mark_opt_subexp):
26796         Likewise.
26797         * lib/regex_internal.c (re_string_construct_common,
26798         create_ci_newstate):
26799         (create_cd_newstate, re_string_allocate, re_string_construct):
26800         (re_string_realloc_buffers, build_wcs_upper_buffer):
26801         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
26802         (re_string_reconstruct, re_string_peek_byte_case):
26803         (re_string_fetch_byte_case, re_string_context_at):
26804         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
26805         (re_node_set_init_copy, re_node_set_add_intersect):
26806         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
26807         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
26808         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
26809         (re_acquire_state, re_acquire_state_context, register_state):
26810         Likewise.
26811         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
26812         search_cur_bkref_entry):
26813         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
26814         (re_search_internal, re_search_2_stub, re_search_stub)
26815         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
26816         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
26817         (update_cur_sifted_state, check_dst_limits):
26818         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
26819         (check_subexp_limits, sift_states_bkref, merge_state_array):
26820         (check_subexp_matching_top, get_subexp, get_subexp_sub):
26821         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
26822         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
26823         (expand_bkref_cache, check_node_accept_bytes):
26824         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
26825         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
26826         (acquire_init_state_context, check_halt_node_context):
26827         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
26828         (sift_states_backward, clean_state_log_if_needed):
26829         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
26830         (find_recover_state, transit_state_sb, transit_state_mb):
26831         (transit_state_bkref, build_trtable, match_ctx_clean):
26832         Likewise.
26833         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
26834         to work around an assumption that REG_MISSING is negative.
26835
26836         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
26837         (seek_collating_symbol_entry) [defined _LIBC]:
26838         (lookup_collation_sequence_value) [defined _LIBC]:
26839         (build_range_exp, build_collating_symbol) [defined _LIBC]:
26840         Use prototypes rather than old-style function definitions.
26841         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
26842         (transit_state_sb) [0]:
26843         (find_collation_sequence_value) [defined _LIBC]: Likewise.
26844
26845         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
26846         rm_eo.
26847
26848         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
26849         (optimize_subexps, lower_subexp):
26850         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
26851         since the signed shift might overflow.  Use 1u<<31 instead.
26852         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
26853         Likewise.
26854         * lib/regexec.c (check_dst_limits_calc_pos_1,
26855         check_subexp_matching_top): Likewise.
26856
26857         * lib/regcomp.c (optimize_subexps, lower_subexp):
26858         Use CHAR_BIT rather than 8, for clarity.
26859         * lib/regexec.c (check_dst_limits_calc_pos_1):
26860         (check_subexp_matching_top): Likewise.
26861         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
26862         have to worry about portability issues when shifting it left.
26863         Remove no-longer-needed test for table_size > 0.
26864         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
26865         in a word, as the resulting behavior is undefined.
26866         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
26867         in one case, a <= should have been an <, and in another case the
26868         whole test was missing.
26869         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
26870         the standard name CHAR_BIT.
26871         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
26872         this is not true on one's complement and signed-magnitude hosts.
26873
26874         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
26875         next_last_offset.
26876         (struct re_dfa_t): Remove unused member states_alloc.
26877         * lib/regcomp.c (init_dfa): Don't initialize unused members.
26878
26879 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26880
26881         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
26882         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
26883         and large-file glibc and in 32-bit large-file Solaris.
26884
26885 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26886
26887         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
26888         lengths fit in regoff_t; this isn't true if regoff_t is the same
26889         width as size_t.
26890         * lib/regex.c (re_search_internal): 5th arg is LAST_START
26891         (= START + RANGE) instead of RANGE.  This avoids overflow
26892         problems when regoff_t is the same width as size_t.
26893         All callers changed.
26894         (re_search_2_stub): Check for overflow when adding the
26895         sizes of the two strings.
26896         (re_search_stub): Check for overflow when adding START
26897         to RANGE; if it occurs, substitute the extreme value.
26898
26899 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26900
26901         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
26902
26903 2005-08-31  Jim Meyering  <jim@meyering.net>
26904
26905         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
26906         a pointer-to-const.
26907         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
26908         (register_state): Likewise.
26909         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
26910         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
26911         (group_nodes_into_DFAstates): Likewise.
26912
26913 2005-08-31  Jim Meyering  <jim@meyering.net>
26914
26915         * check-module: Add a FIXME comment.
26916
26917 2005-08-31  Eric Blake  <ebb9@byu.net>
26918
26919         * modules/unistd-safer (Files): Add unistd--.h.
26920         * modules/stdio-safer (Files): Add stdio--.h.
26921
26922 2005-08-31  Derek Price  <derek@ximbiot.com>
26923
26924         * lib/getdelim.c (getdelim): Return EOF on EOF.
26925         Reported by Larry Jones <lawrence.jones@ugs.com>.
26926
26927 2005-08-31  Bruno Haible  <bruno@clisp.org>
26928
26929         Avoid unnecessary diffs in the generated lib/Makefile.am.
26930         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
26931         the generated files.
26932         (func_import): Don't set cmd.
26933
26934 2005-08-31  Bruno Haible  <bruno@clisp.org>
26935
26936         * lib/strstr.c: Include <stddef.h>, for NULL.
26937         * lib/strcasestr.c: Likewise.
26938         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
26939
26940 2005-08-31  Bruno Haible  <bruno@clisp.org>
26941
26942         * gnulib-tool: New option --macro-prefix.
26943         (func_import): Use macro_prefix.
26944         (import): Handle option --macro-prefix.
26945
26946 2005-08-31  Bruno Haible  <bruno@clisp.org>
26947
26948         * gnulib-tool (import): Rename most ac_* variables to cached_*.
26949         Also use new variables cached_lgpl, cached_libtool.
26950
26951 2005-08-31  Bruno Haible  <bruno@clisp.org>
26952
26953         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
26954         always instantiating them.
26955
26956 2005-08-31  Bruno Haible  <bruno@clisp.org>
26957
26958         * gnulib-tool (func_import): Read the previous cached settings
26959         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
26960         earlier added by gnulib but are now dropped. Warn when a gnulib file
26961         overwrites a non-gnulib file.
26962
26963 2005-08-31  Bruno Haible  <bruno@clisp.org>
26964
26965         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
26966         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
26967         projects that don't keep autogenerated files in CVS. Put into
26968         actioncmd only the specified modules, not the transitive closure.
26969
26970 2005-08-31  Bruno Haible  <bruno@clisp.org>
26971
26972         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
26973         Create directories that shall be filled.
26974         (import): Don't look for gl_* macros in configure.ac. Recurse across
26975         all directories containing a gnulib-cache.m4 files, if meaningful.
26976
26977 2005-08-31  Bruno Haible  <bruno@clisp.org>
26978
26979         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
26980         (import): Set seen_libtool when we see gl_LIBTOOL.
26981
26982 2005-08-31  Bruno Haible  <bruno@clisp.org>
26983
26984         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
26985         declaration macro definitions from generated gnulib.m4.
26986
26987 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
26988
26989         * lib/iconvme.h: Add prototype for iconv_alloc.
26990
26991 2005-08-29  Simon Josefsson  <jas@extundo.com>
26992
26993         * lib/iconvme.c: Fix errno.
26994
26995 2005-08-29  Bruno Haible  <bruno@clisp.org>
26996
26997         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
26998         that it works when the directory contains spaces.
26999
27000 2005-08-29  Bruno Haible  <bruno@clisp.org>
27001
27002         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
27003
27004 2005-08-29  Bruno Haible  <bruno@clisp.org>
27005
27006         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
27007         Emit more advice.
27008
27009 2005-08-29  Bruno Haible  <bruno@clisp.org>
27010         and Stepan Kasal  <kasal@ucw.cz>
27011
27012         * check-module: If more parameters are given, check each of them
27013         separately; add more exceptions, as noted by Jim Meyering.
27014         (check_module): New procedure.
27015         (%exempt_header): Now contains all exceptions.
27016
27017 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
27018
27019         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
27020
27021 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
27022
27023         * lib/iconvme.c: Split iconv_string into iconv_alloc.
27024
27025 2005-08-28  Bruno Haible  <bruno@clisp.org>
27026
27027         * m4/gnulib-tool.m4: New file.
27028
27029 2005-08-27  Jim Meyering  <jim@meyering.net>
27030
27031         * modules/unistd-safer (Files): Add pipe-safer.c.
27032         * modules/fcntl-safer (Files): Add creat-safer.c.
27033
27034 2005-08-27  Jim Meyering  <jim@meyering.net>
27035
27036         * m4/stdlib-safer.m4: New file.  From coreutils.
27037         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
27038         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
27039         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
27040         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
27041         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
27042
27043 2005-08-27  Jim Meyering  <jim@meyering.net>
27044
27045         * lib/fopen-safer.c: Merge minor changes from coreutils.
27046         * lib/dup-safer.c: Likewise.
27047         * lib/fd-safer.c: Likewise.
27048
27049         Merge from coreutils.
27050         * lib/stdio--.h: New file.
27051         * lib/stdlib--.h: New file.
27052         * lib/mkstemp-safer.c: New file.
27053
27054         GNU tar needs these.
27055         * lib/pipe-safer.c: New file.
27056         * lib/creat-safer.c: New file.
27057         * lib/fcntl--.h (creat): Define to creat_safer.
27058         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
27059         * lib/unistd--.h (pipe): Define to pipe_safer.
27060         * lib/unistd-safer.h: Declare pipe_safer.
27061
27062 2005-08-26  Simon Josefsson  <jas@extundo.com>
27063
27064         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
27065         Haible <bruno@clisp.org>.
27066
27067 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
27068
27069         * lib/regex_internal.h: Remove all references to
27070         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
27071         or better.
27072         (bitset_not, bitset_merge, bitset_not_merge):
27073         (bitset_mask, re_string_allocate, re_string_construct):
27074         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
27075         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
27076         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
27077         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
27078         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
27079         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
27080         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
27081         (re_acquire_state_context):
27082         Remove unnecessary forward decls.
27083         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
27084         Put __attribute at function definition,
27085         now that the function decl has been removed.
27086         * lib/regex_internal.c (re_string_peek_byte_case):
27087         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
27088         Likewise.
27089
27090 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
27091
27092         * m4/regex.m4: Add AC_PREREQ(2.50).
27093         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
27094
27095 2005-08-25  Simon Josefsson  <jas@extundo.com>
27096
27097         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
27098         __fsetlocking.
27099
27100 2005-08-25  Simon Josefsson  <jas@extundo.com>
27101
27102         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
27103         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
27104         GLIBC specific code.
27105
27106 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27107
27108         Make regex safe for g++.  This fixes one real bug (an "err"
27109         that should have been "*err").  g++ problem reported by
27110         Sam Steingold.
27111         * lib/regex_internal.h (re_calloc): New macro, consistent with
27112         re_malloc etc.  All callers of calloc changed to use re_calloc.
27113         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
27114         not int.  All callers changed.
27115         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
27116         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
27117         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
27118         (find_recover_state): Change "err" to "*err"; this fixes what
27119         appears to be a real bug.
27120         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
27121         versus int.
27122
27123 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27124
27125         * modules/regex (Depends-on): Add malloc, since the code
27126         assumes that !malloc(0) means failure.
27127
27128 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27129
27130         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
27131
27132         alloca modernization/simplification for regex.
27133         * lib/regex.c: Remove portability cruft for alloca.  This no longer
27134         needs to be at the start of the file, and can be moved into
27135         regex_internal.h and simplified.
27136         * lib/regex_internal.h: Include <alloca.h>.
27137         (__libc_use_alloca) [!defined _LIBC]: New macro.
27138         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
27139         now works outside glibc.
27140
27141 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27142
27143         * config/srclist.txt: Add glibc bugs 1241, 1245.
27144
27145 2005-08-25  Jim Meyering  <jim@meyering.net>
27146
27147         * lib/open-safer.c: Include <config.h>.
27148         Otherwise, we'd lose LARGEFILE support in any file using
27149         e.g. "fcntl--.h"
27150
27151 2005-08-25  Bruno Haible  <bruno@clisp.org>
27152
27153         * m4/minmax.m4: Require autoconf 2.52.
27154         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
27155         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
27156         alternatives of translit over the alphabet.
27157         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
27158
27159 2005-08-24  Simon Josefsson  <jas@extundo.com>
27160
27161         * tests/test-getpass.c: New file.
27162
27163 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27164
27165         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
27166         for GNU regex features.
27167
27168 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27169
27170         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
27171         * lib/regex.h (regerror): Likewise.
27172
27173         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
27174         requires this.  (The code never needed it.)
27175
27176         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
27177         All uses of recently-renamed identifiers changed to use the new,
27178         POSIX-compliant names.  The code will build and run just fine
27179         without these changes, but it's better to eat our own dog food
27180         and use the standard-conforming names.
27181
27182         * lib/regex.h: Fix a multitude of POSIX name space violations.
27183         These changes have an effect only for programs that define
27184         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
27185         do not change anything for programs compiled in the normal way.
27186         Also, there is no effect on the ABI.
27187
27188         (_REGEX_SOURCE): New macro.
27189         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
27190         defined and _GNU_SOURCE is not; this fixes a name space violation.
27191
27192         Rename the following macros to obey POSIX requirements.
27193         The old names are still visible as macros if _REGEX_SOURCE is defined.
27194         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
27195         RE_BACKSLASH_ESCAPE_IN_LISTS.
27196         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
27197         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
27198         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
27199         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
27200         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
27201         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
27202         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
27203         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
27204         (REG_INTERVALS): renamed from RE_INTERVALS.
27205         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
27206         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
27207         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
27208         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
27209         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
27210         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
27211         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
27212         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
27213         RE_UNMATCHED_RIGHT_PAREN_ORD.
27214         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
27215         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
27216         (REG_DEBUG): renamed from RE_DEBUG.
27217         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
27218         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
27219         unusual, since we can't clash with the POSIX REG_ICASE.
27220         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
27221         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
27222         (REG_NO_SUB): renamed from RE_NO_SUB.
27223         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
27224         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
27225         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
27226         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
27227         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
27228         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
27229         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
27230         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
27231         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
27232         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
27233         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
27234         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
27235         RE_SYNTAX_POSIX_MINIMAL_BASIC.
27236         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
27237         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
27238         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
27239         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
27240         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
27241         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
27242         (REG_FIXED): Renamed from REGS_FIXED.
27243         (REG_NREGS): Renamed from RE_NREGS.
27244
27245         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
27246         of other REG_* macros, since POSIX says the user is allowed to
27247         #undef these macros selectively.
27248
27249         (reg_errcode_t): Update comment stating what other tables need
27250         to be consistent.
27251
27252         Rename the following enum values to obey POSIX requirements.
27253         The old names are still visible as macros.
27254         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
27255         is not defined, since GNU is supposed to be a superset of POSIX as
27256         much as possible, and since we want reg_errcode_t to be a signed
27257         type for implementation consistency.
27258         (_REG_NOERROR): Renamed from REG_NOERROR.
27259         (_REG_NOMATCH): Renamed from REG_NOMATCH.
27260         (_REG_BADPAT): Renamed from REG_BADPAT.
27261         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
27262         (_REG_ECTYPE): Renamed from REG_ECTYPE.
27263         (_REG_EESCAPE): Renamed from REG_EESCAPE.
27264         (_REG_ESUBREG): Renamed from REG_ESUBREG.
27265         (_REG_EBRACK): Renamed from REG_EBRACK.
27266         (_REG_EPAREN): Renamed from REG_EPAREN.
27267         (_REG_EBRACE): Renamed from REG_EBRACE.
27268         (_REG_BADBR): Renamed from REG_BADBR.
27269         (_REG_ERANGE): Renamed from REG_ERANGE.
27270         (_REG_ESPACE): Renamed from REG_ESPACE.
27271         (_REG_BADRPT): Renamed from REG_BADRPT.
27272         (_REG_EEND): Renamed from REG_EEND.
27273         (_REG_ESIZE): Renamed from REG_ESIZE.
27274         (_REG_ERPAREN): Renamed from REG_ERPAREN.
27275         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
27276         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
27277         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
27278         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
27279
27280         (_REG_RE_NAME, _REG_RM_NAME): New macros.
27281         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
27282         changed.  But support the old name if the new one is not defined
27283         and if _REGEX_SOURCE.
27284
27285         Change the following member names in struct re_pattern_buffer.
27286         The old names are still supported if !_REGEX_SOURCE.
27287         The new names are always supported, regardless of _REGEX_SOURCE.
27288         (re_buffer): Renamed from buffer.
27289         (re_allocated): Renamed from allocated.
27290         (re_used): Renamed from used.
27291         (re_syntax): Renamed from syntax.
27292         (re_fastmap): Renamed from fastmap.
27293         (re_translate): Renamed from translate.
27294         (re_can_be_null): Renamed from can_be_null.
27295         (re_regs_allocated): Renamed from regs_allocated.
27296         (re_fastmap_accurate): Renamed from fastmap_accurate.
27297         (re_no_sub): Renamed from no_sub.
27298         (re_not_bol): Renamed from not_bol.
27299         (re_not_eol): Renamed from not_eol.
27300         (re_newline_anchor): Renamed from newline_anchor.
27301
27302         Change the following member names in struct re_registers.
27303         The old names are still supported if !_REGEX_SOURCE.
27304         The new names are always supported, regardless of _REGEX_SOURCE.
27305         (rm_num_regs): Renamed from num_regs.
27306         (rm_start): Renamed from start.
27307         (rm_end): Renamed from end.
27308
27309         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
27310         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
27311         Prepend __ to parameter names.
27312
27313         Undo yesterday's changes.
27314
27315 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27316
27317         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
27318         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
27319         lib/regex.c.
27320
27321 2005-08-24  Jim Meyering  <jim@meyering.net>
27322
27323         Sync from coreutils.
27324         * m4/fcntl-safer.m4: New file.
27325
27326         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
27327         and object files for this module.
27328
27329 2005-08-24  Jim Meyering  <jim@meyering.net>
27330
27331         Sync from coreutils.
27332         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
27333
27334 2005-08-24  Jim Meyering  <jim@meyering.net>
27335
27336         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
27337         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
27338
27339 2005-08-24  Jim Meyering  <jim@meyering.net>
27340
27341         * modules/fcntl-safer: New module.
27342         * modules/fts (Depends-on): Add fcntl-safer.
27343         * MODULES.html.sh (File descriptor based Input/Output):
27344         Add fcntl-safer.
27345
27346 2005-08-24  Bruno Haible  <bruno@clisp.org>
27347
27348         Support for unit test modules.
27349         * modules/README: Mention tests modules.
27350         * modules/TEMPLATE-TESTS: New file.
27351         * gnulib-tool: New options --extract-tests-module, --with-tests and
27352         --tests-base (unused for the moment).
27353         (testsbase, inctests): New variables.
27354         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
27355         (func_verify_module): Exclude TEMPLATE-TESTS.
27356         (func_verify_nontests_module, func_verify_tests_module): New functions.
27357         (func_get_dependencies): Add implicit dependency for tests modules.
27358         (func_get_tests_module): New function.
27359         (func_modules_transitive_closure): When --with-tests was specified,
27360         include the unit tests as well, unless explicitly avoided.
27361         (func_emit_lib_Makefile_am): Ignore the tests modules here.
27362         (func_emit_tests_Makefile_am): New function.
27363         (func_create_testdir): When --with-tests was specified, emit a
27364         tests/ directory.
27365         * MODULES.html.sh (Future developments): Update.
27366
27367 2005-08-24  Bruno Haible  <bruno@clisp.org>
27368
27369         * modules/tls-tests: New file.
27370         * tests/test-tls.c: New file, from GNU gettext.
27371
27372 2005-08-24  Bruno Haible  <bruno@clisp.org>
27373
27374         * modules/lock-tests: New file.
27375         * tests/test-lock.c: New file, from GNU gettext.
27376
27377 2005-08-24  Bruno Haible  <bruno@clisp.org>
27378
27379         * lib/lock.h: Add multiple inclusion guard.
27380         * lib/tls.h: Add multiple inclusion guard.
27381
27382 2005-08-24  Bruno Haible  <bruno@clisp.org>
27383
27384         * gnulib-tool: Add support for the --aux-dir option to
27385         --create-testdir, --create-megatestdir, --test, --megatest.
27386         (func_create_testdir, func_create_megatestdir): Optionally emit a
27387         AC_CONFIG_AUX_DIR directive.
27388         (create-testdir, create-megatestdir, test, megatest): Provide a
27389         default value for $auxdir.
27390
27391 2005-08-24  Bruno Haible  <bruno@clisp.org>
27392
27393         * gnulib-tool (import): Use compound statement instead of subshell
27394         where possible.
27395
27396 2005-08-24  Bruno Haible  <bruno@clisp.org>
27397
27398         * gnulib-tool (import): Change --aux-dir default to "build-aux".
27399
27400 2005-08-24  Bruno Haible  <bruno@clisp.org>
27401
27402         * gnulib-tool (func_version): Update.
27403
27404 2005-08-24  Bruno Haible  <bruno@clisp.org>
27405
27406         * gnulib-tool (func_import, func_create_testdir,
27407         func_create_megatestdir): Quote all autoconf macro arguments.
27408
27409 2005-08-24  Bruno Haible  <bruno@clisp.org>
27410
27411         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
27412         option --force, because --force causes the aclocal.m4 of each
27413         subdirectory to be newer than the corresponding config.h.in.
27414
27415 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
27416
27417         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
27418         All contents moved to gl_REGEX.
27419         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
27420         assume that it does.
27421
27422 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
27423
27424         * lib/regex.h (REG_NOSYS)
27425         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
27426         Define, since POSIX requires it as of 2001.
27427         (_REG_ENOSYS)
27428         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
27429         New private symbol, used to keep the enum signed in all cases.
27430         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
27431         Youngman in
27432         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
27433
27434         * lib/regex_internal.c (re_string_skip_chars, register_state):
27435         (calc_state_hash):
27436         Remove forward decls; no longer needed now that we use prototypes.
27437         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
27438         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
27439         (clean_state_log_if_needed): Likewise.
27440
27441 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
27442
27443         * config/srclist.txt: Add glibc bugs 1231-1233.
27444
27445 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27446
27447         Fix problems reported by Sam Steingold in
27448         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
27449         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
27450         assumed that reg_errcode_t is a signed type, which is not
27451         necessarily true if _XOPEN_SOURCE is not defined.
27452         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
27453         since some compilers warn about it otherwise.
27454
27455 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27456
27457         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
27458         (init_word_char, create_initial_state, duplicate_node_closure):
27459         (fetch_token, peek_token_bracket, build_range_exp):
27460         (build_collating_symbol): Remove forward decls; no longer needed
27461         now that we use prototypes.
27462
27463         * lib/regcomp.c:
27464         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
27465         (re_compile_fastmap_iter, regcomp, regerror, regfree):
27466         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
27467         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
27468         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
27469         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
27470         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
27471         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
27472         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
27473         (build_range_exp, build_collating_symbol, parse_bracket_exp):
27474         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
27475         (build_charclass, build_charclass_op, fetch_number, create_tree):
27476         (create_token_tree, mark_opt_subexp, duplicate_tree):
27477         Use prototypes rather than old-style definitions.
27478
27479         * lib/regex_internal.c:
27480         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
27481         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
27482         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
27483         (re_string_reconstruct, re_string_peek_byte_case):
27484         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
27485         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
27486         (re_node_set_init_copy, re_node_set_add_intersect):
27487         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
27488         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
27489         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
27490         (re_acquire_state, re_acquire_state_context, register_state):
27491         (create_ci_newstate, create_cd_newstate, free_state):
27492         Likewise.
27493         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
27494         re_search_2):
27495         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
27496         (re_search_internal, prune_impossible_nodes):
27497         (acquire_init_state_context, check_matching, static):
27498         (check_halt_node_context, check_halt_state_context, proceed_next_node):
27499         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
27500         (update_regs, sift_states_backward, build_sifted_states):
27501         (clean_state_log_if_needed, merge_state_array):
27502         (update_cur_sifted_state, add_epsilon_src_nodes):
27503         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
27504         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
27505         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
27506         (find_recover_state, check_subexp_matching_top, transit_state_mb):
27507         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
27508         (check_arrival, check_arrival_add_next_nodes):
27509         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
27510         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
27511         (check_node_accept_bytes, check_node_accept, extend_buffers):
27512         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
27513         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
27514         (sift_ctx_init):
27515         Likewise.
27516
27517         * lib/regex_internal.h:
27518         (re_string_allocate, re_string_construct, re_string_reconstruct):
27519         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
27520         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
27521         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
27522         (re_string_context_at, re_string_peek_byte_case):
27523         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
27524         is defined, since we now use prototypes always.
27525
27526         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
27527         C89 or better.  All uses removed.
27528
27529 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27530
27531         * config/srclist.txt: Add glibc bugs 1220-1227.
27532
27533 2005-08-20  Jim Meyering  <jim@meyering.net>
27534
27535         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
27536         of unused local, dfa.
27537
27538 2005-08-20  Bruno Haible  <bruno@clisp.org>
27539
27540         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
27541
27542 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27543
27544         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
27545         (re_node_set_insert_last, re_dfa_add_node):
27546         Rename local variables to avoid GCC shadowing warnings.
27547
27548 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27549
27550         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
27551         [defined lint]: Suppress bogus uninitialized-variable warnings.
27552
27553         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
27554         and let the caller return REG_ESPACE if out of space.  This
27555         removes an uninitialied-variable warning with GCC 4.0.1, and also
27556         avoids taking the address of a local variable.  All callers
27557         changed.
27558
27559 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27560
27561         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
27562         $LIBCSRC/posix/regexec.c.
27563         Add glibc bug 1217 for regcomp.c.
27564
27565 2005-08-19  Jim Meyering  <jim@meyering.net>
27566
27567         * lib/regexec.c (proceed_next_node): Redo local variables to
27568         avoid GCC shadowing warnings.
27569
27570 2005-08-18  Bruno Haible  <bruno@clisp.org>
27571
27572         * lib/strstr.c (strstr): Fix return value in multibyte case.
27573         * lib/strcasestr.c (strcasestr): Likewise.
27574
27575 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27576
27577         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
27578
27579 2005-08-17  Jim Meyering  <jim@meyering.net>
27580
27581         Make the %s format (seconds since the epoch) work for a negative
27582         number and when used with a zero-padded field width, e.g. %015s.
27583
27584         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
27585         label so that it precedes the code to set `digits'.  Otherwise,
27586         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
27587         print `00-22'.  Now, it prints `-0022', as it should.
27588
27589 2005-08-17  Bruno Haible  <bruno@clisp.org>
27590
27591         * modules/strstr (Files): Add m4/mbrtowc.m4.
27592         (Depends-on): Add mbuiter.
27593
27594 2005-08-17  Bruno Haible  <bruno@clisp.org>
27595
27596         * modules/strcasestr: New file.
27597         * MODULES.html.sh (String handling, based on ANSI C 89): Add
27598         strcasestr.
27599
27600 2005-08-17  Bruno Haible  <bruno@clisp.org>
27601
27602         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
27603
27604 2005-08-17  Bruno Haible  <bruno@clisp.org>
27605
27606         * modules/mbuiter: New file.
27607         * MODULES.html.sh (Extended multibyte and wide character utilities):
27608         Add mbuiter.
27609
27610 2005-08-17  Bruno Haible  <bruno@clisp.org>
27611
27612         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
27613         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
27614
27615 2005-08-17  Bruno Haible  <bruno@clisp.org>
27616
27617         * m4/strcasestr.m4: New file.
27618
27619 2005-08-17  Bruno Haible  <bruno@clisp.org>
27620
27621         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
27622         * lib/strstr.c: Completely rewritten, with multibyte locale support.
27623
27624 2005-08-17  Bruno Haible  <bruno@clisp.org>
27625
27626         * lib/strcasestr.h: New file.
27627         * lib/strcasestr.c: New file.
27628
27629 2005-08-17  Bruno Haible  <bruno@clisp.org>
27630
27631         * lib/strcasecmp.c: Use mbuiter.h.
27632
27633 2005-08-17  Bruno Haible  <bruno@clisp.org>
27634
27635         * lib/mbuiter.h: New file.
27636
27637 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
27638
27639         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
27640         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
27641         and gl_GETOPT are both invoked via different paths (as happens
27642         with GNU tar CVS because it uses both argp and getopt), the former
27643         wins.
27644
27645 2005-08-16  Bruno Haible  <bruno@clisp.org>
27646
27647         * modules/tls: New file.
27648         * MODULES.html.sh (Multithreading): Add tls.
27649
27650 2005-08-16  Bruno Haible  <bruno@clisp.org>
27651
27652         * modules/strnlen1: New file.
27653         * MODULES.html.sh (String handling): Add strnlen1.
27654
27655 2005-08-16  Bruno Haible  <bruno@clisp.org>
27656
27657         * modules/strcase (Files): Add m4/mbrtowc.m4.
27658         (Depends-on): Add strnlen1, mbchar.
27659
27660 2005-08-16  Bruno Haible  <bruno@clisp.org>
27661
27662         * modules/mbiter: New file.
27663         * MODULES.html.sh (Extended multibyte and wide character utilities):
27664         Add mbiter.
27665
27666 2005-08-16  Bruno Haible  <bruno@clisp.org>
27667
27668         * modules/mbfile: New file.
27669         * MODULES.html.sh (Extended multibyte and wide character utilities):
27670         Add mbfile.
27671
27672 2005-08-16  Bruno Haible  <bruno@clisp.org>
27673
27674         * modules/mbchar: New file.
27675         * MODULES.html.sh (Extended multibyte and wide character utilities):
27676         New section.
27677
27678 2005-08-16  Bruno Haible  <bruno@clisp.org>
27679
27680         * m4/tls.m4: New file, from GNU gettext.
27681
27682 2005-08-16  Bruno Haible  <bruno@clisp.org>
27683
27684         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
27685         always.
27686         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
27687
27688 2005-08-16  Bruno Haible  <bruno@clisp.org>
27689
27690         * m4/mbiter.m4: New file.
27691
27692 2005-08-16  Bruno Haible  <bruno@clisp.org>
27693
27694         * m4/mbfile.m4: New file.
27695
27696 2005-08-16  Bruno Haible  <bruno@clisp.org>
27697
27698         * m4/mbchar.m4: New file.
27699
27700 2005-08-16  Bruno Haible  <bruno@clisp.org>
27701
27702         * lib/tls.h: New file, from GNU gettext.
27703         * lib/tls.c: New file, from GNU gettext.
27704
27705 2005-08-16  Bruno Haible  <bruno@clisp.org>
27706
27707         * lib/strnlen1.h: New file.
27708         * lib/strnlen1.c: New file.
27709
27710 2005-08-16  Bruno Haible  <bruno@clisp.org>
27711
27712         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
27713         (mbi_init): Update.
27714         (mbi_avail, mbi_advance): Let the iteration end before the terminating
27715         NUL byte, not after it.
27716
27717 2005-08-16  Bruno Haible  <bruno@clisp.org>
27718
27719         * lib/strcase.h (strcasecmp): Add note in comments.
27720         * lib/strncasecmp.c: Use code from strcasecmp.c.
27721         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
27722         (strcasecmp): Work correctly in multibyte locales.
27723
27724 2005-08-16  Bruno Haible  <bruno@clisp.org>
27725
27726         * lib/mbiter.h: New file.
27727
27728 2005-08-16  Bruno Haible  <bruno@clisp.org>
27729
27730         * lib/mbfile.h: New file.
27731
27732 2005-08-16  Bruno Haible  <bruno@clisp.org>
27733
27734         * lib/mbchar.h: New file.
27735         * lib/mbchar.c: New file.
27736
27737 2005-08-16  Bruno Haible  <bruno@clisp.org>
27738
27739         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
27740         the valid ones. Makes the comparison operations transitive:
27741         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
27742         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
27743
27744 2005-08-15  Simon Josefsson  <jas@extundo.com>
27745
27746         * modules/ssize_t (License): Change to 'unlimited'.
27747
27748         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
27749
27750 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27751
27752         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
27753         Add comments for each pending glibc patch.
27754
27755 2005-08-15  Bruno Haible  <bruno@clisp.org>
27756
27757         * lib/regex.h (__restrict_arr): Don't define to __restrict if
27758         __cplusplus is defined.
27759
27760 2005-08-14  Jim Meyering  <jim@meyering.net>
27761
27762         Sync from coreutils.
27763
27764         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
27765         Use the hash-table-based cycle-detection code not just when
27766         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
27767         Reported by James Youngman in
27768         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
27769         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
27770         FTS_TIGHT_CYCLE_CHECK.
27771         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
27772         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
27773         once again.
27774         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
27775         * lib/fts.c (fd_safer): Remove decl.
27776         Include fcntl--.h rather than unistd-safer.h
27777         (fts_safe_changedir): Don't call fd_safer; no longer needed
27778         now that we include fcntl--.h.
27779
27780 2005-08-12  Simon Josefsson  <jas@extundo.com>
27781
27782         * modules/getndelim2: Use ssize_t module.
27783         * modules/getnline: Likewise.
27784         * modules/safe-read: Likewise.
27785         * modules/xreadlink: Likewise.
27786
27787         * modules/ssize_t: New file.
27788
27789 2005-08-12  Simon Josefsson  <jas@extundo.com>
27790
27791         * m4/readline.m4: Look for termcap, curses or ncurses if required.
27792
27793 2005-08-12  Simon Josefsson  <jas@extundo.com>
27794
27795         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
27796         ssize_t.
27797
27798 2005-08-12  Simon Josefsson  <jas@extundo.com>
27799
27800         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
27801         readline, getdelim and check_version.
27802         (Support for systems lacking ISO C 99: Sizes of integer types):
27803         Add size_max.
27804
27805 2005-08-12  Bruno Haible  <bruno@clisp.org>
27806
27807         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
27808
27809 2005-08-11  Simon Josefsson  <jas@extundo.com>
27810
27811         * modules/readline: New file.
27812
27813         * modules/strnlen (Files): Add strnlen.h.
27814
27815 2005-08-11  Simon Josefsson  <jas@extundo.com>
27816
27817         * m4/readline.m4: New file.
27818
27819 2005-08-11  Simon Josefsson  <jas@extundo.com>
27820
27821         * lib/readline.h, readline.c: New file.
27822
27823 2005-08-11  Simon Josefsson  <jas@extundo.com>
27824
27825         * doc/gnulib.texi (Initial import, Finishing touches): Mention
27826         gl_AVOID.
27827
27828 2005-08-11  Bruno Haible  <bruno@clisp.org>
27829
27830         * lib/strnlen.h (strnlen): Change parameter name to match comment.
27831
27832 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
27833
27834         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
27835
27836 2005-08-10  Simon Josefsson  <jas@extundo.com>
27837
27838         * tests/test-iconvme.c: New file.
27839
27840 2005-08-10  Simon Josefsson  <jas@extundo.com>
27841
27842         * m4/strnlen.m4: New file.
27843
27844         * m4/strndup.m4: Don't check for strnlen declaration, done in
27845         strnlen.m4.
27846
27847 2005-08-10  Simon Josefsson  <jas@extundo.com>
27848
27849         * lib/strndup.c: Use strnlen.h.
27850
27851         * lib/strnlen.h: New file.
27852
27853 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
27854
27855         * README: Typos.
27856
27857 2005-08-02  Simon Josefsson  <jas@extundo.com>
27858
27859         * modules/readline: New file.
27860
27861 2005-08-02  Simon Josefsson  <jas@extundo.com>
27862
27863         * modules/getdelim: New file.
27864
27865         * modules/getline: Rewrite, don't use getndelim2.
27866
27867 2005-08-02  Simon Josefsson  <jas@extundo.com>
27868
27869         * m4/getline.m4: Separate out getdelim stuff into separate module.
27870
27871         * m4/getdelim.m4: New file.
27872
27873 2005-08-02  Simon Josefsson  <jas@extundo.com>
27874
27875         * lib/getline.h, getline.c: Rewrite.
27876
27877         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
27878
27879 2005-07-31  Bruno Haible  <bruno@clisp.org>
27880
27881         * lib/lock.h (gl_lock_initializer): New macro.
27882         (gl_lock_define_initialized): Use it.
27883         (gl_rwlock_initializer): New macro.
27884         (gl_rwlock_define_initialized): Use it.
27885         (gl_recursive_lock_initializer): New macro.
27886         (gl_recursive_lock_define_initialized): Use it.
27887
27888 2005-07-30  Karl Berry  <karl@gnu.org>
27889
27890         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
27891         Report from Ben Pfaff, regarding getopt.
27892
27893 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
27894
27895         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
27896         normal way.
27897         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
27898         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
27899         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
27900         (gl_GETOPT): Use the new macros.  Most of the implementation
27901         is moved to the new macros.  This is for programs like Emacs
27902         that don't want all the functionality of gl_GETOPT.
27903
27904 2005-07-26  Bruno Haible  <bruno@clisp.org>
27905
27906         * m4/lock.m4: Update from GNU gettext.
27907
27908 2005-07-26  Bruno Haible  <bruno@clisp.org>
27909
27910         * lib/lock.h: Update from GNU gettext.
27911         * lib/lock.c: Update from GNU gettext.
27912
27913 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
27914
27915         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
27916         obsolescent AC_TRY_RUN.  Include the default includes files, for
27917         'exit'.
27918
27919 2005-07-24  Bruno Haible  <bruno@clisp.org>
27920
27921         * modules/visibility: New file.
27922         * MODULES.html.sh (Misc): Add visibility.
27923
27924 2005-07-24  Bruno Haible  <bruno@clisp.org>
27925
27926         * m4/visibility.m4: New file.
27927
27928 2005-07-24  Bruno Haible  <bruno@clisp.org>
27929
27930         * doc/visibility.texi: New file.
27931
27932 2005-07-22  Bruno Haible  <bruno@clisp.org>
27933
27934         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
27935         $(ALLOCA_H), redundant through BUILT_SOURCES.
27936         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
27937         redundant through BUILT_SOURCES.
27938         * modules/byteswap (Makefile.am): Remove explicit dependency on
27939         $(BYTESWAP_H), redundant through BUILT_SOURCES.
27940         * modules/fnmatch (Makefile.am): Remove explicit dependency on
27941         $(FNMATCH_H), redundant through BUILT_SOURCES.
27942         * modules/getopt (Makefile.am): Remove explicit dependency on
27943         $(GETOPT_H), redundant through BUILT_SOURCES.
27944         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
27945         redundant through BUILT_SOURCES.
27946         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
27947         redundant through BUILT_SOURCES.
27948         * modules/stdbool (Makefile.am): Remove explicit dependency on
27949         $(STDBOOL_H), redundant through BUILT_SOURCES.
27950         * modules/stdint (Makefile.am): Remove explicit dependency on
27951         $(STDINT_H), redundant through BUILT_SOURCES.
27952         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
27953         Remove explicit dependency on $(SYSEXITS_H).
27954         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
27955
27956 2005-07-18  Simon Josefsson  <jas@extundo.com>
27957
27958         * lib/check-version.c (check_version): Accept identical versions too.
27959
27960 2005-07-18  Bruno Haible  <bruno@clisp.org>
27961
27962         * modules/lock: New file.
27963         * MODULES.html.sh (Multithreading): New section.
27964
27965 2005-07-18  Bruno Haible  <bruno@clisp.org>
27966
27967         * m4/lock.m4: New file, from GNU gettext.
27968
27969 2005-07-18  Bruno Haible  <bruno@clisp.org>
27970
27971         * lib/lock.h: New file, from GNU gettext.
27972         * lib/lock.c: New file, from GNU gettext.
27973
27974 2005-07-18  Bruno Haible  <bruno@clisp.org>
27975
27976         * lib/lock.h (gl_once_t): New type.
27977         (gl_once_define, gl_once): New macros.
27978         * lib/lock.c (fresh_once): New variable.
27979         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
27980         functions.
27981
27982 2005-07-16  Simon Josefsson  <jas@extundo.com>
27983
27984         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
27985         workaround, suggested by Bruno.
27986
27987 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
27988
27989         * modules/xalloc (Depends-on): Add xalloc-die.
27990         * modules/xvasprintf (Depends-on): Add xalloc-die.
27991
27992 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
27993
27994         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
27995         with a minor change.
27996
27997 2005-07-15  Bruno Haible  <bruno@clisp.org>
27998
27999         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
28000         When using lib/poll.c, define poll as rpl_poll.
28001
28002 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
28003
28004         * modules/argp (Depends-on): Remove unlocked-io.
28005
28006 2005-07-14  Derek Price  <derek@ximbiot.com>
28007
28008         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
28009         for glob symlink bug.
28010
28011 2005-07-14  Bruno Haible  <bruno@clisp.org>
28012
28013         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
28014         Instead, test for *_unlocked function declarations directly.
28015
28016 2005-07-11  Simon Josefsson  <jas@extundo.com>
28017
28018         * modules/size_max: New file.
28019
28020         * modules/xsize: Depend on size_max module for size_max.m4.
28021
28022 2005-07-11  Simon Josefsson  <jas@extundo.com>
28023
28024         * lib/size_max.h: New file.
28025
28026 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
28027
28028         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
28029         copyright symbol and the year.
28030         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
28031         (version_etc_va): Use parameterized copyright notice.
28032         Reword to conform to the current GNU coding standards.
28033
28034 2005-07-11  Karl Berry  <karl@gnu.org>
28035
28036         * doc/gnulib.texi (Quoting): new node.
28037         (Initial import): more info, from Patrice.
28038
28039 2005-07-11  Bruno Haible  <bruno@clisp.org>
28040
28041         * gnulib-tool (func_usage): Document option --avoid.
28042         (Command line options): Handle --avoid.
28043         (func_acceptable): New function.
28044         (func_modules_transitive_closure): Use it.
28045
28046 2005-07-11  Bruno Haible  <bruno@clisp.org>
28047
28048         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
28049         Reported by Jim Meyering.
28050
28051 2005-07-10  Bruno Haible  <bruno@clisp.org>
28052
28053         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
28054         Needed when size_t is smaller than 'unsigned int'.
28055         Reported by Paul Eggert.
28056
28057 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
28058
28059         * modules/argp (Depends-on): Add unlocked-io
28060
28061 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
28062
28063         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
28064         block of defines.
28065
28066 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
28067
28068         * config/srclist.txt: Comment out regcomp.c, since we have a porting
28069         fix now.
28070
28071 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
28072         and Paul Eggert  <eggert@cs.ucla.edu>
28073
28074         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
28075         in wint_t, not wchar_t.  Remove now-unnecessary cast.
28076
28077 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
28078
28079         * modules/regex (Files): Add lib/regex_internal.c,
28080         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
28081         (Depends-on): Add extensions.
28082         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
28083
28084 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
28085
28086         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
28087         pathconf.
28088         * m4/same.m4 (gl_SAME): Likewise.
28089         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
28090
28091         * m4/regex.m4: Adjust to new libc regex implementation.
28092         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
28093         all the .c and .h parts of (the new) regex.
28094         Quote the m4 stuff better.
28095         Check for RE_ICASE bug of old gnulib.
28096         Check for REG_STARTEND of recent libc.
28097         Rename local variables from jm_* to gl_*.
28098         Quote operand of "test -f".
28099         Say "recent enough" version of libc, not "version 2".
28100         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
28101         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
28102         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
28103         Remove check for btowc, isascii.
28104         Require AM_LANGINFO_CODESET.
28105
28106 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
28107
28108         * lib/regex.c, regex.h: Sync from libc.
28109         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
28110         * lib/regexec.c:
28111         New files, synced from libc, except that regex_internal.h
28112         currently has a small porting fix.
28113
28114 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
28115
28116         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
28117         regex_internal.c, regexec.c.
28118         Add regex_internal.h too, but as a comment, since the libc version
28119         is currently broken in gnulib mode.
28120
28121 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
28122
28123         Support programs like Emacs that use gnulib but not gettext.
28124         * MODULES.html.sh (Internationalization functions): Add gettext-h.
28125         * modules/gettext-h: New file.
28126         * modules/gettext (Files): Remove lib/gettext.h.
28127         (Depends-on): Add gettext-h.
28128         (Makefile.am): Remove lib_SOURCES.
28129         * modules/argmatch, modules/c-stack, modules/closeout:
28130         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
28131         * modules/execute, modules/file-type, modules/getaddrinfo:
28132         * modules/getopt, modules/human, modules/javacomp:
28133         * modules/javaexec, modules/mkdir-p, modules/obstack:
28134         * modules/openat, modules/pagealign_alloc, modules/pipe:
28135         * modules/quotearg, modules/regex, modules/rpmatch:
28136         * modules/unicodeio, modules/userspec, modules/version-etc:
28137         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
28138         * modules/xsetenv:
28139         Depend on gettext-h, not gettext.
28140
28141 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28142
28143         * gnulib-tool (func_import): Add support for 'public domain' license.
28144         * modules/alloca, modules/atexit, modules/memmove:
28145         Now public domain, not GPL.
28146         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
28147         * modules/realloc, modules/strerror, modules/strtod:
28148         Now LGPL, not GPL.
28149
28150 2005-07-05  Bruno Haible  <bruno@clisp.org>
28151
28152         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
28153         autoconf CVS. Needed for mingw.
28154
28155 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28156
28157         Remove the dependency of the strftime module on the tzset module.
28158         * modules/strftime (Depends-on): Remove dependency on tzset.
28159
28160 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28161
28162         Remove the dependency of the strftime module on the tzset module.
28163         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
28164         gl_FUNC_TZSET_CLOBBER.
28165
28166 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28167
28168         Remove the dependency of the strftime module on the tzset module.
28169         * lib/strftime.c (my_strftime)
28170         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
28171         Copy the input structure, to work around some of the bug with
28172         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
28173         Solaris releases, you should also use the tzset module, but we won't
28174         require it as a dependency any more since we don't want LGPLed code
28175         to depend on GPLed code.
28176
28177 2005-07-02  Jim Meyering  <jim@meyering.net>
28178
28179         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
28180         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
28181         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
28182         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
28183
28184 2005-07-02  Jim Meyering  <jim@meyering.net>
28185
28186         * lib/backupfile.c (backup_args): Change a `0' to NULL.
28187
28188 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
28189
28190         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
28191         declares only 'struct timespec;' (!).
28192
28193 2005-07-01  Jim Meyering  <jim@meyering.net>
28194
28195         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
28196         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
28197         * lib/save-cwd.c, tempname.c:
28198         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
28199         and don't include <sys/file.h>).
28200
28201 2005-06-29  Jim Meyering  <jim@meyering.net>
28202
28203         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
28204         type name.  Use the variable name instead.
28205         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
28206         Likewise.
28207
28208 2005-06-28  Simon Josefsson  <jas@extundo.com>
28209
28210         * modules/check-version (Files): Add check-version.m4.
28211
28212 2005-06-28  Simon Josefsson  <jas@extundo.com>
28213
28214         * m4/check-version.m4: New file, suggested by Jim Meyering
28215         <jim@meyering.net>.
28216
28217 2005-06-28  Simon Josefsson  <jas@extundo.com>
28218
28219         * lib/check-version.h, lib/check-version.c: New files.
28220
28221 2005-06-28  Simon Josefsson  <jas@extundo.com>
28222
28223         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
28224         collision with global variable.  Better indentation.  Don't
28225         increment buffer pointer beyond buffer end.  Based on comments
28226         from Paul Eggert <eggert@cs.ucla.edu>.
28227
28228         * lib/base64.h: Indent.
28229
28230 2005-06-28  Simon Josefsson  <jas@extundo.com>
28231
28232         * doc/gnulib.texi (Library version handling): New section.
28233
28234 2005-06-28  Jim Meyering  <jim@meyering.net>
28235
28236         * check-module (find_included_lib_files): Hard-code another
28237         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
28238         but modules/fts-lgpl (correctly) does not list those files.
28239
28240         * modules/canonicalize (Files): Add lib/pathmax.h.
28241
28242 2005-06-25  Simon Josefsson  <jas@extundo.com>
28243
28244         * modules/check-version: New file.
28245
28246 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
28247
28248         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
28249         initializer of struct addrinfo, as an indication that we don't
28250         care how many members the structure has.
28251
28252 2005-06-24  Derek Price  <derek@ximbiot.com>
28253         and Bruno Haible  <bruno@clisp.org>
28254
28255         Remove stat module & update lstat.
28256         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
28257         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
28258         * m4/stat.m4: Remove this file.
28259
28260 2005-06-24  Derek Price  <derek@ximbiot.com>
28261         and Bruno Haible  <bruno@clisp.org>
28262
28263         Remove stat module & update lstat.
28264         * lib/stat.c: Remove this file...
28265         (slash_aware_lstat): ...moving this content and its support...
28266         * lib/lstat.c (rpl_lstat): ...into here.
28267         * lib/lstat.h: New file.
28268
28269 2005-06-24  Derek Price  <derek@ximbiot.com>
28270         and Bruno Haible  <bruno@clisp.org>
28271
28272         Remove stat module & update lstat.
28273         * config/srclist.txt (libc sources): Remove stat.
28274
28275 2005-06-24  Derek Price  <derek@ximbiot.com>
28276         and Bruno Haible  <bruno@clisp.org>
28277
28278         Remove stat module & update lstat.
28279         * MODULES.html.sh (stat): Remove.
28280         * MODULES.html: Regenerated.
28281         * modules/lstat (Description): Correct function name.
28282         (Files): Add "lstat.h".
28283         (Depends-on): Remove stat, add xalloc, stat-macros.
28284         * modules/stat: Remove this file.
28285         (Include): Add "lstat.h", remove <sys/stat.h>.
28286
28287 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
28288
28289         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
28290         (ranged_convert): Don't save conversion in a temporary struct.
28291         This causes a warning with GCC 4.0.0, and anyway in the typical
28292         case it's not worth the extra 100 bytes or so of code.
28293         (ranged_convert, __mktime_internal): When calling a function via a
28294         pointer P, use P () rather than (*P) (), as we now assume C89 or
28295         better.
28296
28297 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
28298
28299         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
28300         "who -r" failed to give output.  Problem reported by Tim Waugh.
28301
28302         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
28303         (xcalloc): Use it to avoid needless tests.
28304         Problem reported by Jim Meyering.
28305
28306 2005-06-20  Derek Price  <derek@ximbiot.com>
28307
28308         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
28309         unnecessary for Autoconfs > 2.59c.
28310
28311 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28312
28313         * lib/argp.h (__option_is_short): Check upper limit of
28314         __key. Isprint() requires its argument to have the value
28315         of an unsigned char or EOF.
28316
28317 2005-06-16  Jim Meyering  <jim@meyering.net>
28318
28319         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
28320         when either N or S is zero.
28321
28322 2005-06-16  Derek Price  <derek@ximbiot.com>
28323
28324         * m4/bison.m4: Declare YACC & YFLAGS precious.
28325
28326 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
28327
28328         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
28329         multibyte string or pattern, fall back on unibyte matching.
28330         Problem reported by James Youngman.
28331
28332 2005-06-08  Bruno Haible  <bruno@clisp.org>
28333
28334         * modules/csharpcomp: New file.
28335         * MODULES.html.sh (C#): Add csharpcomp.
28336
28337 2005-06-08  Bruno Haible  <bruno@clisp.org>
28338
28339         * m4/csharpcomp.m4: New file, from GNU gettext.
28340
28341 2005-06-08  Bruno Haible  <bruno@clisp.org>
28342
28343         * lib/csharpcomp.h: New file, from GNU gettext.
28344         * lib/csharpcomp.c: New file, from GNU gettext.
28345         * lib/csharpcomp.sh.in: New file, from GNU gettext.
28346
28347 2005-06-08  Bruno Haible  <bruno@clisp.org>
28348
28349         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
28350         warning on mingw.
28351
28352 2005-06-07  Derek Price  <derek@ximbiot.com>
28353
28354         Sync from CVS.
28355         * lib/glob_.h: Indent nested #ifdef.
28356
28357 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28358
28359         Sync from coreutils.
28360         Use "file name" when talking about file names, instead of "filename"
28361         or "path", as per the GNU coding standards.
28362         * lib/mkdir-p.c: Renamed from makepath.c.
28363         (make_dir_parents): Renamed from make_path.  All callers changed.
28364         * lib/mkdir-p.h: Likewise.  All includers changed.
28365         * lib/filenamecat.c: Renamed from path-concat.c.
28366         (file_name_concat): Renamed from path_concat.  All callers changed.
28367         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
28368         * lib/filenamecat.h: Likewise.  All includers changed.
28369         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
28370         in comments or local variable names.
28371         * lib/basename.c: Likewise.
28372         * lib/canonicalize.c, canonicalize.h: Likewise.
28373         * lib/dirname.c, dirname.h: Likewise.
28374         * lib/euidaccess.c: Likewise.
28375         * lib/exclude.c: Likewise
28376         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
28377         * lib/fsusage.c, fsuage.h: Likewise.
28378         * lib/fts.c, fts_.h: Likewise.
28379         * lib/getcwd.c: Likewise.
28380         * lib/getloadavg.c: Likewise.
28381         * lib/mkstemp.c: Likewise.
28382         * lib/mountlist.c, mountlist.h: Likewise.
28383         * lib/openat.c, openat.h: Likewise.
28384         * lib/readlink-stub.c: Likewise.
28385         * lib/readutmp.c, readutmp.h: Likewise.
28386         * lib/rename.c: Likewise.
28387         * lib/rmdir.c: Likewise.
28388         * lib/same.c: Likewise.
28389         * lib/savedir.c: Likewise.
28390         * lib/stripslash.c: Likewise.
28391         * lib/tempname.c: Likewise.
28392         * lib/xreadlink.c: Likewise.
28393         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
28394         All uses changed.
28395         * lib/exclude.h: Likewise.
28396
28397         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
28398         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
28399         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
28400         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
28401         * lib/pathmax.h: Include <limits.h> unconditionally, since other
28402         files have been getting away with it for years (MORE/BSD 4.3
28403         is extinct now).
28404         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
28405         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
28406
28407         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
28408         Define to 256, not 255, as per modern POSIX.
28409
28410 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28411
28412         Sync from coreutils.
28413         Use "file name" when talking about file names, instead of "filename"
28414         or "path", as per the GNU coding standards.
28415         * MODULES.html.sh: mkdir-p renamed from makepath.
28416         filenamecat renamed from path-concat.
28417         * modules/filenamecat: Renamed from modules/path-concat.
28418         (Files): filenamecat.h and filenamecat.c renamed from
28419         path-concat.h and path-concat.c.
28420         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
28421         (Include): filenamecat.h, not path-concat.h.
28422         * modules/mkdir-p: Renamed from modules/makepath.
28423         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
28424         makepath.c.
28425         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
28426         (Include): mkdir-p.h, not makepath.h.
28427
28428 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28429
28430         Sync from coreutils.
28431         * m4/mkdir-p.m4: Renamed from makepath.m4.
28432         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
28433         Rename files from makepath.c to mkdir-p.c, and from
28434         makepath.h to mkdir-p.h.
28435         * m4/filenamecat.m4: Renamed from path-concat.m4.
28436         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
28437         Rename files from path-concat.c to filenamecat.c,
28438         and from path-concat.h to filenamecat.h.
28439         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
28440         "file name" in local variables or comments.
28441         * m4/rename.m4: Likewise.
28442
28443 2005-06-01  Bruno Haible  <bruno@clisp.org>
28444
28445         * modules/csharpexec: New file.
28446         * MODULES.html.sh (C#): New section.
28447
28448 2005-06-01  Bruno Haible  <bruno@clisp.org>
28449
28450         * m4/csharp.m4: New file, from GNU gettext.
28451         * m4/csharpexec.m4: New file, from GNU gettext.
28452
28453 2005-06-01  Bruno Haible  <bruno@clisp.org>
28454
28455         * lib/csharpexec.h: New file, from GNU gettext.
28456         * lib/csharpexec.c: New file, from GNU gettext.
28457         * lib/csharpexec.sh.in: New file, from GNU gettext.
28458
28459 2005-05-31  Derek Price  <derek@ximbiot.com>
28460             Paul Eggert  <eggert@cs.ucla.edu>
28461
28462         Sync from cvs.
28463         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
28464
28465 2005-05-31  Derek Price  <derek@ximbiot.com>
28466             Paul Eggert  <eggert@cs.ucla.edu>
28467
28468         Sync from cvs.
28469         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
28470
28471 2005-05-29  Derek Price  <derek@ximbiot.com>
28472
28473         * config/srclist.txt (glob_.h, glob.c): Add these files.
28474
28475 2005-05-29  Derek Price  <derek@ximbiot.com>
28476
28477         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
28478         * modules/glob: New file.
28479         * modules/getlogin_r: Add link to POSIX spec in description.
28480
28481 2005-05-29  Derek Price  <derek@ximbiot.com>
28482             Paul Eggert  <eggert@cs.ucla.edu>
28483
28484         * m4/glob.m4: New file.
28485
28486 2005-05-29  Derek Price  <derek@ximbiot.com>
28487             Paul Eggert  <eggert@cs.ucla.edu>
28488
28489         * lib/glob_.h, lib/glob.c: New files.
28490
28491 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28492
28493         * modules/fts (Files): Remove m4/inttypes-pri.m4.
28494         * modules/fts-lgpl (Depends-on): Remove gettext.
28495
28496 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28497
28498         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
28499         and don't require gt_INTTYPES_PRI.
28500
28501 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28502
28503         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
28504
28505         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
28506         the configuration hassle isn't worth it.
28507         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
28508         (LONGEST_MODIFIER, PRIuMAX): Remove.
28509
28510 2005-05-27  Bruno Haible  <bruno@clisp.org>
28511
28512         * lib/getlogin_r.h: Remove second include of <stddef.h>.
28513
28514 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
28515
28516         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
28517         _POSIX_PTHREAD_SEMANTICS for Solaris.
28518
28519 2005-05-25  Derek Price  <derek@ximbiot.com>
28520
28521         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
28522
28523 2005-05-25  Derek Price  <derek@ximbiot.com>
28524             Paul Eggert  <eggert@cs.ucla.edu>
28525
28526         * modules/getlogin_r, m4/getlogin_r.m4: New files.
28527         * lib/getlogin_r.c, getlogin_r.h: New files.
28528
28529 2005-05-25  Bruno Haible  <bruno@clisp.org>
28530             Derek Price  <derek@ximbiot.com>
28531
28532         * lib/getlogin_r.h: Simplify API documentation.
28533
28534 2005-05-23  Derek Price  <derek@ximbiot.com>
28535
28536         * modules/minmax (Files): Add m4/minmax.m4.
28537         (configure.ac): Add gl_MINMAX.
28538
28539 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
28540
28541         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
28542         so that unistd-safer.h (GPL'ed code) need not be included.
28543
28544 2005-05-22  Bruno Haible  <bruno@clisp.org>
28545
28546         * m4/minmax.m4: New file.
28547         Based on a patch by Derek Price <derek@ximbiot.com>.
28548
28549 2005-05-22  Bruno Haible  <bruno@clisp.org>
28550
28551         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
28552         (INT64_MIN): Fix definition.
28553         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
28554
28555         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
28556         NEED_SIGNED_INT_TYPES.
28557
28558         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
28559         HAVE_SYSTEM_INTTYPES.
28560
28561 2005-05-22  Bruno Haible  <bruno@clisp.org>
28562
28563         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
28564         Also include <sys/param.h> if it defines MIN, MAX.
28565         Based on a patch by Derek Price <derek@ximbiot.com>.
28566
28567 2005-05-21  Jim Meyering  <jim@meyering.net>
28568
28569         * modules/fts (Files): Add m4/inttypes-pri.m4.
28570         (Depends-on): Add lstat and remove gettext.  Alphabetize.
28571
28572 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
28573
28574         New fts module.
28575         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
28576         (setup_dir, free_dir): New functions.
28577         (enter_dir, leave_dir): Define trivial
28578         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
28579         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
28580         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
28581         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
28582         Move to fts-cycle.c.
28583         (fts_open): Use setup_dir.
28584         (fts_close): Use free_dir.
28585         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
28586         This adds a label and some gotos, but the alternatives were messier.
28587         Check for memory allocation failure when entering a dir.
28588         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
28589         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
28590         (FTS): New member fts_cycle, that is a union that contains the
28591         old active_dir_ht and cycle_state.  All uses changed to mention
28592         fts_cycle.ht and fts_cycle.state.
28593         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
28594         fts.c, with the following changes:
28595         (setup_dir, free_dir): New functions.
28596         (enter_dir): Now returns bool.  Return true if successful, false
28597         if memory exhausted.  All callers changed.
28598         Do not bother partly cleaning up on
28599         memory allocation failure; that is free_dir's job.
28600         However, free ad if hash_insert fails, to avoid memory leak.
28601         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
28602         fts->fts_options to see which union member to use.
28603
28604 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
28605
28606         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
28607         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
28608
28609 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
28610
28611         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
28612
28613 2005-05-20  Jim Meyering  <jim@meyering.net>
28614
28615         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
28616         Now a macro, to pacify GCC.
28617
28618 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
28619
28620         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
28621         of -1.
28622
28623 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
28624
28625         * lib/chown.c (rpl_chown): Return -1 on failure.
28626
28627 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
28628
28629         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
28630         Don't check for stddef.h.
28631         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
28632         don't use its results.
28633         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
28634         since we include them unconditionally.  Don't require
28635         AM_STDBOOL_H, since stdbool is a prerequisite.
28636         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
28637         since we assume C89 or better.
28638         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
28639         as we don't use their results.
28640         Don't check for fchdir, memmove, memset, strrchr, as we use
28641         them unconditionally.
28642         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
28643         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
28644
28645 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
28646
28647         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
28648         Include <stddef.h> unconditionally, since we assume C89 now.
28649         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
28650         * lib/fts.c: Include fts_.h first, to check interface.
28651         Do not include intprops.h; no longer needed.
28652         Include cycle-check.h and hash.h, since fts_.h no longer does.
28653         Remove unnecessary casts of closedir to void.
28654         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
28655         decide whether to decrement nlinks.
28656         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
28657         (FTS): Use struct hash_table * instead of Hash_table, so that
28658         we no longer need to include hash.h here.
28659
28660 2005-05-18  Jim Meyering  <jim@meyering.net>
28661
28662         * modules/dirfd (License): Change to LGPL.  Most of the code
28663         is already in the public domain.
28664
28665 2005-05-18  Jim Meyering  <jim@meyering.net>
28666
28667         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
28668         Reported by Yoann Vandoorselaere.
28669
28670 2005-05-17  Jim Meyering  <jim@meyering.net>
28671
28672         * m4/fts.m4: New file, from coreutils.
28673
28674 2005-05-17  Jim Meyering  <jim@meyering.net>
28675
28676         * lib/fts.c, lib/fts_.h: New files, from coreutils.
28677
28678 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
28679
28680         Sync from coreutils.
28681         * m4/unlinkdir.m4: New file.
28682
28683 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
28684
28685         Sync from coreutils.
28686         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
28687         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
28688         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
28689         White space changes only.
28690         * lib/makepath.c (make_path): Port to hosts where leading "//" is
28691         special.
28692         * lib/yesno.c: Include getline.h, not ctype.h.
28693         (yesno): Don't remove leading white space; POSIX doesn't allow it.
28694         Use getline to remove arbitrary restriction on response length.
28695
28696 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
28697
28698         * config/srclist-update: Spell out "Street" in FSF postal
28699         mail address; this is the style the FSF seems to prefer.
28700
28701         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
28702         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
28703         this updates FSF postal mail address.
28704
28705         Sync from coreutils.
28706         * modules/unlinkdir: New file.
28707         * modules/yesno (Depends-on): Add getline.
28708         * MODULES.html.sh (File system functions): Add unlinkdir.
28709
28710 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
28711
28712         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
28713         lib/strsep.h:
28714         Change the initial comment to refer to GPL, not LGPL.
28715         gnulib-tool will change it to LGPL as needed.
28716
28717         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
28718         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
28719         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
28720         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
28721         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
28722         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
28723         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
28724         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
28725         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
28726         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
28727         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
28728         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
28729         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
28730         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
28731         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
28732         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
28733         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
28734         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
28735         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
28736         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
28737         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
28738         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
28739         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
28740         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
28741         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
28742         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
28743         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
28744         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
28745         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
28746         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
28747         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
28748         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
28749         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
28750         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
28751         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
28752         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
28753         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
28754         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
28755         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
28756         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
28757         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
28758         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
28759         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
28760         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
28761         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
28762         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
28763         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
28764         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
28765         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
28766         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
28767         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
28768         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
28769         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
28770         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
28771         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
28772         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
28773         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
28774         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
28775         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
28776         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
28777         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
28778         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
28779         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
28780         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
28781         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
28782         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
28783         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
28784         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
28785         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
28786         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
28787         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
28788         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
28789         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
28790         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
28791         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
28792         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
28793         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
28794         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
28795         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
28796         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
28797         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
28798         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
28799         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
28800         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
28801         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
28802         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
28803         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
28804         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
28805         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
28806         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
28807         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
28808         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
28809         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
28810         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
28811         lib/yesno.c, lib/yesno.h:
28812         Update FSF postal mail address.
28813
28814 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
28815
28816         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
28817         tests/test-memmem.c, tests/test-stpncpy.c:
28818         Update FSF postal mail address.
28819
28820 2005-05-13  Bruno Haible  <bruno@clisp.org>
28821
28822         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
28823         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
28824         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
28825         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
28826         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
28827         Add support for 64-bit integers in the MSVC compiler.
28828
28829 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28830
28831         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
28832
28833 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
28834
28835         * gnulib-tool (func_import): Sort and uniquify recommended includes.
28836
28837 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
28838
28839         * doc/getdate.texi (General date syntax): Don't say that date
28840         date --iso-8601=ns generates acceptable dates; it doesn't yet.
28841         Problem reported by Nic Ferrier.
28842
28843 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28844
28845         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
28846         specified in ai_socktype. Fix invalid ai_protocol
28847         check. ai_protocol is usually set to 0 or depending on
28848         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
28849         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
28850         ai_socktype / ai_protocol in the returned addrinfo structure.
28851
28852 2005-05-10  Simon Josefsson  <jas@extundo.com>
28853
28854         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
28855         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
28856
28857 2005-05-10  Karl Berry  <karl@gnu.org>
28858
28859         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
28860         (from http://www.gnu.org/licenses).
28861         * doc/COPYING.LIB: also rename to COPYING.LESSER.
28862         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
28863         fdl.texi suffices.
28864
28865 2005-05-10  Karl Berry  <karl@gnu.org>
28866
28867         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
28868         (COPYING.DOC): remove.
28869
28870         * config/srclist-update: new FSF address.
28871
28872 2005-05-10  Derek Price  <derek@ximbiot.com>
28873
28874         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
28875         possible.
28876
28877 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28878             Bruno Haible  <bruno@clisp.org>
28879
28880         * modules/inet_ntop: New file.
28881         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
28882         inet_ntop.
28883
28884 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28885             Bruno Haible  <bruno@clisp.org>
28886
28887         * m4/inet_ntop.m4: New file.
28888
28889 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28890             Bruno Haible  <bruno@clisp.org>
28891
28892         * lib/inet_ntop.h: New file.
28893         * lib/inet_ntop.c: New file, from glibc with modifications.
28894
28895 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
28896
28897         * modules/time_r (License): Change to LGPL.
28898         * modules/extensions (License): Change to LGPL.  Actually,
28899         the license is more permissive than that, but currently gnulib-tool
28900         doesn't know how to handle more-permissive licenses.
28901
28902         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
28903         Problem reported by Dave Love.
28904
28905 2005-05-08  Jim Meyering  <jim@meyering.net>
28906
28907         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
28908         blank.
28909
28910 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
28911
28912         * modules/argmatch (Depends-on): Add stdbool.
28913         * modules/backupfile (Depends-on): Likewise.
28914         * modules/chdir-long (Depends-on): Likewise.
28915         * modules/closeout (Depends-on): Likewise.
28916         * modules/cycle-check (Depends-on): Likewise.
28917         * modules/dirname (Depends-on): Likewise.
28918         * modules/fnmatch (Depends-on): Likewise.
28919         * modules/fsusage (Depends-on): Likewise.
28920         * modules/fwriteerror (Depends-on): Likewise.
28921         * modules/getcwd (Depends-on): Likewise.
28922         * modules/getloadavg (Depends-on): Likewise.
28923         * modules/hard-locale (Depends-on): Likewise.
28924         * modules/makepath (Depends-on): Likewise.
28925         * modules/mountlist (Depends-on): Likewise.
28926         * modules/nanosleep (Depends-on): Likewise.
28927         * modules/posixtm (Depends-on): Likewise.
28928         * modules/quotearg (Depends-on): Likewise.
28929         * modules/readtokens (Depends-on): Likewise.
28930         * modules/readtokens0 (Depends-on): Likewise.
28931         * modules/readutmp (Depends-on): Likewise.
28932         * modules/save-cwd (Depends-on): Likewise.
28933         * modules/strftime (Depends-on): Likewise.
28934         * modules/userspec (Depends-on): Likewise.
28935         * modules/utimecmp (Depends-on): Likewise.
28936         * modules/xgetcwd (Depends-on): Likewise.
28937         * modules/xnanosleep (Depends-on): Likewise.
28938         * modules/xstrtod (Depends-on): Likewise.
28939         * modules/yesno (Depends-on): Likewise.
28940
28941 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
28942
28943         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
28944         needless checks.
28945
28946 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
28947
28948         Merge from coreutils.  Among other things,
28949         add bulletproofing for cases where stdin, stdout, or stderr are closed.
28950         * lib/fd-safer.c: New file.
28951         * lib/fcntl-safer.h, open-safer.c: Remove.
28952         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
28953         * lib/dup-safer.c: Include unistd-safer.h first.
28954         Don't include errno.h.
28955         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
28956         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
28957         * lib/file-type.c: Rely on file-type.h change.
28958         * lib/getloadavg.c: Include unistd-safer.h.
28959         (getloadavg): Use safer open.
28960         * lib/getusershell.c: Include "stdio-safer.h".
28961         (getusershell): Use safer fopen.
28962         * lib/long-options.c (long_options): Use NULL rather than 0.
28963         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
28964         'free'.
28965         * lib/modechange.c: Likewise.
28966         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
28967         (MODE_DONE): New constant.
28968         (struct mode_change): Remove 'next' member.
28969         (make_node_op_equals): New function; like the old one of the
28970         same name, except it allocates an array.
28971         (mode_compile, mode_create_from_ref): Use it.
28972         (mode_compile): Allocate result as an array, not a linked list.
28973         Parse octal string ourself, so that we catch mistakes like "+0".
28974         (mode_adjust): Arg is an array, not a linked list.
28975         * lib/modechange.c: Include stat-macros.h, xalloc.h.
28976         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
28977         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
28978         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
28979         Remove.  This is now stat-macros.h's job.
28980         (talloc): Remove.  All callers replaced by xalloc, so that
28981         our invokers don't have to worry about reporting memory failures.
28982         (make_node_op_equals): Remove.
28983         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
28984         New constants.
28985         (struct mode_change): Moved here from modechange.h.
28986         (mode_append_entry): Remove.
28987         (mode_compile): Remove MASKED_OPS arg, since it encouraged
28988         apps to have incorrect behavior.  Use simpler algorithm for head
28989         and tail.  Don't futz with umask; that's now the job of mode_adjust.
28990         Detect more invalid usages rather than having somewhat-random behavior.
28991         Don't insert an "a=" action, as that leads to incorrect behavior.
28992         (mode_compile, mode_create_from_ref): Return NULL on error instead
28993         of an enum, since now there's only one way to have an error.  All
28994         callers changed.
28995         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
28996         at the correct time.  Simplify calculation of "+u" and its ilk.
28997         Don't mishandle "+X".
28998         (mode_free): Remove "register" and localize decls.
28999         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
29000         (struct mode_change): Move to modechange.c; callers don't
29001         need to see this stuff.
29002         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
29003         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
29004         (mode_change, mode_adjust): Reflect the new signatures noted above.
29005         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
29006         that might redefine system include files.
29007         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
29008         (my_usleep): Use NULL rather than (void *) 0.
29009         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
29010         Use siginterrupt to specify that system calls should be interrupted.
29011         (rpl_nanosleep): Move initialization of suspended closer to call of
29012         my_usleep.
29013         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
29014         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
29015         (desirable_utmp_entry): New function.
29016         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
29017         using x2nrealloc, to simplify logic.
29018         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
29019         size calculation.  Do not assume utmp file is a regular file.
29020         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
29021         (READ_UTMP_CHECK_PIDS): New constant.
29022         * lib/save-cwd.c: Include unistd-safer.h.
29023         (save_cwd): Use fd_safer.
29024         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
29025         [!_LIBC] Include "stat-macros.h" instead.
29026         * lib/unistd-safer.h (fd_safer): New decl.
29027
29028 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
29029
29030         * modules/getloadavg (Depends-on): Add unistd-safer.
29031         * modules/getusershell (Depends-on): Add stdio-safer.
29032         * modules/lstat (Depends-on): Remove xalloc.
29033         * modules/mkstemp (Depends-on): Add stat-macros.
29034         * modules/modechange (Depends-on): Remove xstrtol.
29035         Add stat-macros, xalloc.
29036         * modules/save-cwd (Depends-on): Add unistd-safer.
29037         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
29038         * modules/unistd-safer (Files): Add lib/fd-safer.c
29039         (Makefile.am): Remove lib_SOURCES.
29040
29041         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
29042         Remove fcntl-safer; unistd-safer supersedes it.
29043
29044 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
29045
29046         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
29047         AC_HEADER_STAT.
29048         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
29049         (gl_PREREQ_CHOWN): Remove.
29050         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
29051         it.  Don't require AC_HEADER_STAT.
29052         (gl_PREREQ_LSTAT): Remove.
29053         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
29054         Don't require AC_HEADER_STAT.
29055         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
29056         (gl_PREREQ_RMDIR): Remove.
29057         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
29058         mention stat-macros.h or AC_HEADER_STAT, since we'll make
29059         the stat-macros module a prerequisite.
29060         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
29061         * m4/filemode.m4 (gl_FILEMODE): Likewise.
29062         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
29063         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
29064         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
29065         variable names.
29066         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
29067         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
29068         variable prefixes.
29069         * m4/fcntl-safer.m4: Remove.
29070         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
29071         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
29072         Invoke gl_PREREQ_FD_SAFER.
29073         (gl_PREREQ_FD_SAFER): New macro.
29074         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
29075         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
29076         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
29077         Remove duplicate call to AC_LIBOBJ(readutmp).
29078         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
29079
29080         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
29081         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
29082
29083 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
29084
29085         * MODULES.html.sh (Misc): Add byteswap.
29086
29087 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
29088
29089         * modules/getcwd (Depends-on): Add extensions.
29090         * modules/openat (Depends-on): Likewise.
29091
29092 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
29093
29094         * modules/byteswap: New file.
29095
29096 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
29097
29098         * m4/byteswap.m4: New file.
29099
29100 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
29101
29102         * lib/byteswap_.h: New file.
29103
29104 2005-04-25  Karl Berry  <karl@gnu.org>
29105
29106         * m4/gettext.m4: Update from GNU gettext 0.14.4.
29107
29108 2005-04-25  Albert Chin  <china@thewrittenword.com>
29109
29110         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
29111         Toolkit C bug.
29112
29113 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
29114
29115         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
29116         (func_ln_if_changed) Remove forcibly for no error message
29117         in case file does not exist.
29118
29119 2005-04-19  Simon Josefsson  <jas@extundo.com>
29120
29121         * gnulib-tool (Options): Make --symlink mean --symbolic.
29122
29123 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
29124
29125         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
29126
29127 2005-04-16  Simon Josefsson  <jas@extundo.com>
29128
29129         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
29130
29131 2005-04-15  Simon Josefsson  <jas@extundo.com>
29132
29133         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
29134
29135 2005-04-15  Simon Josefsson  <jas@extundo.com>
29136
29137         * gnulib-tool: Rename --symlink to --symbolic.
29138
29139 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
29140
29141         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
29142         symbolic links to files instead of copying/moving.  Add --aux-dir,
29143         specifying directory relative --dir where auxiliary build tools
29144         are placed.
29145
29146 2005-04-14  Bruno Haible  <bruno@clisp.org>
29147
29148         * modules/allocsa (License): Change to LGPL.
29149         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
29150
29151 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
29152
29153         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
29154         that "UTC +1 second" continues to work.  Problem reported
29155         by Dmitry V. Levin.
29156         (relunit_snumber): New rule.
29157         (relunit): Use it.
29158
29159 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
29160
29161         * lib/getdate.y (universal_time_zone_table): New constant.
29162         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
29163         universal_time_zone_table.
29164         (lookup_zone): Prefer universal_time_zone_table to
29165         local_time_zone_table, so that "GMT" time stamps are allowed in
29166         London during the summer.  Problem reported by Ian Abbott.
29167
29168 2005-04-12  Jim Meyering  <jim@meyering.net>
29169
29170         * lib/human.c (humblock): Set *options even when returning due to
29171         xstrtoumax conversion failure.  Thanks to a used-uninitialized
29172         warning from gcc-4.
29173
29174 2005-04-09  Jim Meyering  <jim@meyering.net>
29175
29176         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
29177         -Wuninitialized: initialize tm0.tm_year.
29178
29179 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
29180
29181         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
29182         count, since there's no maximum.  All uses changed.
29183         Add member dsts_seen.
29184         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
29185         not being INT_MAX.
29186         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
29187         Use pc_rels_seen to decide whther a date is absolute.
29188
29189         * lib/getdate.y (number): Don't overwrite year.
29190         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
29191         check.
29192
29193 2005-04-02  Simon Josefsson  <jas@extundo.com>
29194
29195         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
29196         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
29197
29198 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
29199
29200         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
29201         where no absolute path name can be longer than PATH_MAX.
29202
29203 2005-03-27  Jim Meyering  <jim@meyering.net>
29204
29205         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
29206
29207 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
29208
29209         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
29210         "one's complement" -> "ones' complement" in comment, as per Knuth.
29211         "value of type" -> "type or expression" in comment.
29212         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
29213
29214 2005-03-26  Jim Meyering  <jim@meyering.net>
29215
29216         Comment nits.
29217         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
29218         Correct typos: s/or/of/.
29219
29220 2005-03-26  Jim Meyering  <jim@meyering.net>
29221
29222         * modules/check-include-files: Move to ../ and rename to...
29223         * check-module: ...this.
29224
29225 2005-03-25  Jim Meyering  <jim@meyering.net>
29226
29227         * modules/xvasprintf (Files): Add xalloc.h.
29228
29229 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
29230
29231         * modules/gettext (Files): config/config.rpath ->
29232         build-aux/config.rpath
29233         * modules/iconv (Files): Likewise.
29234         Problem reported by Oskar Liljeblad.
29235
29236 2005-03-23  Jim Meyering  <jim@meyering.net>
29237
29238         * modules/check-include-files: New script to check for
29239         missing dependencies, multiple includes, etc.
29240
29241         * modules/c-strtold (Depends-on): Add xalloc.
29242         * modules/c-strtod (Depends-on): Add xalloc.
29243         * modules/hash (Depends-on): Add xalloc.
29244         (Files): Remove lib/xalloc.h.
29245
29246         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
29247         * modules/userspec (Files): Add lib/inttostr.h.
29248
29249 2005-03-23  Jim Meyering  <jim@meyering.net>
29250
29251         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
29252
29253 2005-03-22  Jim Meyering  <jim@meyering.net>
29254
29255         * modules/stat-macros: New module.
29256         * modules/canonicalize, modules/euidaccess, modules/file-type,
29257         * modules/filemode, modules/lchown, modules/makepath,
29258         * modules/rmdir, modules/stat: Depend on new stat-macros module
29259         rather than listing lib/stat-macros.h manually.
29260         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
29261
29262 2005-03-22  Jim Meyering  <jim@meyering.net>
29263
29264         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
29265
29266 2005-03-22  Bruno Haible  <bruno@clisp.org>
29267
29268         * config/srclist.txt: Replace target directory 'config' with
29269         'build-aux'.
29270         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
29271         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
29272         ../build-aux/.
29273
29274 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
29275
29276         * modules/chdir-long (Depends-on): Add mempcpy.
29277
29278         * modules/acl, modules/backupfile, modules/c-strtod,
29279         modules/c-strtold, modules/canon-host, modules/canonicalize,
29280         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
29281         modules/exclude, modules/exitfail, modules/file-type,
29282         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
29283         modules/getdate, modules/getline, modules/getpagesize,
29284         modules/getpass, modules/getugroups, modules/group-member,
29285         modules/hard-locale, modules/hash, modules/human, modules/idcache,
29286         modules/inttostr, modules/long-options, modules/makepath,
29287         modules/md5, modules/memcasecmp, modules/memcoll,
29288         modules/modechange, modules/mountlist, modules/path-concat,
29289         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
29290         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
29291         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
29292         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
29293         modules/strftime, modules/strndup, modules/strverscmp,
29294         modules/timespec, modules/unlocked-io, modules/userspec,
29295         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
29296         modules/yesno:
29297         Remove lib_SOURCES line from Makefile.am section, as this is now
29298         done automatically by the corresponding Autoconf macro.
29299
29300 2005-03-21  Jim Meyering  <jim@meyering.net>
29301
29302         Changes imported from coreutils.
29303
29304         * lib/cycle-check.c: Don't include xalloc.h.
29305
29306         * lib/path-concat.c: Don't include assert.h.
29307         (path_concat): Remove assertion that would have triggered
29308         for ABASE starting with more than one slash.
29309         Reported by Andreas Schwab.
29310
29311         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
29312         properly when ABASE is an absolute file name.
29313         Correct the description of this function.
29314         Include <assert.h>.
29315         Add an assertion and a test driver.
29316         This fixes a bug introduced on 2004-07-02.
29317         Andreas Schwab reported the resulting failure of cp --parents:
29318         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
29319
29320 2005-03-21  Jim Meyering  <jim@meyering.net>
29321
29322         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
29323         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
29324
29325 2005-03-21  Jim Meyering  <jim@meyering.net>
29326         and  Paul Eggert  <eggert@cs.ucla.edu>
29327
29328         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
29329         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
29330         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
29331         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
29332         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
29333         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
29334         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
29335         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
29336         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
29337         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
29338         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
29339         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
29340         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
29341         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
29342         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
29343         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
29344         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
29345         for these modules.
29346
29347 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
29348
29349         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
29350         (which shouldn't happen), generate nothing instead of returning 0
29351         immediately, so that nstrftime (NULL, ...) doesn't return 0.
29352
29353 2005-03-16  Bruno Haible  <bruno@clisp.org>
29354
29355         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
29356         HAVE_LONGLONG_64BIT.
29357
29358 2005-03-16  Bruno Haible  <bruno@clisp.org>
29359
29360         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
29361         HAVE_LONGLONG_64BIT.
29362
29363 2005-03-16  Bruno Haible  <bruno@clisp.org>
29364
29365         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
29366         HAVE_LONGLONG_64BIT.
29367
29368 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
29369
29370         * lib/strftime.c (my_strftime): Prepend space to format so that we can
29371         reliably distinguish strftime failure from empty output on POSIX
29372         hosts.
29373
29374 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
29375
29376         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
29377         (iconv_string): Don't guess a size-zero buffer, as that might cause
29378         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
29379         result would be 'too large', where 'too large' is (heuristically)
29380         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
29381         overflow concerns.  This will prevent some unwanted malloc failures
29382         when the inputs are very large.
29383
29384 2005-03-15  Karl Berry  <karl@gnu.org>
29385
29386         * config/srclist.txt (config.rpath): from gettext.
29387         * config/config.rpath: update.
29388
29389 2005-03-15  Bruno Haible  <bruno@clisp.org>
29390
29391         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
29392         to 'negate'.
29393
29394         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
29395         variable.
29396
29397         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
29398         results.
29399
29400 2005-03-14  Simon Josefsson  <jas@extundo.com>
29401
29402         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
29403         <fx@gnu.org>.
29404
29405 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
29406
29407         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
29408         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
29409         intprops.h.
29410         * lib/strtol.c: Likewise.
29411
29412 2005-03-14  Jim Meyering  <jim@meyering.net>
29413
29414         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
29415         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
29416         to be nonzero so that we (and caller) can detect the difference
29417         between a valid zero-length expansion and an error return, even
29418         when the underlying strftime fails before writing anything into
29419         that location.
29420
29421 2005-03-14  Bruno Haible  <bruno@clisp.org>
29422
29423         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
29424         Update from GNU gettext 0.14.3.
29425
29426 2005-03-10  Jim Meyering  <jim@meyering.net>
29427
29428         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
29429
29430 2005-03-10  Jim Meyering  <jim@meyering.net>
29431
29432         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
29433         so that this module works on systems without fchdir.
29434
29435 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
29436
29437         Factor int-properties macros into a single file, except for
29438         glibc-related files.
29439         * lib/intprops.h: New file.
29440         * lib/getloadavg.c: Include it instead of limits.h.
29441         (INT_STRLEN_BOUND): Remove.
29442         * lib/human.c: Include intprops.h.
29443         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
29444         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
29445         302/1000.
29446         * lib/inttostr.h: Include intprops.h instead of limits.h.
29447         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
29448         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
29449         for consistency with intprops.h.
29450         (time_t_is_integer, twos_complement_arithmetic): Use them.
29451         * lib/sig2str.h: Include <signal.h>, intprops.h.
29452         (INT_STRLEN_BOUND): Remove.
29453         * lib/strftime.c (TYPE_SIGNED): Remove.
29454         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
29455         * lib/strtol.c: Adjust comments to match intprops.h.
29456         * lib/userspec.c: Include intprops.h.
29457         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
29458         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
29459         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
29460         instead of rolling our own expressions.
29461         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
29462
29463         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
29464         instead of int.
29465         (my_strftime): Do not mishandle years close to INT_MAX, by doing
29466         the right thing even if adding 1900 would overflow.  Similarly
29467         for tm_mon + 1 and tm_yday + 1.
29468         Make %Y always equivalent to %C%y, and similarly for %G and %g.
29469         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
29470         (DO_SIGNED_NUMBER): New macro.
29471         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
29472
29473 2005-03-07  Bruno Haible  <bruno@clisp.org>
29474
29475         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
29476
29477 2005-03-07  Bruno Haible  <bruno@clisp.org>
29478
29479         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
29480
29481 2005-03-04  Derek R. Price  <derek@ximbiot.com>
29482
29483         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
29484         (func_import): Only replace files via --import when they have actually
29485         changed.
29486
29487 2005-03-03  Derek R. Price  <derek@ximbiot.com>
29488
29489         * m4/mmap-anon.m4: New file.
29490         * m4/pagealign_alloc.m4: New file.
29491
29492 2005-03-03  Derek R. Price  <derek@ximbiot.com>
29493             Bruno Haible  <bruno@clisp.org>
29494
29495         * modules/pagealign_alloc: New file.
29496         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
29497
29498 2005-03-03  Derek R. Price  <derek@ximbiot.com>
29499             Bruno Haible  <bruno@clisp.org>
29500
29501         * lib/pagealign_alloc.h: New file.
29502         * lib/pagealign_alloc.c: New file.
29503
29504 2005-03-03  Bruno Haible  <bruno@clisp.org>
29505
29506         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
29507         Use an all-permissive copyright notice, recommended by RMS.
29508
29509 2005-03-02  Bruno Haible  <bruno@clisp.org>
29510
29511         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
29512         of AIX, the replacement has to be done only after <string.h> is
29513         included, therefore not in config.h. stpncpy.h does the replacement,
29514         and stpncpy.c uses it.
29515
29516 2005-03-02  Bruno Haible  <bruno@clisp.org>
29517
29518         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
29519         stpncpy.c uses it.
29520
29521 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
29522
29523         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
29524         The workaround isn't strictly needed for POSIX conformance, and
29525         it's too much of a pain to configure and maintain.  We'll ask
29526         people to fix their kernels instead.
29527         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
29528         (NANOSLEEP_BUG_WORKAROUND): Remove.
29529         (xnanosleep): Remove the workaround.
29530
29531 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
29532
29533         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
29534         Reported by Derek Price.
29535         (Include): Add "timespec.h".
29536
29537         * modules/xnanosleep (Depends-on): Remove gethrxtime.
29538
29539 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
29540
29541         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
29542         to detect nanosleep bug.
29543
29544 2005-03-01  Bruno Haible  <bruno@clisp.org>
29545
29546         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
29547
29548 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
29549
29550         * modules/gethrxtime: New file.
29551         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
29552         (Depends-on): Add gethrxtime.
29553         (configure.ac): Add gl_XNANOSLEEP.
29554         (Makefile.am): Remove lib_SOURCES line.
29555
29556 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
29557
29558         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
29559         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
29560
29561 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
29562
29563         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
29564         * lib/timespec.h (gettime): Return void, since it always
29565         succeeds now.  All uses changed.
29566         * lib/gettime.c (gettime) Likewise.
29567         [HAVE_NANOTIME]: Prefer nanotime.
29568         Assume gettimeofday succeeds, as POSIX requires.
29569         Assime time () succeeds, since other code already does.
29570         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
29571         (timespec_subtract): Remove.
29572         (NANOSLEEP_BUG_WORKAROUND): New constant.
29573         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
29574         things considerably.  Use it only on GNU/Linux hosts, since the
29575         workaround shouldn't be needed elsewhere.
29576
29577 2005-02-24  Bruno Haible  <bruno@clisp.org>
29578
29579         * modules/gettext (Files): Add m4/glibc2.m4.
29580
29581 2005-02-24  Bruno Haible  <bruno@clisp.org>
29582
29583         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
29584         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
29585         * m4/progtest.m4:
29586         Update from GNU gettext 0.14.2.
29587         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
29588
29589 2005-02-24  Bruno Haible  <bruno@clisp.org>
29590
29591         * lib/localcharset.c: Update from GNU gettext 0.14.2.
29592         * lib/config.charset: Update from GNU gettext 0.14.2.
29593
29594 2005-02-24  Bruno Haible  <bruno@clisp.org>
29595
29596         * lib/gettext.h: Update from GNU gettext 0.14.2.
29597
29598 2005-02-23  Simon Josefsson  <jas@extundo.com>
29599
29600         * m4/iconvme.m4: New file.
29601
29602 2005-02-23  Jim Meyering  <jim@meyering.net>
29603
29604         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
29605         change.
29606         Thanks to Bruno Haible for catching it.
29607
29608 2005-02-22  Simon Josefsson  <jas@extundo.com>
29609
29610         * modules/iconvme: New file.
29611
29612         * MODULES.html.sh: Add iconvme.
29613
29614 2005-02-22  Simon Josefsson  <jas@extundo.com>
29615
29616         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
29617
29618 2005-02-22  Simon Josefsson  <jas@extundo.com>
29619
29620         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
29621
29622 2005-02-22  Jim Meyering  <jim@meyering.net>
29623
29624         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
29625         s/ifndef/ifdef/.
29626
29627 2005-02-20  Neil Conway  <neilc@samurai.com>
29628
29629         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
29630         returned by OSX/Darwin if the specified buffer is not large
29631         enough for the hostname.
29632
29633 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29634
29635         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
29636         pass it to _help, otherwise the latter coredumps trying to
29637         dereference state.root_argp.
29638
29639 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
29640
29641         * modules/chdir-long (Depends-on): Add memrchr.
29642         * modules/memrchr (Files): Add lib/memrchr.h.
29643         (Include): "memrchr.h".
29644
29645 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
29646
29647         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
29648
29649 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
29650
29651         * lib/memrchr.h: New file.
29652         * lib/chdir-long.c: Include it.
29653         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
29654         Don't bother including stddef.h.
29655
29656 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
29657
29658         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
29659         inclusion.
29660         Include <sys/types.h>, for dev_t.
29661         (ME_DUMMY, ME_REMOTE): Move from here....
29662         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
29663         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
29664         Dmitry V. Levin.
29665         Include mountlist.h first, to test the interface.
29666
29667 2005-01-29  Bruno Haible  <bruno@clisp.org>
29668
29669         * lib/progname.c (program_name): Initialize.
29670         Needed when linking statically on MacOS X.
29671
29672 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
29673
29674         Sync from coreutils.
29675         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
29676         (Depends-on): Add c-strtod.
29677         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
29678
29679 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
29680
29681         Sync from coreutils.
29682         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
29683
29684         Remove files that are specific to coreutils.
29685         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
29686
29687 2005-01-28  Bruno Haible  <bruno@clisp.org>
29688
29689         * modules/javacomp: New file.
29690         * MODULES.html.sh (Java): Add javacomp.
29691
29692 2005-01-28  Bruno Haible  <bruno@clisp.org>
29693
29694         * m4/javacomp.m4: New file, from GNU gettext.
29695
29696 2005-01-28  Bruno Haible  <bruno@clisp.org>
29697
29698         * lib/javacomp.sh.in: New file, from GNU gettext.
29699         * lib/javacomp.h: New file, from GNU gettext.
29700         * lib/javacomp.c: New file, from GNU gettext.
29701
29702 2005-01-26  Simon Josefsson  <jas@extundo.com>
29703
29704         * lib/gai_strerror.c: Use GPL in header.
29705
29706 2005-01-26  Bruno Haible  <bruno@clisp.org>
29707
29708         * modules/javaexec: New file.
29709         * MODULES.html.sh (Java): Add javaexec.
29710
29711 2005-01-26  Bruno Haible  <bruno@clisp.org>
29712
29713         * m4/javaexec.m4: New file, from GNU gettext.
29714
29715 2005-01-26  Bruno Haible  <bruno@clisp.org>
29716
29717         * lib/javaexec.sh.in: New file, from GNU gettext.
29718         * lib/javaexec.h: New file, from GNU gettext.
29719         * lib/javaexec.c: New file, from GNU gettext.
29720
29721 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29722
29723         * modules/lchown (Depends-on): Remove lchown.h
29724
29725 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29726
29727         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
29728         must be defined if the header file was not found, in order
29729         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
29730
29731 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29732
29733         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
29734         initializers for struct pentry_state.
29735         (__argp_error): Check return value of __asprintf
29736         (__argp_failure): Translate error message
29737
29738         * lib/argp-parse.c: Removed braces around the expansion of N_()
29739
29740 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
29741
29742         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
29743         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
29744         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
29745         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
29746         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
29747         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
29748         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
29749         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
29750         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
29751         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
29752         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
29753         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
29754         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
29755         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
29756         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
29757         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
29758         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
29759         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
29760         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
29761         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
29762         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
29763         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
29764         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
29765         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
29766         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
29767         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
29768         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
29769         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
29770         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
29771         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
29772         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
29773         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
29774         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
29775         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
29776         xstrtol.m4, xstrtoumax.m4, yesno.m4:
29777         Use an all-permissive copyright notice, recommended by RMS.
29778
29779 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
29780
29781         * modules/chdir-long (Depends-on): Remove mempcpy.
29782
29783 2005-01-21  Jim Meyering  <jim@meyering.net>
29784
29785         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
29786         same value as for Solaris 9.
29787
29788         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
29789         component length.  This included changing the parameter to be
29790         of type `char *' rather than `char const *'.
29791         * lib/chdir-long.h (chdir_long): Update prototype.
29792
29793         * lib/openat.c (fdopendir, fstatat): New functions.
29794         * lib/openat.h: Include headers required for use of DIR and struct
29795         stat.
29796         [AT_SYMLINK_NOFOLLOW]: Define.
29797         (fdopendir, fstatat): Add prototypes.
29798
29799 2005-01-21  Bruno Haible  <bruno@clisp.org>
29800
29801         * modules/classpath: New file.
29802         * MODULES.html.sh (Java): Add classpath.
29803
29804 2005-01-21  Bruno Haible  <bruno@clisp.org>
29805
29806         * lib/classpath.h: New file, from GNU gettext.
29807         * lib/classpath.c: New file, from GNU gettext.
29808
29809 2005-01-20  Simon Josefsson  <jas@extundo.com>
29810
29811         * modules/version-etc-fsf: New file.
29812
29813 2005-01-20  Simon Josefsson  <jas@extundo.com>
29814
29815         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
29816         * lib/version-etc.c: Remove version_etc_copyright.
29817         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
29818         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
29819
29820 2005-01-20  Simon Josefsson  <jas@extundo.com>
29821
29822         * lib/base64.h (isbase64): Add.
29823
29824         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
29825         using a unsigned prototype, don't inline.
29826         (base64_decode): Use it.
29827
29828 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
29829
29830         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
29831         it.
29832
29833 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
29834
29835         * lib/save-cwd.c (save_cwd): Remove code to support the case
29836         where fchdir is missing or flaky.
29837
29838 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
29839
29840         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
29841
29842 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
29843
29844         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
29845         AC_LIBSOURCES now does this.
29846         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
29847         with new ullong_max module.
29848
29849 2005-01-19  Bruno Haible  <bruno@clisp.org>
29850
29851         * modules/sh-quote: New file.
29852         * MODULES.html.sh (Executing programs): Add sh-quote.
29853
29854 2005-01-19  Bruno Haible  <bruno@clisp.org>
29855
29856         * lib/sh-quote.h: New file, from GNU gettext.
29857         * lib/sh-quote.c: New file, from GNU gettext.
29858
29859 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
29860
29861         Merge from coreutils.
29862         * m4/ullong_max.m4: New file.
29863         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
29864         (gl_MACROS): Assume localeconv exists.
29865
29866 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
29867
29868         Merge changes from coreutils, as described below in several
29869         changelogs dated today.
29870
29871         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
29872         (O_DIRECTORY): Remove; not needed here, since "." must be
29873         a directory.  All uses removed.
29874         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
29875         universal on Suns, and we also need to test for IRIX.
29876         Revamp code to use 'if' rather than '#if'.
29877         Avoid unnecessary comparison of cwd->desc to 0.
29878
29879         * lib/utimens.c (futimens): Robustify the previous patch, by checking
29880         for known valid error numbers rather than observed invalid ones.
29881
29882 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
29883
29884         * modules/ullong_max: New file.
29885
29886         * modules/chdir-long, modules/openat: New files.
29887         * modules/save-cwd (Depends-on): Depend on chdir-long.
29888         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
29889
29890 2005-01-18  Jim Meyering  <jim@meyering.net>
29891
29892         Merge from coreutils.
29893         * m4/chdir-long.m4, m4/openat.m4: New files.
29894         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
29895         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
29896         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
29897         is sane and DOES follow symlinks.  Besides, testing 20 different
29898         systems found no broken chown implementations.
29899         Prompted by a change in rsync's copy of this macro.
29900         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
29901
29902         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
29903
29904         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
29905         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
29906         NULL-means-set-to-current-time semantics.
29907         Remove temporary file immediately, rather than waiting
29908         for configure's at-exit trap code to do it.
29909
29910 2005-01-18  Jim Meyering  <jim@meyering.net>
29911
29912         * lib/version-etc.c (version_etc_copyright): Update copyright date.
29913
29914         * lib/utimens.c (futimens): Account for the fact that futimes
29915         can also fail with errno == ENOSYS or errno == ENOENT.
29916         Patch from Dmitry V. Levin.
29917
29918         Change the name of the robust chdir function from chdir to chdir_long.
29919         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
29920         (restore_cwd): Use chdir_long, not chdir.
29921         * lib/chdir-long.c: Renamed from chdir.c.
29922         * lib/chdir-long.h: Renamed from chdir.h.
29923         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
29924         Hurd.
29925
29926 2005-01-18  Bruno Haible  <bruno@clisp.org>
29927
29928         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
29929         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
29930         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
29931         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
29932         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
29933         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
29934         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
29935         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
29936         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
29937         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
29938         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
29939         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
29940         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
29941         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
29942         Use an all-permissive copyright notice, recommended by RMS.
29943
29944 2005-01-18  Bob Proulx  <bob@proulx.com>
29945
29946         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
29947         simplify offsetof() macro construct to avoid compile failure with
29948         native HP-UX 11.0 ANSI C compiler.
29949
29950 2005-01-17  Bruno Haible  <bruno@clisp.org>
29951
29952         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
29953         redundant because stpncpy.m4 takes care of it.
29954
29955 2005-01-17  Bruno Haible  <bruno@clisp.org>
29956
29957         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
29958
29959 2005-01-17  Bruno Haible  <bruno@clisp.org>
29960
29961         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
29962         used.
29963
29964 2005-01-17  Bruno Haible  <bruno@clisp.org>
29965
29966         * lib/fwriteerror.h (fwriteerror): Change specification to include
29967         fclose.
29968         * lib/fwriteerror.c: Include <stdbool.h>.
29969         (fwriteerror): At the end, close the file stream. Record whether
29970         stdout was already closed.
29971
29972 2005-01-17  Bruno Haible  <bruno@clisp.org>
29973
29974         * lib/execute.c (environ): Declare if needed.
29975         * lib/pipe.c (environ): Likewise.
29976         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
29977
29978 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29979
29980         * modules/argp: Depend on vsnprintf
29981
29982 2005-01-10  Jim Meyering  <jim@meyering.net>
29983
29984         * modules/closeout (Depends-on): Add atexit.
29985
29986 2005-01-06  Bruno Haible  <bruno@clisp.org>
29987
29988         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
29989
29990 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
29991
29992         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
29993         definitions to be after all include files, to avoid collisions.
29994         Problem reported by Bob Proulx.
29995
29996 2005-01-04  Jim Meyering  <jim@meyering.net>
29997
29998         Changes imported from coreutils.
29999         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
30000         as the mkstemp template, use a temporary directory and an
30001         8.3-friendly template to avoid trouble on systems like DJGPP.
30002         Reported by Juan M. Guerrero via Stepan Kasal.
30003         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
30004         close. Remove the temporary directory right away, rather than waiting
30005         for configure's at-exit trap code to do it.
30006         Suggestion from Stepan Kasal.
30007
30008 2005-01-01  Simon Josefsson  <jas@extundo.com>
30009
30010         * gnulib-tool: Print #include directives when --import'ing.
30011
30012 2004-12-28  Simon Josefsson  <jas@extundo.com>
30013
30014         * tests/test-base64.c: Include required header files.  Remove
30015         unused variables.
30016
30017 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
30018
30019         * modules/error (Depends-on): Remove gettext.
30020
30021 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
30022
30023         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
30024         not needed.  This removes a dependency on the gettext module.
30025         [defined _LIBC]: Do not include <libintl.h>; not needed.
30026
30027 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
30028
30029         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
30030         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
30031
30032 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
30033
30034         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
30035         HAVE_DECL_STRTOLD.
30036
30037 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
30038
30039         * modules/getdate (Depends-on): Remove alloca-opt.
30040
30041 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
30042
30043         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
30044
30045 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
30046
30047         * lib/argp-parse.c: Include <stddef.h>.
30048         (alignof, alignto): New macros.
30049         (parser_init): Don't assume that void * is aligned sufficiently
30050         for struct option.
30051
30052         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
30053         need to extend the stack.
30054         (YYINITDEPTH): New macro, so that the initial stack isn't overly
30055         large.
30056
30057 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30058
30059         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
30060
30061 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
30062
30063         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
30064         (2004-10-24) change.  Apparently this was a false alarm.
30065
30066         * modules/getdate: Depend on alloca-opt, not alloca.
30067
30068 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
30069
30070         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
30071         Remove now-obsolete comment about AIX.
30072         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
30073         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
30074         (YYMAXDEPTH): New macro.
30075
30076 2004-12-18  Simon Josefsson  <jas@extundo.com>
30077
30078         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
30079
30080 2004-12-18  Bruno Haible  <bruno@clisp.org>
30081
30082         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
30083
30084 2004-12-18  Bruno Haible  <bruno@clisp.org>
30085
30086         * lib/fatal-signal.c (fatal_signals): Make non-const.
30087         (init_fatal_signals): New function.
30088         (uninstall_handlers, install_handlers): Ignore signals that were set to
30089         SIG_IGN.
30090         (at_fatal_signal): Call init_fatal_signals.
30091         (init_fatal_signal_set): Likewise. Ignore signals that were set to
30092         SIG_IGN.
30093         Reported by Paul Eggert.
30094
30095 2004-12-18  Bruno Haible  <bruno@clisp.org>
30096
30097         * doc/alloca.texi: New file.
30098         * doc/alloca-opt.texi: New file.
30099
30100 2004-12-17  Jim Meyering  <jim@meyering.net>
30101
30102         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
30103         Otherwise, install-sh could exit with improper exit status when
30104         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
30105
30106 2004-12-16  Simon Josefsson  <jas@extundo.com>
30107
30108         * tests/test-base64.c: Add license.
30109
30110 2004-12-15  Stepan Kasal  <address@hidden>
30111
30112         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
30113
30114 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
30115
30116         * modules/getcwd (Files): Add m4/d-ino.m4.
30117         Suggested by Mark D. Baushke.
30118
30119 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
30120
30121         * lib/getdate.y (textint): New member "negative".
30122         (time_zone_hhmm): New function.
30123         Expect 14 shift-reduce conflicts, not 13.
30124         (o_colon_minutes): New rule.
30125         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
30126         (yylex): Set the "negative" member of signed numbers.
30127
30128 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
30129
30130         * doc/getdate.texi (Time of day items, Time zone items):
30131         Describe new formats +00:00, UTC+00:00.
30132
30133 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
30134
30135         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
30136         spurious "-l"s.  Problem reported by Stepan Kasal.
30137
30138 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
30139
30140         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
30141         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
30142
30143 2004-12-04  Simon Josefsson  <jas@extundo.com>
30144
30145         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
30146         Vandoorselaere <yoann@prelude-ids.org>.
30147
30148 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
30149
30150         Changes imported from coreutils.
30151         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
30152         exist.
30153         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
30154
30155 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
30156
30157         Changes imported from coreutils.
30158         * lib/hard-locale.c: Assume <locale.h> exists.
30159         Include "strdup.h".
30160         (GLIBC_VERSION): New macro.
30161         (hard_locale): Assume setlocale exists.
30162         Rewrite to avoid #ifdef.
30163         Use strdup rather than malloc + strcpy.
30164         * lib/human.c: Assume <locale.h> exists.
30165         (human_readable): Assume localeconv exists.
30166
30167 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
30168
30169         * modules/hard-locale (Depends-on): Add strdup.
30170
30171 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
30172
30173         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
30174         convert T2, not T.  (Imported from libc.)
30175
30176 2004-11-30  Simon Josefsson  <jas@extundo.com>
30177
30178         * modules/restrict (License): Change to LGPL.
30179
30180 2004-11-30  Simon Josefsson  <jas@extundo.com>
30181
30182         * m4/restrict.m4: Add copyright and copying conditions.
30183
30184 2004-11-30  Simon Josefsson  <jas@extundo.com>
30185
30186         * m4/base64.m4: New file.
30187
30188 2004-11-30  Simon Josefsson  <jas@extundo.com>
30189
30190         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
30191         base64.
30192
30193         * tests/test-base64.c: New file.
30194
30195         * modules/base64: New file.
30196
30197 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
30198
30199         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
30200         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
30201
30202         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
30203
30204 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
30205
30206         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
30207         (__getcwd.c): Don't restore errno; glibc doesn't.
30208         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
30209         first, falling back to our code only if its results look suspicious.
30210         Ensure that the resulting buffer is only as large as necessary.
30211
30212         * lib/readutmp.c: Include readutmp.h first.
30213         Include <errno.h>, since readutmp.h no longer does that.
30214         * lib/readutmp.h: Don't include <errno.h>,
30215         <sys/param.h>, <time.h>; not needed to establish interface.
30216         (errno): Remove decl.
30217         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
30218         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
30219         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
30220
30221 2004-11-28  Simon Josefsson  <jas@extundo.com>
30222
30223         * lib/base64.h, base64.c: New file.
30224
30225 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
30226
30227         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
30228
30229 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
30230
30231         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
30232         (Depends-on): Remove pathmax, same.  Add mempcpy.
30233         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
30234         (Makefile.am): Append getcwd.h to lib_SOURCES.
30235         (Include): Add getcwd.h.
30236         (Maintainer): Change from Jim Meyering to "all, glibc",
30237         since getdate now uses intended-for-glibc code.
30238         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
30239         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
30240
30241 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
30242
30243         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
30244         HP's ANSI C compiler.
30245         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
30246         Declaring int functions causes warnings on some modern systems and
30247         shouldn't be needed to compile on ancient ones.
30248         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
30249         defined.
30250
30251         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
30252         with the following changes.
30253         (__set_errno): Parenthesize properly.
30254         Include <stdbool.h>.
30255         (MIN, MAX, MATCHING_INO): New macros.
30256         (__getcwd): Define with prototype, not K&R form.
30257         Use heuristics to allocate default buffer on stack if possible.
30258         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
30259         behavior, and to avoid the PATH_MAX limit when computing
30260         ../../../../...
30261         Use MATCHING_INO to compare inode number to file.
30262         Check for arithmetic overflow in size calculations.
30263         Fix bug in reallocation of dot array that caused getcwd to fail
30264         on directories nested deeper than 75.
30265         Be more careful about saving errno on error.
30266         Do not use realloc; use only free+malloc, as this is a bit
30267         more flexible and avoids a needless copy operation.
30268         Do not inspect st_dev and st_ino for symbolic links; POSIX
30269         doesn't specify the latter.
30270         Check for closedir errors.
30271         Avoid needless casts.
30272         Use "#ifdef weak_alias" around weak_alias, to be like other
30273         glibc code.
30274         The following changes to getcwd.c have effect only when used in
30275         gnulib; they have no effect inside glibc proper.
30276         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
30277         as alloca isn't used.
30278         (alloca, __alloca): Likewise.
30279         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
30280         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
30281         unconditionally, as gnulib assumes C89 or better.
30282         Do not include <sys/param.h>.
30283         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
30284         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
30285         better.
30286         (NULL) [!defined NULL]: Remove; we assume C89 or better.
30287         Include <dirent.h> in a way that is compatible with modern Autoconf.
30288         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
30289         New macros, if not already defined.
30290         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
30291         Use "_LIBC", not "defined _LIBC", for consistency.
30292         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
30293         a mempcpy module.
30294         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
30295         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
30296         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
30297         credit only to Jim Meyering and adjust the copyright dates.
30298         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
30299         <stdlib.h>, <unistd.h>, "pathmax.h".
30300         Instead, include "xgetcwd.h" (first) and "getcwd.h".
30301         (INITIAL_BUFFER_SIZE): Remove.
30302         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
30303
30304 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
30305
30306         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
30307         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
30308         Use the _ONCE methods, for efficiency.
30309         Check for fcntl.h.  In test program, include <errno.h>
30310         and <fcntl.h> if available.  Remove old K&R cruft from
30311         test program.  Check for common errors in GNU/Linux,
30312         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
30313         don't do AC_LIBOBJ, as that's getcwd.m4's job.
30314         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
30315         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
30316         name accordingly.
30317         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
30318         accommodate new getcwd.c.
30319         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
30320         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
30321         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
30322         that's all we need now.
30323
30324 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30325
30326         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
30327         argp-parse.c depends on getopt internals, that means we should
30328         always use our getopt, to be on the safe side.
30329         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
30330         order not to spoil the result of an eventual previous invocation
30331         of gl_GETOPT_SUBSTITUTE.
30332
30333 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30334
30335         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
30336         redefinition warnings. To avoid them, include the defines
30337         in `#if !defined __need_getopt ... #endif'. The only place
30338         where __getopt_argv_const is used is in definitions
30339         of getopt_long and getopt_long_only below, which are as well
30340         protected by `#ifndef __need_getopt'.
30341         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
30342         __need_getopt after including <stdio.h> and <unistd.h> These
30343         headers might have defined it.
30344
30345 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
30346
30347         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
30348
30349 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
30350
30351         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
30352         (futimens): New function, which uses futimes if available.
30353         (futimens, utimens): Support timespec==NULL, with same semantics
30354         as utime and utimens.
30355         * lib/utimens.h (futimens): New decl.
30356
30357 2004-11-23  Jim Meyering  <jim@meyering.net>
30358
30359         * lib/getopt_.h: Remove trailing blanks.
30360
30361 2004-11-23  Jim Meyering  <jim@meyering.net>
30362
30363         * lib/__fpending.c: Add comment.
30364
30365 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
30366
30367         * modules/canonicalize (Depends-on): Add xreadlink.
30368         Problem reported by James Youngman.
30369
30370 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
30371
30372         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
30373         New macros.
30374         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
30375         optopt): Use them instead of invoking ## directly; otherwise, the
30376         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
30377
30378 2004-11-19  Bruno Haible  <bruno@clisp.org>
30379
30380         * lib/strtok_r.c: Move comments from here...
30381         * lib/strtok_r.h: ... to here.
30382
30383 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
30384
30385         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
30386         implementations that mishandle size_t overflow.
30387
30388 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
30389
30390         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
30391         might fail.  Problem reported by Yoann Vandoorselaere.
30392         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
30393         implementations that mishandle size_t overflow.
30394
30395 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30396
30397         * modules/canon-host (Depends-on): Add strdup.
30398
30399 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30400
30401         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
30402
30403 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30404
30405         * lib/canon-host.c: Include "strdup.h".
30406         (canon_host): Use getaddrinfo if available, so that IPv6 works.
30407         Use strdup instead of malloc/strcpy to duplicate strings.
30408
30409         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
30410         (human_space_before_unit): New constant.
30411         * lib/human.c (human_readable): Support it.
30412
30413         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
30414         (xgetcwd): Set errno correctly when failing.
30415         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
30416         the failure is actually due to a PATH_MAX problem.
30417
30418         Further getopt changes to make it more likely that glibc will
30419         buy the changes back.
30420         * lib/getopt.c (POSIXLY_CORRECT): New constant.
30421         (getopt): Use it, so to preserve glibc semantic
30422         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
30423         when compiling for libc.
30424         * lib/getopt_.h (__getopt_argv_const): Bring it back.
30425         (getopt_long, getopt_long_only): Use it.
30426
30427         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
30428         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
30429         (getopt): Argv is now char * const *, as per standard.
30430         (_getopt_internal_r, _getopt_internal): Argv is now char **,
30431         not char *__getopt_argv_const *.
30432         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
30433         _getopt_long_only_r): Likewise.
30434         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
30435         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
30436         _getopt_long_r, _getopt_long_only_r): Likewise.
30437         * lib/getopt_.h (__getopt_argv_const): Remove.
30438         (getopt): Argv is now char * const *, as per standard.
30439
30440         * lib/getdate.y (tORDINAL): New token.
30441         (day, relunit): Allow it for relative times.
30442         (relative_time_table): Use tORDINAL for ordinals.
30443
30444 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30445
30446         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
30447         Document that "second" isn't allowed as an ordinal number.
30448
30449 2004-11-16  Jim Meyering  <jim@meyering.net>
30450
30451         * modules/closeout (Depends-on): Add fpending.
30452
30453 2004-11-15  Jim Meyering  <jim@meyering.net>
30454
30455         * lib/closeout.c: Include "__fpending.h" once again.
30456         Include <stdbool.h>.
30457         (close_stdout): Don't fail just because stdout was closed initially,
30458         since some programs don't write to stdout in the normal course of
30459         operation (other than --version and --help), and we don't want this
30460         function to make e.g. `touch file >&-' fail.
30461         But do fail if it was closed and someone has tried to write to it.
30462         E.g., `printf foo >&-' must fail.
30463
30464 2004-11-13  Jim Meyering  <jim@meyering.net>
30465
30466         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
30467
30468 2004-11-12  Simon Josefsson  <jas@extundo.com>
30469
30470         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
30471         small doc fix is still pending.
30472
30473 2004-11-11  Simon Josefsson  <jas@extundo.com>
30474
30475         * modules/strtok_r: New file.
30476
30477         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
30478         strtok_r.
30479
30480 2004-11-11  Simon Josefsson  <jas@extundo.com>
30481
30482         * m4/strtok_r.m4: New file.
30483
30484         * m4/getopt.m4: Replace opterr.
30485
30486 2004-11-11  Simon Josefsson  <jas@extundo.com>
30487
30488         * lib/strtok_r.h, strtok_r.c: New file.
30489
30490 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
30491
30492         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
30493         of replacing opterr, getopt, etc.  This should handle the
30494         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
30495
30496 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
30497
30498         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
30499         we can stop lying to compilers about the constness of argv when we
30500         are compiled outside glibc.
30501         (getopt, getopt_long, getopt_long_only): Use it.
30502         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
30503         _getopt_internal, getopt): Likewise.
30504         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
30505         _getopt_long_only_r): Likewise.
30506         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
30507         _getopt_long_r, _getopt_long_only_r): Likewise.
30508
30509         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
30510         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
30511         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
30512         the other external symbols.
30513         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
30514         declaration, since the above renaming now works around collisions.
30515
30516 2004-11-11  Jim Meyering  <jim@meyering.net>
30517
30518         * lib/linebreak.c: Remove trailing blanks.
30519         * lib/alloca_.h: Likewise.
30520         * lib/acosl.c: Likewise.
30521         * lib/euidaccess.c: Likewise.
30522         * lib/allocsa.h: Likewise.
30523
30524 2004-11-10  Simon Josefsson  <jas@extundo.com>
30525
30526         * m4/getaddrinfo.m4: New file.
30527
30528 2004-11-10  Simon Josefsson  <jas@extundo.com>
30529
30530         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
30531
30532 2004-11-10  Simon Josefsson  <jas@extundo.com>
30533
30534         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
30535         getaddrinfo.
30536
30537         * modules/getaddrinfo: New file.
30538
30539 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
30540
30541         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
30542
30543 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
30544
30545         * lib/mktime.c (SHR): New macro, which is a portable
30546         substitute for >> that should work even on Crays.
30547         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
30548         Problem reported by Mark D. Baushke in
30549         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
30550         * lib/getdate.y (SHR): Likewise.
30551         (tm_diff): Use it.
30552         * lib/strftime.c (SHR): Likewise.
30553         (tm_diff): Use it.
30554         * lib/quotearg.c (struct quoting_options): Use unsigned int for
30555         quote_these_too, so that right shifts are well defined.  All uses
30556         changed.
30557
30558 2004-11-10  Jim Meyering  <jim@meyering.net>
30559
30560         Ensure that no close failure goes unreported.
30561         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
30562         return early when it seems there's nothing to flush.
30563         Don't include __fpending.h.
30564
30565 2004-11-10  Jim Meyering  <jim@meyering.net>
30566
30567         * modules/closeout (Depends-on): Remove fpending.
30568
30569 2004-11-10  Jim Meyering  <jim@meyering.net>
30570
30571         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
30572
30573 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
30574
30575         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
30576         gl_FUNC_STRFTIME.
30577         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
30578         and AC_REQUIRE when possible, to avoid duplicate checks.
30579         Check for <wchar.h>.
30580
30581 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
30582
30583         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
30584
30585 2004-11-09  Bruno Haible  <bruno@clisp.org>
30586
30587         * m4/sockpfaf.m4: New file.
30588
30589 2004-11-05  Bruno Haible  <bruno@clisp.org>
30590
30591         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
30592         Reported by Mark D. Baushke <mdb@cvshome.org>.
30593
30594 2004-11-04  Bruno Haible  <bruno@clisp.org>
30595
30596         2004-09-11  Bruno Haible  <bruno@clisp.org>
30597                 * allocsa.valgrind: New file.
30598         2004-02-06  Bruno Haible  <bruno@clisp.org>
30599                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
30600                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
30601                 Reported by Christopher Seip <chris.seip@hp.com>.
30602
30603 2004-11-04  Bruno Haible  <bruno@clisp.org>
30604
30605         * modules/allocsa (Files): Add lib/allocsa.valgrind.
30606         (Makefile.am): Distribute it.
30607
30608 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
30609
30610         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
30611         with errno == ERANGE if the buffer is too small.
30612         Problem reported by Mark D. Baushke.
30613
30614 2004-11-03  Albert Chin  <china@thewrittenword.com>
30615             Paul Eggert  <eggert@cs.ucla.edu>
30616
30617         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
30618         equivalent, substitute $ac_type for equivalent type rather than
30619         blindly using uint32_t *always* which won't work if uint32_t is not
30620         available.  Define _UINT32_T to work around typedef of uint32_t if
30621         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
30622         2.5.1.
30623
30624 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
30625
30626         * m4/jm-macros.m4: Sync from coreutils.
30627         (gl_MACROS): Check for mbrlen, for pathchk.
30628         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
30629
30630 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
30631
30632         * lib/xreadlink.c (MAXSIZE): New macro.
30633         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
30634         size does not exceed MAXSIZE.  Avoid cast.
30635         As suggested by Mark D. Baushke in
30636         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
30637         if readlink fails with buffer size just under MAXSIZE, try again
30638         with MAXSIZE.
30639
30640 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
30641
30642         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
30643
30644 2004-11-02  Derek R. Price  <derek@ximbiot.com>
30645         and  Paul Eggert  <eggert@cs.ucla.edu>
30646
30647         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
30648         (get_date): Overparenthesize to avoid GCC warning.
30649
30650 2004-11-02  Bruno Haible  <bruno@clisp.org>
30651
30652         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
30653         returns void.
30654
30655 2004-11-02  Bruno Haible  <bruno@clisp.org>
30656
30657         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
30658         function returns void.
30659
30660 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
30661
30662         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
30663         fflush_unlocked, flockfile, funlockfile, funlockfile,
30664         fputs_unlocked, putc_unlocked.
30665
30666 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
30667
30668         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
30669         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
30670         already declared.
30671
30672 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
30673
30674         * modules/getdate (Files): Add doc/getdate.texi.
30675         (Depends-on): Add setenv, xalloc.
30676
30677 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
30678
30679         * lib/getdate.y: Add support for TZ="foo" within a date string.
30680         Fix some bugs near time_t boundaries.  Reject dates with
30681         out-of-range components, e.g., "Sept 31".
30682         Include <stdlib.h>, "setenv.h", "xalloc.h".
30683         (ISDIGIT_LOCALE): Remove; unused.
30684         Note that the TZ and time functions used here are not reentrant.
30685         (mktime_ok, get_tz): New functions.
30686         (TZBUFSIZE): New constant.
30687         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
30688         This requires that we sometimes generate our own TZ="XXX..." setting.
30689
30690 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
30691
30692         * doc/getdate.texi: New file, from coreutils with modifications for
30693         the new TZ parsing.
30694
30695 2004-10-27  Derek R. Price  <derek@ximbiot.com>
30696
30697         * lib/mktime.c (not_equal_tm): Remove redundant check.
30698
30699 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30700
30701         * modules/regex (lib_SOURCES): Add regex.c.
30702         Reported by James Youngman in
30703         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
30704
30705 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30706
30707         * lib/getdate.y: Use Bison 1.875 features, and some minor
30708         code cleanups.  This change does not affect semantics.
30709         Don't include <stdlib.h>; no longer needed.
30710         Don't include unlocked-io.h; only the "#if TEST" code uses
30711         stdio, and performance isn't crucial there.
30712         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
30713         Bison 1.875 features as described below.
30714         All uses of "PC." replaced by "pc->".
30715         (YYSTYPE): Add a forward declaration.
30716         (yylex, yyerror): Use full prototypes in forward decls.
30717         Use "%pure-parser" rather than obsolescent "%pure_parser".
30718         Use %parse-param and %lex-param instead of obsolescent
30719         YYPARSE_PARAM and YYLEX_PARAM.
30720         (meridian_table, month_and_day_table, time_units_table,
30721         relative_time_table, time_zone_table, military_table,
30722         lookup_zone, lookup_word, get_date):
30723         Use NULL instead of 0 where appropriate.
30724         (to_hour): Avoid abort (), to avoid a dependency on
30725         stdlib.h.
30726         (yyerror, yylex): Now accepts parser_control * arg.
30727         (main) [TEST]: Use '\0' rather than 0 for char.
30728
30729 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
30730
30731         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
30732
30733 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
30734
30735         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
30736         It's now the caller's responsibility to handle the case where
30737         !HAVE_GETPAGESIZE && !defined getpagesize.
30738
30739         * lib/mktime.c (leapyear): Arg is long int, not int.
30740
30741 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
30742
30743         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
30744
30745 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
30746
30747         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
30748         missing.  Problem reported by James Youngman.
30749
30750 2004-10-16  Simon Josefsson  <jas@extundo.com>
30751
30752         * gnulib-tool: Fix comments.  Fix parse problem.
30753         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
30754
30755 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
30756
30757         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
30758         implementation of getopt_long.  Problem reported by Alexander Taler in:
30759         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
30760
30761 2004-10-15  Bruno Haible  <bruno@clisp.org>
30762
30763         * gnulib-tool: Untabify. Initialize supplied_libname.
30764         (func_usage): More homogenous output.
30765         (func_modules_transitive_closure, func_modules_to_filelist,
30766         func_emit_lib_Makefile_am): New functions.
30767         (func_import): New function, extracted from big case statement. Use
30768         func_get_license, func_modules_transitive_closure,
30769         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
30770         opt_lgpl. Don't use test -a, as it's not portable.
30771         (func_create_testdir): Use func_modules_transitive_closure,
30772         func_modules_to_filelist, func_emit_lib_Makefile_am.
30773
30774 2004-10-15  Bruno Haible  <bruno@clisp.org>
30775
30776         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
30777
30778 2004-10-15  Bruno Haible  <bruno@clisp.org>
30779
30780         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
30781         the portions belonging to each module.
30782         Suggested by Derek Robert Price <derek@ximbiot.com>.
30783
30784 2004-10-12  Simon Josefsson  <jas@extundo.com>
30785
30786         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
30787         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
30788         to real functions.
30789
30790 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30791
30792         * modules/vsnprintf: New file.
30793
30794 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30795
30796         * m4/vsnprintf.m4: New file.
30797
30798 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30799
30800         * lib/vsnprintf.h: New file.
30801         * lib/vsnprintf.c: New file.
30802
30803 2004-10-11  Bruno Haible  <bruno@clisp.org>
30804
30805         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
30806         vsnprintf.
30807
30808 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
30809
30810         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
30811
30812 2004-10-07  Bruno Haible  <bruno@clisp.org>
30813
30814         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
30815         fits into the provided buffer.
30816
30817 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
30818
30819         * lib/diacrit.c, diacrit.h: Add GPL notice.
30820
30821         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
30822         notice.
30823         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
30824         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
30825         This avoids a potential constant-folding bug.
30826
30827 2004-10-05  Bruno Haible  <bruno@clisp.org>
30828
30829         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
30830         for the declaration of strsep.
30831
30832 2004-10-05  Bruno Haible  <bruno@clisp.org>
30833
30834         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
30835
30836 2004-10-04  Simon Josefsson  <jas@extundo.com>
30837
30838         * modules/memmem: New file.
30839         * tests/test-memmem.c: New file.
30840         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
30841
30842 2004-10-04  Simon Josefsson  <jas@extundo.com>
30843
30844         * m4/memmem.m4: New file.
30845
30846 2004-10-04  Simon Josefsson  <jas@extundo.com>
30847
30848         * lib/memmem.h: New file.
30849         * lib/memmem.c: New file, taken from glibc.
30850
30851 2004-10-04  Simon Josefsson  <jas@extundo.com>
30852
30853         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
30854         '#ifdef USE_UNLOCKED_IO'.
30855
30856 2004-10-04  Simon Josefsson  <jas@extundo.com>
30857
30858         * config/srclist.txt: Add memmem from glibc.
30859
30860 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30861
30862         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
30863
30864         * modules/argmatch, modules/argp, modules/closeout, modules/error,
30865         modules/exclude, modules/getdate, modules/getline,
30866         modules/getndelim2, modules/getpass, modules/getpass-gnu,
30867         modules/getusershell, modules/linebuffer, modules/md5,
30868         modules/mountlist, modules/posixtm, modules/readtokens,
30869         modules/readutmp, modules/regex, modules/sha1,
30870         modules/version-etc, modules/yesno:
30871         Remove dependency on unlocked-io.
30872
30873 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30874
30875         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
30876
30877         * m4/unlocked-io.m4: Add copyright notice.
30878         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
30879
30880 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30881
30882         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
30883         * lib/xmalloc.c (xmemdup): Likewise.
30884         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
30885         XFREE): Remove these long-obsolescent macros.
30886         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
30887         * lib/xstrdup.c: Remove.
30888
30889         * lib/regex.c (re_comp): Cast gettext return value to char *,
30890         Problem reported by Martin Neitzel via Mark D. Baushke.
30891
30892 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30893
30894         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
30895         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
30896         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
30897         regex.c, sha1.c, version-etc.c, yesno.c:
30898         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
30899         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
30900         the includer's responsibility.
30901
30902         Sync from coreutils.
30903
30904         * lib/modechange.c (mode_compile): Don't decrement a pointer that
30905         points to the start of a string, as the C Standard says the
30906         resulting behavior is undefined.
30907
30908         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
30909         simple -> simple_backups, numbered_existing ->
30910         numbered_existing_backups, numbered -> numbered_backups
30911         to avoid shadowing problems.  All uses changed.
30912         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
30913         * lib/backupfile.c (check_extension, numbered_backup):
30914         Rename locals to avoid shadowing 'basename'.
30915         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
30916         once.
30917
30918         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
30919         * lib/.cvsignore: Add getopt.h.
30920
30921 2004-10-04  Bruno Haible  <bruno@clisp.org>
30922
30923         * modules/README: New file.
30924         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
30925         not a module.
30926
30927 2004-10-02  Jim Meyering  <jim@meyering.net>
30928
30929         * lib/dirfd.h, getpagesize.h: Add copyright notice.
30930
30931 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30932
30933         * modules/strsep: New file.
30934
30935 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30936
30937         * m4/strsep.m4: New file.
30938
30939 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30940
30941         * lib/strsep.h: New file.
30942         * lib/strsep.c: New file.
30943
30944 2004-10-01  Simon Josefsson  <jas@extundo.com>
30945
30946         * lib/snprintf.c (snprintf): Handle size==0.
30947
30948 2004-10-01  Simon Josefsson  <jas@extundo.com>
30949             Bruno Haible  <bruno@clisp.org>
30950
30951         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
30952         (snprintf): Declare 'args'.
30953
30954 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
30955
30956         * lib/snprintf.c: Remove comments as to why each header is needed.
30957
30958 2004-10-01  Bruno Haible  <bruno@clisp.org>
30959
30960         * MODULES.html.sh: Add strsep.
30961
30962 2004-09-30  Simon Josefsson  <jas@extundo.com>
30963
30964         * modules/snprintf: New file.
30965
30966 2004-09-30  Simon Josefsson  <jas@extundo.com>
30967
30968         * m4/snprintf.m4: New file.
30969
30970 2004-09-30  Simon Josefsson  <jas@extundo.com>
30971
30972         * lib/snprintf.h, lib/snprintf.c: New files.
30973
30974 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30975
30976         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
30977         (hol_entry_help): Never translate an empty string.
30978         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
30979         * lib/argp.h (OPTION_NO_TRANS): New option.
30980
30981 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
30982
30983         * modules/argp (Maintainer): Replace Simon Josefsson
30984         by Sergey Poznyakoff.
30985
30986 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
30987
30988         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
30989         changes merged back into glibc.
30990
30991 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
30992
30993         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
30994
30995 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
30996
30997         * lib/xvasprintf.c: Include xalloc.h.
30998         (xvasprintf): Use xalloc_die, not xmalloc_die.
30999
31000 2004-09-29  Bruno Haible  <bruno@clisp.org>
31001
31002         * modules/alloca-opt: New file, derived from modules/alloca.
31003         * modules/allocsa: Depend on alloca-opt instead of alloca.
31004         * modules/setenv: Likewise.
31005         * modules/vasnprintf: Likewise.
31006         * MODULES.html.sh: Add alloca-opt.
31007
31008 2004-09-28  Simon Josefsson  <jas@extundo.com>
31009
31010         * gnulib-tool: New parameter --lgpl, to asseert that modules are
31011         LGPL, and to replace license template from GPL to LGPL.
31012
31013 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
31014
31015         * modules/dummy: Change license to LGPL.
31016
31017 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
31018
31019         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
31020
31021 2004-09-24  Simon Josefsson  <jas@extundo.com>
31022
31023         * modules/minmax (License): Change from GPL to LGPL.
31024
31025 2004-09-23  Simon Josefsson  <jas@extundo.com>
31026
31027         * gnulib-tool (--import): Typo.
31028
31029 2004-09-23  Simon Josefsson  <jas@extundo.com>
31030
31031         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
31032
31033 2004-09-22  Bruno Haible  <bruno@clisp.org>
31034
31035         * modules/*: Add 'License' field.
31036         * gnulib-tool: Accept --extract-license option.
31037         (func_get_license): New function.
31038
31039 2004-09-21  Bruno Haible  <bruno@clisp.org>
31040
31041         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
31042         Reported by Simon Josefsson.
31043
31044 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
31045
31046         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
31047         gl_AC_TYPE_LONG_LONG.
31048
31049 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
31050
31051         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
31052
31053 2004-09-18  Simon Josefsson  <jas@extundo.com>
31054         and  Paul Eggert  <eggert@cs.ucla.edu>
31055
31056         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
31057         calls with autoreconf.  Define GL_LIB.
31058
31059 2004-09-14  Karl Berry  <karl@gnu.org>
31060
31061         * config/srclist.txt: unsync setenv.c, sigh.
31062
31063 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
31064
31065         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
31066         Problem reported by Bruno Haible in:
31067         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
31068
31069 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
31070
31071         * config/srclist.txt: Comment out argp-pvh.c.
31072
31073 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
31074
31075         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
31076         in case some system header has #define'd it.  Problem reported by
31077         Soeren D. Schulze in
31078         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
31079
31080 2004-09-09  Karl Berry  <karl@gnu.org>
31081
31082         * regex.[ch]: delete from the root.  These were supposed to be
31083                 synced with emacs cvs, but this has not happened for about
31084                 a year, and anyway nothing else uses emacs regex.[ch].
31085                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
31086                 lib/regex[.ch] is untouched.
31087
31088 2004-09-09  Bruno Haible  <bruno@clisp.org>
31089
31090         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
31091
31092 2004-09-09  Bruno Haible  <bruno@clisp.org>
31093
31094         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
31095         modifications.
31096         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
31097
31098 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
31099
31100         * modules/xvasprintf: New file.
31101         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
31102
31103 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
31104
31105         * lib/xvasprintf.h: New file.
31106         * lib/xvasprintf.c: New file.
31107         * lib/xasprintf.c: New file.
31108
31109 2004-09-08  Bruno Haible  <bruno@clisp.org>
31110
31111         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
31112
31113 2004-09-08  Bruno Haible  <bruno@clisp.org>
31114
31115         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
31116         length is > INT_MAX.
31117         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
31118         more.
31119
31120 2004-09-08  Bruno Haible  <bruno@clisp.org>
31121
31122         * lib/stdint_.h: New file, taken from GNU clisp.
31123
31124 2004-09-08  Bruno Haible  <bruno@clisp.org>
31125             Oskar Liljeblad  <oskar@osk.mine.nu>
31126
31127         * modules/stdint: New file.
31128         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
31129
31130 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
31131
31132         Import from coreutils.
31133         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
31134         strings on unbounded length.  alloca's performance benefits aren't
31135         that important here.
31136         (V_STRDUP): Remove.
31137         (parse_with_separator): New function, with most of the internals
31138         of the old parse_user_spec.  Allow user to omit both user and group,
31139         for compatibility with FreeBSD.
31140         Clone only the user name, not the entire spec.
31141         Do not set *uid, *gid unless entirely successful.
31142         Avoid memory leak in some failing cases.
31143         Fix regression for USER.GROUP reported by Dmitry V. Levin in
31144         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
31145         (parse_user_spec): Rewrite to use parse_with_separator.
31146
31147 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
31148
31149         * modules/userspec: Don't depend on alloca.
31150
31151 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
31152
31153         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
31154
31155 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
31156
31157         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
31158         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
31159         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
31160
31161 2004-08-16  Simon Josefsson  <jas@extundo.com>
31162
31163         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
31164         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
31165         Add --dry-run for --import.
31166         Let user provided command line parameters override configure.ac
31167         settings.
31168
31169 2004-08-12  Simon Josefsson  <jas@extundo.com>
31170
31171         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
31172         as discussed with Paul Eggert in threads rooted at
31173         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
31174         and
31175         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
31176         Before, the test was empty, and relied on ELIDE_CODE in source
31177         code.)
31178         (gl_PREREQ_GETOPT): New macro.
31179         (gl_GETOPT): Use them.
31180
31181 2004-08-12  Simon Josefsson  <jas@extundo.com>
31182
31183         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
31184         * lib/getopt_.h: Renamed from getopt.h.
31185
31186 2004-08-12  Simon Josefsson  <jas@extundo.com>
31187
31188         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
31189         Change default library name from libfoo to libgnu.
31190         Now, if you have a configure.ac that says:
31191                 gl_SOURCE_BASE(gl)
31192                 gl_M4_BASE(gl/m4)
31193                 gl_MODULES(error getopt etcetera)
31194                 gl_INIT
31195         you can import all you need by running:
31196                 ../gnulib/gnulib-tool --import
31197
31198         * modules/getopt (Files): Rename getopt.h to getopt_.h.
31199         (Makefile.am): Rewrite, use logic from argz.
31200         (Include): Use <getopt.h> instead of "getopt.h".
31201
31202 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
31203
31204         * modules/argp (Files): Add m4/unlocked-io.m4.
31205         (Depends-on): Add extensions.
31206
31207 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
31208
31209         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
31210         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
31211         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
31212         Check for program_invocation_name, program_invocation_short_name,
31213         flockfile, funlockfile, features.h, _getopt_long_only_r.
31214
31215 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
31216
31217         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
31218         its complicated substitute.
31219         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
31220         and program_invocation_name.
31221         (__argp_basename) [!_LIBC]: Remove; the only use was
31222         replaced by its body.
31223         (__argp_short_program_name): Change condition from
31224         !defined __argp_short_program_name to
31225         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
31226         to match argp-namefrob.h.
31227         (__argp_failure): Don't assume strerror_r returns char *.
31228         * lib/argp-parse.c (N_): Define unconditionally.
31229         (argp_default_options): Fill out initializers with 0 to avoid
31230         gcc warnings.
31231
31232 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
31233
31234         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
31235         getopt1.c.
31236
31237 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
31238
31239         Merge from coreutils.
31240
31241         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
31242
31243         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
31244         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
31245
31246 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
31247
31248         Merge from coreutils.
31249
31250         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
31251         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
31252         for Reliant Unix 5.43.
31253
31254         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
31255         (union fooround): Use uintmax_t, not long int.
31256         The rest is a merge from libc:
31257         [defined _LIBC]: Include <shlib-compat.h>.
31258         (_obstack) [defined _LIBC]: Remove after 2.3.4.
31259
31260         * lib/settime.c (settime): Recode to avoid warning with
31261         Sun Forte C 6U2.
31262
31263         * lib/strverscmp.c: Convert to UTF-8.
31264
31265 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
31266
31267         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
31268         m4/uintmax_t.m4.
31269
31270 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
31271
31272         * modules/xalloc-die: New file.
31273         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
31274
31275         * modules/md5 (Files): Add m4/uint32_t.m4.
31276         * modules/sha1: Renamed from modules/sha.
31277         (Files):
31278         Rename lib/sha.h to lib/sha1.h.
31279         Rename lib/sha.c to lib/sha1.c.
31280         Rename m4/sha.m4 to m4/sha1.m4.
31281         (lib_SOURCES): Likewise.
31282         (configure.ac): Rename gl_SHA to gl_SHA1.
31283         (Include): sha.h -> sha1.h.
31284
31285 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
31286
31287         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
31288         * m4/sha1.m4: Renamed from sha.m4.
31289         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
31290
31291 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
31292
31293         * lib/obstack.h (obstack_empty_p):
31294         Don't assume that chunk->contents is suitably aligned.
31295         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
31296         Likewise. Problem reported by Benno in
31297         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
31298
31299         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
31300         readable.  This could be improved further but it'd take some work.
31301
31302 2004-08-08  Simon Josefsson  <jas@extundo.com>
31303
31304         * modules/xgethostname (Depends-on): Remove exit and error (not
31305         used).
31306
31307         * modules/getpass-gnu: Add getpass.h.
31308         (Depends-on): Add stdbool.
31309         * modules/getpass: Add getpass.h.
31310
31311 2004-08-08  Simon Josefsson  <jas@extundo.com>
31312
31313         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
31314         Check getpass declaration.
31315
31316 2004-08-08  Simon Josefsson  <jas@extundo.com>
31317
31318         * lib/xgethostname.c: Don't include error.h (not used).
31319
31320         * lib/getpass.h: Add.
31321         * lib/getpass.c: Include getpass.h first.
31322
31323 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
31324
31325         * lib/xalloc-die.c: New file.
31326         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
31327         All uses removed.
31328         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
31329         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
31330         xalloc-die.c.
31331         (_, N_, xalloc_die): Move to xalloc-die.c.
31332         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
31333         so that we needn't mess with xalloc_msg_memory_exhausted.
31334
31335         * lib/sha1.h: Renamed from sha.h.
31336         (SHA1_H): Renamed from _SHA_H.
31337         (sha1_ctx): Renamed from sha_ctx.
31338         (sha1_init_ctx): Renamed from sha_init_ctx.
31339         (sha1_process_block): Renamed from sha_process_block.
31340         (sha1_process_bytes): Renamed from sha_process_bytes.
31341         (sha1_finish_ctx): Renamed from sha_finish_ctx.
31342         (sha1_read_ctx): Renamed from sha_read_ctx.
31343         (sha1_stream): Renamed from sha_stream.
31344         (sha1_buffer): Renamed from sha_buffer.
31345         * lib/sha1.c: Likewise; renamed from sha.c.
31346         Do not include <sys/types.h>.
31347         Include <stddef.h> rather than <stdlib.h>.
31348
31349 2004-08-08  Bruno Haible  <bruno@clisp.org>
31350
31351         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
31352         FILESYSTEM_PREFIX_LEN.
31353         * lib/progreloc.c: Likewise.
31354         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
31355
31356 2004-08-06  Simon Josefsson  <jas@extundo.com>
31357
31358         * modules/progname (Depends-on): Don't depend on stdbool.
31359
31360 2004-08-06  Simon Josefsson  <jas@extundo.com>
31361
31362         * modules/getsubopt: New file.
31363         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
31364         getsubopt.
31365
31366 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
31367
31368         More merge from coreutils.
31369
31370         * m4/utimens.m4, m4/utimecmp.m4: New files.
31371         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
31372         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
31373         prereq.m4, sha.m4: Import changes from coreutils.
31374
31375 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
31376
31377         More merge from coreutils.
31378         * modules/raise, modules/readtokens0, modules/utimens:
31379         * modules/utimecmp, module/xnanosleep: New files.
31380         * modules/strftime: Add lib/strftime.h.
31381         Change include from <time.h> to "strftime.h".
31382         * modules/yesno: Add lib/yesno.h.
31383         * modules/backupfile: Remove lib/addext.c.
31384         * modules/euidaccess: Add stat-macros.h.
31385         * modules/canonicalize, modules/euidaccess,
31386         modules/filemode, modules/lchown, modules/makepath,
31387         modules/rmdir, modules/stat: Likewise.
31388
31389 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
31390
31391         Merge from tar.
31392         * lib/argp-help.c (make_hol, hol_append): Don't assume that
31393         SIZE_MAX is a valid preprocessor constant.
31394         (__argp_basename): Change from "#ifndef _LIBC"
31395         to "#ifndef __argp_short_program_name", so that
31396         we don't compile these functions for tar.
31397
31398         More merges from coreutils.
31399         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
31400         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
31401         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
31402         * lib/addext.c: Remove; no longer needed.
31403         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
31404         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
31405         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
31406         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
31407         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
31408         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
31409         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
31410         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
31411         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
31412         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
31413         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
31414         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
31415         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
31416         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
31417         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
31418         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
31419         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
31420         Import changes from coreutils.
31421
31422 2004-08-05  Simon Josefsson  <jas@extundo.com>
31423
31424         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
31425
31426 2004-08-05  Simon Josefsson  <jas@extundo.com>
31427
31428         * m4/getsubopt.m4: New file.
31429
31430 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
31431
31432         Merge from coreutils.
31433
31434         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
31435         * m4/getcwd-path-max.m4: New files.
31436
31437         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
31438         FILESYSTEM_PREFIX_LEN ->
31439         FILE_SYSTEM_PREFIX_LEN.
31440         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
31441         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
31442         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
31443         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
31444
31445         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
31446         prerequisite modules now handle the DOS stuff.
31447         Don't check for unistd.h.
31448
31449 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
31450
31451         Merge from coreutils.
31452
31453         * lib/.gdb-history: Remove; this doesn't belong here.
31454
31455         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
31456         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
31457         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
31458         * lib/getcwd.c: New files.
31459
31460         * lib/dirname.h: Include <stdbool.h>.
31461         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
31462         for consistency with POSIX terminology.  All uses changed.
31463         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
31464         (strip_trailing_slashes): Use bool for booleans.
31465         * lib/stripslash.c (strip_trailing_slashes): Likewise.
31466
31467         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
31468         sometimes returns a positive errno value even when it succeeds.
31469         (print_errno_message) [!LIBC]: Fall back on strerror if
31470         __strerror_r fails.
31471
31472         * lib/path-concat.c (mempcpy): Don't define if a system header defines
31473         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
31474         (longest_relative_suffix): New function.
31475         (path_concat): Use it.  Assume first argument is not NULL.
31476         Port to DOS.  Omit redundant separators.
31477         Report an error instead of returning NULL.
31478         Use mempcpy instead of memcpy.
31479         (xpath_concat): Remove: not declared or used.
31480
31481         * lib/same.h: Include <stdbool.h>
31482         (same_name): Return bool, not int.
31483         * lib/same.c (same_name): Likewise.
31484         (errno): Don't declare; we assume C89 or better now.
31485
31486         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
31487         if not already defined.
31488
31489         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
31490         * lib/dup-safer.c (errno): Likewise.
31491
31492 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
31493
31494         Merge from coreutils.
31495         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
31496         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
31497         * modules/path-concat: Don't depend on strdup.
31498
31499 2004-08-03  Simon Josefsson  <jas@extundo.com>
31500
31501         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
31502         * lib/progname.h: Don't include stdbool.h.
31503
31504 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
31505
31506         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
31507         * MODULES.html.sh (func_all_modules): Remove fatal.
31508
31509 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
31510
31511         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
31512
31513 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
31514
31515         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
31516         working.
31517
31518 2004-08-02  Simon Josefsson  <jas@extundo.com>
31519
31520         * lib/getsubopt.h: New file, with comments from Bruno Haible.
31521         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
31522         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
31523
31524 2004-08-01  Simon Josefsson  <jas@extundo.com>
31525
31526         * lib/xgetdomainname.c: Include stdlib.h, for free().
31527
31528 2004-07-19  Bruno Haible  <bruno@clisp.org>
31529
31530         * MODULES.html.sh (func_all_modules): Add dummy.
31531
31532 2004-07-16  Simon Josefsson  <jas@extundo.com>
31533
31534         * modules/dummy: New file.
31535
31536 2004-07-16  Simon Josefsson  <jas@extundo.com>
31537
31538         * lib/dummy.c: New file.
31539
31540 2004-07-16  Bruno Haible  <bruno@clisp.org>
31541
31542         * lib/backupfile.h: Add extern "C" for C++.
31543         * lib/closeout.h: Likewise.
31544         * lib/copy-file.h: Likewise.
31545         * lib/findprog.h: Likewise.
31546         * lib/full-write.h: Likewise.
31547         * lib/pathname.h: Likewise.
31548         * lib/progname.h: Likewise.
31549         * lib/stpcpy.h: Likewise.
31550         * lib/stpncpy.h: Likewise.
31551         * lib/strcase.h: Likewise.
31552         * lib/strstr.h: Likewise.
31553         * lib/xalloc.h: Likewise.
31554
31555         * lib/mbswidth.h: Add extern "C" for C++.
31556         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
31557
31558 2004-07-13  Robert Millan  <robertmh@gnu.org>
31559
31560         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
31561
31562 2004-07-09  Simon Josefsson  <jas@extundo.com>
31563
31564         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
31565         failed without this.)
31566
31567 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
31568
31569         * modules/chown (Files): Add lib/fchown-stub.c, since
31570         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
31571
31572 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
31573
31574         * lib/fchown-stub.c: New file.
31575
31576 2004-06-24  Jim Meyering  <jim@meyering.net>
31577
31578         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
31579
31580 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31581
31582         * modules/argz: Omit "#include".
31583
31584         * MODULES.html.sh (func_all_modules): Add calloc, to match
31585         2004-06-01 addition of calloc module.
31586
31587 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31588
31589         * m4/argz.m4: New file, which is autoupdated from libtool.
31590
31591 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31592
31593         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
31594         libtool.
31595
31596 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31597
31598         * config/srclist-update: Don't insist on "USA." before the
31599         close-comment, as libtool omits the period and puts the */ on a
31600         separate line.
31601         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
31602         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
31603
31604 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
31605
31606         * modules/argz: New file.
31607         * MODULES.html.sh (func_all_modules): Add argz.
31608
31609 2004-06-12  Jim Meyering  <jim@meyering.net>
31610         and  Paul Eggert  <eggert@cs.ucla.edu>
31611
31612         * modules/hash (Files): Add lib/xalloc.h.
31613         * modules/pipe (Depends-on): Add wait-process.
31614         * modules/stat (Depends-on): Add xalloc.
31615         * modules/userspec (Files): Add lib/userspec.h.
31616         * modules/xstrto
31617
31618         Upgrade from gettext-0.13.
31619         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
31620         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
31621         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
31622
31623 2004-06-10  Jim Meyering  <jim@meyering.net>
31624
31625         * lib/calloc.c: New file.
31626
31627 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
31628
31629         * lib/getdate.y (yylex): Allow space between sign and number.
31630         Problem reported by Dan Jacobson.
31631
31632 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
31633
31634         Merge from coreutils CVS.
31635
31636         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
31637         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
31638         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
31639         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
31640         xstrtol.m4: Fix copyright date and/or serial number.
31641
31642         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
31643         See if we need an fchown replacement.
31644         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
31645         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
31646         and use the replacement function if we detect either defect.
31647
31648         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
31649         gl_UTIMECMP.
31650
31651 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
31652         and  Jim Meyering  <jim@meyering.net>
31653
31654         Merge from coreutils CVS.
31655
31656         * lib/stat-macros.h: New file, with contents from file-type.h
31657         and coreutils' system.h.
31658         * lib/file-type.c: Include "stat-macros.h".
31659         * lib/file-type.h (file_type): Move all macro definitions to new file,
31660         stat-macros.h.
31661
31662         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
31663         Wrap old code with this conditional.
31664         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
31665         function that does not dereference symlinks.
31666         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
31667
31668         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
31669         dependency problems.
31670         (xreadlink): Accept new arg SIZE, for efficiency.
31671         All decls and uses changed.
31672         * lib/xreadlink.h: Include <stddef.h>, for size_t.
31673
31674         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
31675         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
31676
31677         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
31678         sysexits.h.
31679
31680 2004-06-01  Jim Meyering  <jim@meyering.net>
31681
31682         * m4/calloc.m4: New file.
31683
31684 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
31685
31686         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
31687         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
31688         Also, fix a typo in a diagnostic.
31689
31690 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
31691
31692         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
31693         or AC_FUNC_REALLOC.
31694
31695 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
31696
31697         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
31698         macros to be defined.
31699         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
31700         the allocator returns NULL because the requested size is zero.
31701
31702 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
31703
31704         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
31705         var.  Add comment explaining why libc still defines it.  This
31706         merges the following patch from glibc:
31707         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
31708
31709 2004-05-20  Andreas Schwab  <schwab@suse.de>
31710
31711         * m4/free.m4: Replace free if it not known to work, not the other
31712         way round.
31713
31714 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31715
31716         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
31717         present in glibc since revision 1.1 of this file.
31718         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
31719         obstack_alignment_mask, obstack_alloc, obstack_base,
31720         obstack_blank, obstack_blank_fast, obstack_chunk_size,
31721         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
31722         obstack_grow0, obstack_init, obstack_int_grow,
31723         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
31724         obstack_next_free, obstack_object_size, obstack_ptr_grow,
31725         obstack_ptr_grow_fast, obstack_room): Remove declarations of
31726         nonexistent functions.
31727
31728 2004-05-18  Karl Berry  <karl@gnu.org>
31729
31730         * config/srclist.txt: break link for vasnprintf.c.
31731
31732 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
31733
31734         Port obstack to the AS/400, where pointers are 16 bytes wide and
31735         you cannot cast an integer to a valid pointer.  This patch is
31736         currently waiting to be integrated into glibc; see
31737         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
31738
31739         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
31740         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
31741         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
31742         (struct obstack): temp member is now a union of a pointer and
31743         an integer, instead of an integer.  All integer uses changed.
31744         This does not affect the physical layout of struct obstack,
31745         except on hosts (like the AS/400) where the size or alignment of
31746         void * is greater than that of ptrdiff_t.
31747         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
31748         __STDC__)]: Store temporary in pointer member of union, not
31749         integer member.
31750         * lib/obstack.c: Include <stddef.h>, for offsetof.
31751         (struct fooalign): Remove; it doesn't need a name.
31752         (union fooround): Change double to long double, and add void *.
31753         (DEFAULT_ALIGNMENT): Use offsetof to compute.
31754         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
31755         not a macro.  Hence the values are always int; so remove all
31756         casts-to-int in uses.
31757
31758 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
31759
31760         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
31761         we can get this patch merged into glibc.
31762
31763 2004-05-17  Derek R. Price  <derek@ximbiot.com>
31764             Paul Eggert  <eggert@cs.ucla.edu>
31765
31766         * m4/argp: Depend on alloca.
31767
31768 2004-05-17  Derek R. Price  <derek@ximbiot.com>
31769             Paul Eggert  <eggert@cs.ucla.edu>
31770
31771         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
31772         freecoding.
31773
31774 2004-05-17  Bruno Haible  <bruno@clisp.org>
31775
31776         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
31777         precision that consists of a '.' followed by an empty digit string.
31778         Patch by Tor Lillqvist <tml@iki.fi>.
31779
31780 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
31781
31782         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
31783         for backward compatibility with older code.  We need our own
31784         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
31785         it under some other name, and our alloca.h will define it.
31786
31787 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
31788             Derek Price  <derek@ximbiot.com>
31789
31790         * lib/alloca.c: Include <alloca.h>, to get our interface.
31791         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
31792         include <alloca.h> first.  Use C89 prototype for alloca; this
31793         requires including <stddef.h> for size_t.  Use extern "C" if C++.
31794         Use #elif for simplicity, since we can assume C89 now.
31795         Don't try to source the system alloca.h since it will not be found
31796         and to prevent recursively including its replacement.
31797         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
31798         * lib/regex.c: Likewise.
31799
31800 2004-05-16  Derek Price  <derek@ximbiot.com>
31801             Paul Eggert  <eggert@cs.ucla.edu>
31802
31803         getline cleanup.  This changes the getndelim2 API: both order of
31804         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
31805         no delimiter).
31806
31807         * lib/getline.c: Don't include stddef.h or stdio.h, since our
31808         interface does that.
31809         (getline): Always use getdelim, so that we don't have two
31810         copies of this code.
31811         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
31812         if available.
31813         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
31814         (GETNDELIM2_MAXIMUM): New macro.
31815         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
31816         instead of the old practice of delim2==0.  All callers changed.
31817         Return -1 on overflow, instead of returning junk.
31818         Do not set *linesize unless allocation succeeds.
31819         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
31820         that we include sys/types.h.
31821         * lib/getnline.h: Likewise.
31822         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
31823         (getndelim2): Reorder arguments.
31824         * lib/getnline.c (getnline, getndelim):
31825         Don't discard the NMAX argument.
31826         (getnline): Invoke getndelim, to avoid code duplication.
31827         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
31828         of (size_t) -1 by callers of the getnline family.
31829
31830 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
31831
31832         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
31833         Check for gettimeofday.
31834         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
31835         Check for settimeofday, stime.
31836
31837 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
31838
31839         * lib/nanosleep.c (suspended): Change its type from int to
31840         sig_atomic_t volatile.
31841         (first_call): Make it private to rpl_nanosleep, and have it
31842         be zero initially as that's a bit faster.
31843         (my_usleep): Round up fractional times instead of truncating them,
31844         as this is the usual meaning for 'sleep'.
31845
31846         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
31847         doesn't work.
31848         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
31849         (ENOSYS): Define if not defined.
31850         (settime): Fall back on stime if it exists and settimeofday fails.
31851         But don't bother with fallbacks if a method fails with errno == EPERM.
31852
31853 2004-05-11  Jim Meyering  <jim@meyering.net>
31854
31855         Prior to this change, the save_cwd caller required read access to the
31856         current directory on most systems (ones with the fchdir function).
31857
31858         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
31859         fails, try write-only, and finally, resort to using xgetcwd.
31860
31861 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
31862
31863         * lib/obstack.c, obstack.h: Import changes from libc.
31864
31865 2004-04-28  Bruno Haible  <bruno@clisp.org>
31866
31867         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
31868         also implicitly appends .exe to executables.
31869         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
31870         accepts Windows pathnames.
31871         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
31872         Treat Cygwin like Windows, since it now accepts Windows pathnames.
31873         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
31874         Treat Cygwin like Windows, since it now accepts Windows pathnames.
31875         Reported by Derek Robert Price <derek@ximbiot.com>.
31876
31877 2004-04-21  Karl Berry  <karl@gnu.org>
31878
31879         * config/srclist.txt (localcharset.c): break sync.
31880
31881 2004-04-20  Paul Eggert  <eggert@twinsun.com>
31882
31883         * m4/host-os.m4: Add a copyright notice.
31884
31885 2004-04-20  Jim Meyering  <jim@meyering.net>
31886
31887         Change UTILS_ to gl_ in AC_DEFINE'd names.
31888         Change utils_- and jm_-prefixed variables, too.
31889         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
31890         UTILS_FUNC_MKDIR_TRAILING_SLASH.
31891         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
31892
31893         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
31894         Don't emit trailing blanks.
31895         Also rename jm_-prefixed variables to have gl_ prefix.
31896
31897         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
31898         Also rename jm_-prefixed variables to have gl_ prefix.
31899
31900         * m4/jm-macros.m4: Reflect the renamings.
31901         * m4/prereq.m4: Likewise.
31902
31903 2004-04-20  Jim Meyering  <jim@meyering.net>
31904
31905         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
31906         memory.
31907
31908 2004-04-20  Jim Meyering  <jim@meyering.net>
31909             Bruno Haible  <bruno@clisp.org>
31910
31911         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
31912         memory when realloc fails.
31913
31914 2004-04-19  Jim Meyering  <jim@meyering.net>
31915
31916         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
31917         now that readutmp.c may call `free (0)'.
31918
31919 2004-04-19  Bruno Haible  <bruno@clisp.org>
31920
31921         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
31922         * m4/inttypes_h.m4: Likewise.
31923         * m4/stdint_h.m4: Likewise.
31924         * m4/intmax_t.m4: Likewise.
31925         * m4/uintmax_t.m4: Likewise.
31926
31927 2004-04-18  Jim Meyering  <jim@meyering.net>
31928
31929         * m4/prereq.m4: Don't forbid jm_ prefix.
31930
31931         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
31932         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
31933         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
31934         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
31935         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
31936         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
31937         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
31938         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
31939         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
31940         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
31941         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
31942         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
31943         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
31944         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
31945         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
31946         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
31947         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
31948         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
31949         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
31950
31951 2004-04-18  Jim Meyering  <jim@meyering.net>
31952
31953         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
31954         failure, don't leak memory and do call END_UTMP_ENT.
31955
31956 2004-04-16  Jim Meyering  <jim@meyering.net>
31957
31958         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
31959         coreutils' stat program.
31960         (gl_PREREQ): Don't require jm_PREREQ_STAT.
31961
31962 2004-04-11  Paul Eggert  <eggert@twinsun.com>
31963
31964         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
31965         C89.
31966         (CHAR_BIT): Remove, since we assume C89.
31967         Include <stdint.h> if available, as per current Autoconf CVS advice.
31968
31969 2004-03-31  Jim Meyering  <jim@meyering.net>
31970
31971         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
31972         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
31973         * m4/xalloc.m4: Likewise.
31974
31975 2004-03-30  Paul Eggert  <eggert@twinsun.com>
31976
31977         Merge from coreutils.
31978
31979         * m4/inttostr.m4: New file.
31980         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
31981         Require AM_STDBOOL_H and gl_TIMESPEC instead.
31982         Require gl_CLOCK_TIME.
31983         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
31984
31985 2004-03-30  Paul Eggert  <eggert@twinsun.com>
31986
31987         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
31988         not bool, to be more consistent with Unix conventions.
31989         Suggested by Bruno Haible.
31990
31991         Merge from coreutils.
31992
31993         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
31994         * lib/umaxtostr.c: New files.
31995
31996         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
31997         the usual <time.h> dance.
31998         (get_date): Change signature to support fractional time stamps.
31999         All callers changed.
32000         * lib/getdate.y: Include "getdate.h" first, as we can now
32001         assume C89 and don't need to worry about 'const'.
32002         Similarly, include "unlocked-io.h" near start, not in middle.
32003         Include <limits.h>.
32004         (textint.value): Use long int rather than int.
32005         (textint.digits): Use size_t rather than int.
32006         (BILLION, LOG10_BILLION): New constants.
32007         (parser_control): New member rel_ns.  Members day_ordinal,
32008         time_zone, month, day, hour, minutes, rel_year, rel_month,
32009         rel_day, rel_hour, rel_minutes, rel_seconds
32010         are now long int, not int.  Member seconds is now struct timespec,
32011         not int.  New member timespec_seen.  Members dates_seen, days_seen,
32012         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
32013         not int.
32014         (%union.intval): Now long int, not int.
32015         New member timespec.
32016         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
32017         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
32018         (spec): Now is a timespec or an item list.
32019         (timespec, items): New nonterminals.
32020         (time, rel, relunit, number, get_date):
32021         Add support for fractional seconds.
32022         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
32023         (gmtime, localtime, mktime): Remove decls; not needed with C89.
32024         (to_hour): First arg is now long int, not int.
32025         (to_year): Returns long int, not int.
32026         Don't treat year -70 like 70.
32027         (tm_diff): Returns long int, not int.
32028         (lookup_word): Use bool instead of int when appropriate.
32029         (yylex): Use size_t for count, not int.
32030         Detect overflow when parsing large integer constants.
32031         Add support for fractions.
32032         (get_date): Make pointers 'const' if possible.
32033         Use more-portable code to detect integer overflow.
32034         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
32035         Don't use ctime; it's not reliable if the year has >4 digits.
32036
32037         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
32038         This is for compatibility with BSD.
32039
32040         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
32041         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
32042         From coreutils' system.h.
32043
32044         * lib/userspec.c: Don't include "posixver.h".
32045         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
32046         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
32047         compatible extension.  Simplify code by removing a boolean int
32048         that was always nonzero if a string was nonnull.
32049
32050 2004-03-30  Jim Meyering  <jim@meyering.net>
32051
32052         Merge from coreutils.
32053
32054         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
32055         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
32056         on some systems one must include <grp.h> before it.
32057         Reported by Christian Krackowizer.
32058
32059 2004-03-30  Jim Meyering  <jim@meyering.net>
32060
32061         Merge from coreutils.
32062
32063         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
32064
32065         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
32066         an empty input stream.
32067
32068         * lib/readtokens.c: Include <stdbool.h>.
32069         (readtoken): Use `size_t' rather than int/long.
32070         All callers adjusted.
32071         Use `bool' rather than `int' where appropriate.
32072         Use memset rather than an explicit loop.
32073         Use x2nrealloc rather than xrealloc.
32074         Allow the use of `\0' as a delimiter.
32075         (readtokens): Likewise.
32076         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
32077
32078 2004-03-30  Jim Meyering  <jim@meyering.net>
32079
32080         * m4/realloc.m4: Remove file, since now it does no more than
32081         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
32082         the `configure.ac' section of module/realloc.
32083         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
32084
32085 2004-03-30  Bruno Haible  <bruno@clisp.org>
32086
32087         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
32088         nonnull.
32089
32090 2004-03-29  Paul Eggert  <eggert@twinsun.com>
32091
32092         Merge changes to getloadavg.c from coreutils and Emacs.
32093
32094         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
32095         Define to an expression, not to the empty string.
32096         Include cloexec.h and xalloc.h.
32097         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
32098         Use set_cloexec_flag rather than rolling our own.
32099         * lib/cloexec.c, lib/cloexec.h: New files.
32100
32101 2004-03-29  Paul Eggert  <eggert@twinsun.com>
32102
32103         * m4/cloexec.m4: New file.
32104
32105 2004-03-18  Paul Eggert  <eggert@twinsun.com>
32106
32107         * lib/getopt.h: Sync with libc CVS.
32108
32109 2004-03-18  Paul Eggert  <eggert@twinsun.com>
32110             Bruno Haible  <bruno@clisp.org>
32111
32112         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
32113         mbswidth.
32114
32115 2004-03-18  Paul Eggert  <eggert@twinsun.com>
32116             Bruno Haible  <bruno@clisp.org>
32117
32118         * lib/mbswidth.h: Include <wchar.h> only if
32119         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
32120         <wchar.h>.
32121         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
32122
32123 2004-03-09  Paul Eggert  <eggert@twinsun.com>
32124
32125         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
32126         Sync with libc CVS.
32127         * lib/getopt_int.h: New file, also synced from libc.
32128
32129 2004-03-09  Paul Eggert  <eggert@twinsun.com>
32130
32131         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
32132         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
32133         Bring back getopt.c, getopt.h, getopt1.c.
32134
32135 2004-03-07  Paul Eggert  <eggert@twinsun.com>
32136
32137         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
32138         All uses changed.  Check for sa_sigaction member; this fixes
32139         a bug first reported by Jason Andrade in
32140         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
32141
32142 2004-03-07  Paul Eggert  <eggert@twinsun.com>
32143
32144         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
32145         '#if' expressions.  Unlike the code it replaces, it does not
32146         depend on (defined _SC_PAGESIZE).  However, it does depend on
32147         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
32148         first reported by Jason Andrade in
32149         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
32150
32151 2004-02-25  Simon Josefsson  <jas@extundo.com>
32152
32153         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
32154
32155 2004-02-25  Simon Josefsson  <jas@extundo.com>
32156
32157         * lib/strdup.h: New file.
32158         * lib/strdup.c: Include it.
32159         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
32160         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
32161
32162 2004-02-23  Karl Berry  <karl@gnu.org>
32163
32164         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
32165         (from fencepost.gnu.org:/gd/gnuorg).
32166
32167 2004-02-23  Karl Berry  <karl@gnu.org>
32168
32169         * config/srclistvars.sh (GNUORG) [karl]: redefine.
32170         * config/srclist.txt: add maintain/standards documents.
32171
32172 2004-02-18  Bruno Haible  <bruno@clisp.org>
32173
32174         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
32175         Reported by Derek Robert Price <derek@ximbiot.com>.
32176
32177 2004-02-16  Karl Berry  <karl@gnu.org>
32178
32179         * config/mkinstalldirs, install-sh: update from automake.
32180
32181 2004-02-06  Karl Berry  <karl@gnu.org>
32182
32183         * m4/po.m4: update from gettext 0.14.1.
32184
32185 2004-02-06  Karl Berry  <karl@gnu.org>
32186
32187         * lib/config.charset: update from gettext 0.14.1.
32188
32189 2004-02-05  Paul Eggert  <eggert@twinsun.com>
32190
32191         Add comments and code, prompted by suggestions from Bruno Haible
32192         for sh-quote.
32193         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
32194         describing the enum quoting_style values.
32195         * lib/quotearg.c (quotearg_alloc): New function.
32196         (quotearg_buffer_restyled): Treat lone { and } as special.
32197         Treat = as special.  Work around bug with older shells
32198         that "see" a '\' that is really the 2nd byte of a multibyte char.
32199         Quote empty string with shell_quoting_style.
32200
32201 2004-02-03  Bruno Haible  <bruno@clisp.org>
32202
32203         * m4/pipe.m4: New file, from GNU gettext.
32204
32205 2004-02-03  Bruno Haible  <bruno@clisp.org>
32206
32207         * lib/pipe.h: New file, from GNU gettext.
32208         * lib/pipe.c: New file, from GNU gettext.
32209
32210 2004-01-27  Bruno Haible  <bruno@clisp.org>
32211
32212         * m4/execute.m4: New file, from GNU gettext.
32213
32214 2004-01-27  Bruno Haible  <bruno@clisp.org>
32215
32216         * lib/execute.h: New file, from GNU gettext.
32217         * lib/execute.c: New file, from GNU gettext.
32218         * lib/w32spawn.h: New file, from GNU gettext.
32219
32220 2004-01-24  Paul Eggert  <eggert@twinsun.com>
32221
32222         Merge from diffutils.
32223
32224         * lib/file-type.c (file_type): Add typed memory objects.
32225         * lib/file-type.h (S_TYPEISTMO): New macro.
32226
32227         * lib/c-stack.h (c_stack_action): Remove argv argument.
32228         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
32229         (die): Don't calculate message unless segv_action returns.
32230         (get_stack_location, min_address_from_argv, max_address_from_argv,
32231         volatile stack_base, volatile_stack_size): Remove.
32232         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
32233         that every segmentation violation is a stack overflow.  (Ouch!)
32234         See Debian bug 136249 (still outstanding) for more info about why
32235         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
32236
32237 2004-01-24  Paul Eggert  <eggert@twinsun.com>
32238
32239         Exit-status fix from coreutils.
32240
32241         Use exit_failure consistently in place of EXIT_FAILURE,
32242         so that program exit statuses are consistent on failure.
32243
32244         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
32245         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
32246         * lib/argmatch.h: Comment fix to match the above.
32247         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
32248         Now a macro referring to exit_failure, instead of a separate
32249         variable.  Include "exitfail.h" to get it.
32250         * lib/xstrtol.h: Include "exitfail.h".
32251         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
32252
32253         * lib/long-options.c (parse_long_options): Use prototype
32254         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
32255         for clarity.
32256
32257 2004-01-21  Jim Meyering  <jim@meyering.net>
32258
32259         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
32260         so as not to conflict with a different-sized __mktime_internal
32261         function in GNU libc.
32262         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
32263         Problem building statically-linked `ls' reported by Michael Brunnbauer.
32264
32265 2004-01-20  Karl Berry  <karl@gnu.org>
32266
32267         * config/config.guess: update from config.
32268
32269         * config/srclistvars.sh: GNUWWWLICENSES for karl.
32270
32271 2004-01-20  Bruno Haible  <bruno@clisp.org>
32272
32273         Safer stack allocation.
32274         * lib/setenv.c: Include allocsa.h.
32275         (alloca): Remove fallback definition.
32276         (freea): Remove macro.
32277         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
32278         instead of freea.
32279
32280 2004-01-20  Bruno Haible  <bruno@clisp.org>
32281
32282         * m4/eealloc.m4: New file, from GNU gettext.
32283
32284 2004-01-20  Bruno Haible  <bruno@clisp.org>
32285
32286         * m4/allocsa.m4: New file, from GNU gettext.
32287
32288 2004-01-20  Bruno Haible  <bruno@clisp.org>
32289
32290         * lib/xallocsa.h: New file, from GNU gettext.
32291         * lib/xallocsa.c: New file, from GNU gettext.
32292
32293 2004-01-20  Bruno Haible  <bruno@clisp.org>
32294
32295         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
32296
32297 2004-01-20  Bruno Haible  <bruno@clisp.org>
32298
32299         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
32300         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
32301         specially.
32302
32303 2004-01-20  Bruno Haible  <bruno@clisp.org>
32304
32305         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
32306         patch.
32307
32308 2004-01-20  Bruno Haible  <bruno@clisp.org>
32309
32310         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
32311
32312 2004-01-20  Bruno Haible  <bruno@clisp.org>
32313
32314         * lib/eealloc.h: New file.
32315
32316 2004-01-20  Bruno Haible  <bruno@clisp.org>
32317
32318         * lib/binary-io.h: Avoid warnings on Cygwin.
32319
32320 2004-01-20  Bruno Haible  <bruno@clisp.org>
32321
32322         * lib/allocsa.h: New file, from GNU gettext.
32323         * lib/allocsa.c: New file, from GNU gettext.
32324
32325 2004-01-18  Karl Berry  <karl@gnu.org>
32326
32327         * doc/gpl.texi, doc/lgpl.texi: new files.
32328
32329 2004-01-18  Karl Berry  <karl@gnu.org>
32330
32331         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
32332         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
32333
32334 2004-01-15  Paul Eggert  <eggert@twinsun.com>
32335
32336         Merge from coreutils.
32337
32338         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
32339         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
32340         (gl_DEFAULT_POSIX2_VERSION): Move
32341         the documentation from 'configure' into 'config.hin',
32342         so that 'configure --help' isn't burdened by it and
32343         we don't have to worry about its formatting there.
32344         Reword the documentation so that it's more succinct
32345         and can be run together into a single paragraph.
32346         * m4/same.m4 (gl_SAME): Check for pathconf.
32347
32348 2004-01-15  Paul Eggert  <eggert@twinsun.com>
32349
32350         Merge from coreutils.
32351
32352         * lib/posixver.c: Include posixver.h.
32353
32354         * lib/same.c: Include <stdbool.h>, <limits.h>.
32355         (_POSIX_NAME_MAX): Define if not defined.
32356         (MIN): New macro.
32357         (same_name): If file names are silently truncated, report
32358         that the file names are the same if they are the same after
32359         the silent truncation.
32360
32361         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
32362         conversion function.
32363         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
32364         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
32365         longer needed.
32366
32367 2004-01-15  Jim Meyering  <jim@meyering.net>
32368
32369         Merge from coreutils.
32370
32371         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
32372         if no library is required.
32373         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
32374         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
32375         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
32376         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
32377         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
32378         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
32379         value, $ac_cv_search_crypt, if it's "none required".
32380         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
32381         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
32382         not gl_FUNC_GETLOADAVG.
32383         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
32384         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
32385
32386 2004-01-15  Jim Meyering  <jim@meyering.net>
32387
32388         Merge from coreutils.
32389
32390         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
32391         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
32392         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
32393
32394         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
32395         optional configure-time default.
32396
32397         * lib/version-etc.c (version_etc_copyright): Update copyright date.
32398
32399         * lib/xreadlink.c (xreadlink): Correct outdated comment.
32400
32401 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
32402
32403         Merge from coreutils.
32404
32405         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
32406         value, $ac_cv_search_nanosleep, if it's "none required".
32407
32408 2004-01-14  Paul Eggert  <eggert@twinsun.com>
32409
32410         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
32411         with like-named macro in fnmatch.c.
32412         (EXT): Use an internal constant instead.
32413
32414         Merge fnmatch patches from glibc.
32415         * lib/fnmatch.c (mbsinit): Remove define.
32416         Add libc_hidden_ver (__fnmatch, fnmatch).
32417         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
32418         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
32419
32420 2004-01-14  Karl Berry  <karl@gnu.org>
32421
32422         * config/install-sh: update from automake.
32423
32424 2004-01-13  Karl Berry  <karl@gnu.org>
32425
32426         * config/install-sh: update from automake.
32427
32428 2004-01-09  Karl Berry  <karl@gnu.org>
32429
32430         * config/install-sh: update from automake.
32431
32432 2004-01-05  Karl Berry  <karl@gnu.org>
32433
32434         * config/config.{sub,guess}: update from config.
32435
32436 2003-12-31  Karl Berry  <karl@gnu.org>
32437
32438         * config/depcomp: update from automake.
32439
32440 2003-12-14  Karl Berry  <karl@gnu.org>
32441
32442         * lib/config.charset: update from gettext-runtime.
32443
32444 2003-12-03  Paul Eggert  <eggert@twinsun.com>
32445
32446         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
32447         Bug reported by Alfred M. Szmidt.
32448
32449 2003-12-03  Bruno Haible  <bruno@clisp.org>
32450
32451         * m4/gettext.m4: Upgrade from gettext-0.13.
32452         * m4/po.m4: Upgrade from gettext-0.13.
32453         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
32454         * m4/intmax.m4: New file, from gettext-0.13.
32455         * m4/printf-posix.m4: New file, from gettext-0.13.
32456
32457 2003-11-29  Karl Berry  <karl@gnu.org>
32458
32459         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
32460
32461 2003-11-25  Paul Eggert  <eggert@twinsun.com>
32462             Bruno Haible  <bruno@clisp.org>
32463
32464         * lib/printf-parse.h: Don't include sys/types.h.
32465         (ARG_NONE): New macro.
32466         (char_directive): Change type of *arg_index fields to size_t.
32467         * lib/printf-parse.c: Don't include sys/types.h.
32468         (SSIZE_MAX): Remove macro.
32469         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
32470         Remove unnecessary overflow check.
32471         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
32472         fields.
32473
32474 2003-11-25  Bruno Haible  <bruno@clisp.org>
32475
32476         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
32477
32478 2003-11-25  Bruno Haible  <bruno@clisp.org>
32479
32480         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
32481         gt_TYPE_SSIZE_T.
32482
32483 2003-11-24  Paul Eggert  <eggert@twinsun.com>
32484
32485         * modules/alloca: Remove dependency on xalloc.
32486
32487 2003-11-24  Paul Eggert  <eggert@twinsun.com>
32488
32489         * lib/alloca.c: Remove dependency on xalloc module.
32490         (xalloc_die): Remove.
32491         (memory_full) [!defined emacs]: New macro.
32492         [!defined emacs]: Don't include xalloc.h.
32493         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
32494         address arithmetic overflows.  Change datatypes a bit to avoid
32495         unnecessary casts.
32496
32497 2003-11-22  Jim Meyering  <jim@meyering.net>
32498
32499         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
32500         s/size/size_t/.
32501
32502 2003-11-21  Karl Berry  <karl@gnu.org>
32503
32504         * config/config.{sub,guess}: update from config.
32505
32506 2003-11-18  Karl Berry  <karl@gnu.org>
32507
32508         * config/config.{sub,guess}: update from config.
32509
32510         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
32511
32512 2003-11-17  Paul Eggert  <eggert@twinsun.com>
32513
32514         * README: Mention that S+T cannot overflow if S is the size of
32515         an existing object and T is sufficiently small.
32516
32517 2003-11-17  Jim Meyering  <jim@meyering.net>
32518
32519         On systems without utime and without a utimes function capable of
32520         dealing with a NULL struct utimbuf* argument, this utime replacement
32521         could -- in unusual circumstances -- leak a file descriptor.
32522         * lib/utime.c: Include <unistd.h> and <errno.h>.
32523         (utime_null): Be sure to close `fd' and to preserve errno.
32524         Reported by Geoff Collyer via Arnold Robbins.
32525
32526 2003-11-17  Bruno Haible  <bruno@clisp.org>
32527
32528         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
32529         (Depends-on): Add xsize.
32530
32531 2003-11-17  Bruno Haible  <bruno@clisp.org>
32532
32533         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
32534
32535 2003-11-17  Bruno Haible  <bruno@clisp.org>
32536
32537         * lib/vasnprintf.c (alloca): Remove fallback definition.
32538         (freea): Remove definition.
32539         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
32540         Reported by Paul Eggert.
32541
32542 2003-11-16  Paul Eggert  <eggert@twinsun.com>
32543             Bruno Haible  <bruno@clisp.org>
32544
32545         Protect against address arithmetic overflow.
32546         * lib/printf-args.h: Include stddef.h.
32547         (arguments): Change type of field 'count' to size_t.
32548         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
32549         'unsigned int' where appropriate.
32550         * lib/printf-parse.h: Include sys/types.h.
32551         (char_directive): Change type of *arg_index fields to ssize_t.
32552         (char_directives): Change type of fields 'count', max_*_length to
32553         size_t.
32554         * lib/printf-parse.c: Include sys/types.h and xsize.h.
32555         (SSIZE_MAX): Define fallback value.
32556         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
32557         instead of 'int' where appropriate. Check a_allocated, d_allocated
32558         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
32559         * lib/vasnprintf.c: Include xsize.h.
32560         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
32561         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
32562         overflow. Avoid wraparound when converting a width or precision from
32563         decimal to binary.
32564
32565 2003-11-16  Bruno Haible  <bruno@clisp.org>
32566
32567         Update from GNU gettext.
32568         * lib/printf-parse.c: Generalize to it can be compiled for wide
32569         strings.
32570         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
32571         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
32572         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
32573         SNPRINTF): New macros.
32574         Don't include <alloca.h> if the file is used inside libintl.
32575         (local_wcslen): New function, for Solaris 2.5.1.
32576         (VASNPRINTF): Use it instead of wcslen.
32577
32578 2003-11-16  Bruno Haible  <bruno@clisp.org>
32579
32580         * lib/xsize.h (xmax): New function.
32581         (xsum, xsum3, xsum4): Declare as "pure" functions.
32582
32583 2003-11-12  Paul Eggert  <eggert@twinsun.com>
32584
32585         * modules/xalloc (Files): Undo latest change, since xalloc.h
32586         no longer needs SIZE_MAX or PTRDIFF_MAX.
32587
32588 2003-11-12  Paul Eggert  <eggert@twinsun.com>
32589
32590         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
32591         gl_PTRDIFF_MAX.
32592
32593 2003-11-12  Paul Eggert  <eggert@twinsun.com>
32594
32595         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
32596         "return", to pacify some unknown compiler.  Problem reported
32597         by Joerg Schilling.
32598
32599 2003-11-12  Paul Eggert  <eggert@twinsun.com>
32600
32601         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
32602         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
32603         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
32604         heuristic is just as accurate as far as we know, and it removes a
32605         dependency on size_max.m4 and ptrdiff_max.m4.
32606
32607 2003-11-11  Bruno Haible  <bruno@clisp.org>
32608
32609         * modules/xsize (Files): Add m4/size_max.m4.
32610         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
32611
32612 2003-11-11  Bruno Haible  <bruno@clisp.org>
32613
32614         * m4/size_max.m4: New file.
32615         * m4/ptrdiff_max.m4: New file.
32616         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
32617         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
32618         (gl_XALLOC): Invoke it.
32619
32620 2003-11-11  Bruno Haible  <bruno@clisp.org>
32621
32622         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
32623         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
32624         defined.
32625
32626 2003-11-10  Paul Eggert  <eggert@twinsun.com>
32627
32628         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
32629         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
32630         rejected some allocations of exactly SIZE_MAX - 2 bytes.
32631         From Bruno Haible.
32632         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
32633         not (size_t) -1, since it's defined here.
32634
32635 2003-11-09  Karl Berry  <karl@gnu.org>
32636
32637         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
32638
32639 2003-11-06  Paul Eggert  <eggert@twinsun.com>
32640
32641         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
32642         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
32643         Reject sizes of exactly SIZE_MAX bytes.
32644         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
32645         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
32646
32647 2003-11-05  Bruno Haible  <bruno@clisp.org>
32648
32649         * lib/xsize.h: Include limits.h, to avoid a possible collision with
32650         SIZE_MAX defined in <limits.h> on Solaris.
32651
32652 2003-11-04  Jim Meyering  <jim@meyering.net>
32653
32654         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
32655         variable names, rather than @VAR@.
32656         * modules/poll: Likewise.
32657
32658 2003-11-04  Bruno Haible  <bruno@clisp.org>
32659
32660         * modules/xsize: New file.
32661         * modules/linebreak: Depend on xsize.
32662         * MODULES.html.sh (func_all_modules): Add xsize.
32663
32664 2003-11-04  Bruno Haible  <bruno@clisp.org>
32665
32666         * m4/xsize.m4: New file.
32667
32668 2003-11-04  Bruno Haible  <bruno@clisp.org>
32669
32670         * lib/xsize.h: New file.
32671         * lib/linebreak.c: Include xsize.h.
32672         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
32673         argument for overflow.
32674         Suggested by Paul Eggert.
32675
32676 2003-11-03  Karl Berry  <karl@gnu.org>
32677
32678         * config/config.{guess,sub}: update from config.
32679
32680 2003-11-03  Jim Meyering  <jim@meyering.net>
32681
32682         * modules/userspec (lib_SOURCES): Add userspec.h.
32683         (Include): Add "userspec.h".
32684         Improve description.
32685
32686 2003-11-03  Jim Meyering  <jim@meyering.net>
32687
32688         * lib/userspec.c: Include "userspec.h".
32689         * lib/userspec.h: New file.
32690
32691 2003-11-03  Bruno Haible  <bruno@clisp.org>
32692
32693         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
32694
32695 2003-11-03  Bruno Haible  <bruno@clisp.org>
32696
32697         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
32698         available, to avoid (extremely rare) race condition.
32699         Suggested by Paul Eggert.
32700
32701 2003-11-02  Karl Berry  <karl@gnu.org>
32702
32703         * config/srclist.txt (vasprintf.c): sync broken, sigh.
32704
32705 2003-10-31  Paul Eggert  <eggert@twinsun.com>
32706
32707         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
32708         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
32709         (read_filesystem_list): Set and use me_type_malloced.
32710         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
32711         whatever the type happens to be), for brevity and consistency.
32712         Check for size calculation overflow on Alphas running OSF/1.
32713
32714 2003-10-31  Jim Meyering  <jim@meyering.net>
32715
32716         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
32717
32718         * lib/linebuffer.c: Include <string.h> for declaration of memset.
32719
32720 2003-10-30  Paul Eggert  <eggert@twinsun.com>
32721             Bruno Haible  <bruno@clisp.org>
32722
32723         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
32724         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
32725
32726 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
32727
32728         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
32729         netbsd*-gnu*.  Suggested by Robert Millan.
32730
32731 2003-10-29  Paul Eggert  <eggert@twinsun.com>
32732
32733         * modules/group-member: Depend on stdbool.
32734
32735 2003-10-29  Paul Eggert  <eggert@twinsun.com>
32736
32737         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
32738
32739 2003-10-29  Paul Eggert  <eggert@twinsun.com>
32740
32741         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
32742         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
32743         after the 'gnu' in these cases.  This fixes some bugs in the
32744         previous change, and is based on suggestions by Robert Millan.
32745
32746 2003-10-29  Paul Eggert  <eggert@twinsun.com>
32747
32748         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
32749         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
32750         no longer needed.
32751         * lib/quotearg.c (quotearg_n_options): Use it.
32752         * lib/group-member.c: Include <stdbool.h>.
32753         (free_group_info): Arg is now const *; don't free arg.
32754         (get_group_info): Now returns bool and accepts struct group_info *,
32755         rather than returning a malloc'ed struct group_info *.
32756         All uses changed.  Check for overflow in internal size calculation.
32757
32758         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
32759         rather than xmalloc/xrealloc.
32760         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
32761         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
32762         conformance bug: the old code used a pointer after freeing the
32763         storage that it addressed.
32764         * lib/hash.c (hash_initialize): Simplify the code by using
32765         xalloc_oversized rather than doing it by hand.
32766         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
32767         the buffer preserved.  Use free and xmalloc instead.
32768         * lib/quotearg.c (quotearg_n_options): Likewise.
32769         Use a simpler test for size overflow.  Don't use xalloc_oversized
32770         because unsigned int might be wider than size_t (!); this suggests
32771         that we should switch from unsigned int to size_t for slot numbers.
32772
32773 2003-10-28  Paul Eggert  <eggert@twinsun.com>
32774
32775         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
32776         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
32777         NetBSD kernels.  Requested by Richard Stallman.
32778
32779 2003-10-27  Paul Eggert  <eggert@twinsun.com>
32780
32781         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
32782         to allocate the returned structure.  Do not allocate a subarray,
32783         as x2nrealloc will do that.
32784         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
32785         instead of xnrealloc.
32786         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
32787
32788 2003-10-27  Bruno Haible  <bruno@clisp.org>
32789
32790         * lib/stdbool_.h: Better support for BeOS.
32791
32792 2003-10-26  Paul Eggert  <eggert@twinsun.com>
32793
32794         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
32795         now uses inline.
32796
32797 2003-10-26  Paul Eggert  <eggert@twinsun.com>
32798
32799         * lib/xalloc.h (xalloc_oversized): New static inline function, for
32800         callers that want to do their own size-overflow checking.  Include
32801         <stdbool.h>, since xalloc_oversized returns bool.
32802         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
32803         to use xalloc_oversized.
32804
32805         Add two functions x2realloc, x2nrealloc, for programs that grow
32806         arrays dynamically by doubling their sizes.
32807         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
32808         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
32809         New functions.
32810
32811         Port to C99 semantics for 'inline' of external functions.
32812         Bug reported by Bruno Haible.
32813         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
32814         with the old contents of xnmalloc.
32815         (xnmalloc, xmalloc): Use it.
32816         (xnrealloc_inline): New static inline function,
32817         with the old contents of xnrealloc.
32818         (xnrealloc, xrealloc): Use it.
32819
32820         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
32821         that.
32822
32823 2003-10-26  Karl Berry  <karl@gnu.org>
32824
32825         * config/srclist.txt (COPYING.DOC): no longer available from
32826         /gd/gnuorg; don't know where the ultimate source is.
32827
32828 2003-10-25  Paul Eggert  <eggert@twinsun.com>
32829
32830         Fix several address-calculation bugs in the hash modules,
32831         plus some minor code cleanup.
32832
32833         * lib/hash.h: Include <stdbool.h>, for bool.
32834         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
32835         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
32836         hash_get_n_entries, hash_get_max_bucket_length,
32837         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
32838         hash_rehash): Use size_t rather than unsigned.
32839         * lib/hash.c (struct hash_table, hash_get_n_buckets,
32840         hash_get_n_buckets_used, hash_get_n_entries,
32841         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
32842         hash_get_entries, hash_do_for_each, hash_string, is_prime,
32843         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
32844         Likewise.
32845         (SIZE_MAX): Define if not defined.
32846         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
32847         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
32848         hash_print):
32849         Use const * when possible.
32850         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
32851         (check_tuning): Fix bug: if tuning parameters were very close to
32852         0 or 1, rounding errors could have caused subscript violations.
32853         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
32854         (hash_initialize): Add 'fail:' label
32855         to free table and return NULL, and use it to simplify code.
32856         Use calloc rather than clearing the storage ourself.
32857         (hash_initialize, hash_rehash): Check for arithmetic overflow in
32858         buffer size calculations.
32859         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
32860         Include <stddef.h>, for size_t.
32861         * lib/hash-pjw.c (hash_pjw): Likewise.
32862         Switch to method described by Bruno Haible.
32863         Include <limits.h>, for CHAR_BIT.
32864         (SIZE_BITS): New macro.
32865
32866 2003-10-23  Paul Eggert  <eggert@twinsun.com>
32867
32868         * m4/getline.m4 (AM_FUNC_GETLINE):
32869         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
32870         hosts.  Problem reported by Derek Robert Price in
32871         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
32872         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
32873         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
32874
32875 2003-10-21  Paul Eggert  <eggert@twinsun.com>
32876
32877         * lib/getndelim2.c (getndelim2): When size calculation overflows,
32878         ceiling the allocation at NMAX bytes rather than silently
32879         discarding input bytes before NMAX is reached.  This makes
32880         a difference only if NMAX exceeds SIZE_MAX / 2.
32881
32882         * lib/obstack.c: Merge from glibc.
32883         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
32884         Add libc_hidden_def (_obstack_newchunk).
32885         (_obstack_free) [! defined _LIBC]: Remove.
32886         [defined _LIBC]: Make a strong alias from obstack_free, rather than
32887         a clone of the function body.
32888         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
32889         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
32890
32891         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
32892         glibc.
32893         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
32894         arg to memcpy.
32895
32896         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
32897         (obstack_ptr_grow_fast, obstack_int_grow_fast):
32898         Don't use lvalue casts, as GCC plans to remove support for them
32899         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
32900         was also present in the non-GCC version, indicating that this
32901         code had always been buggy and had never been widely used.
32902         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
32903         Use the fast variant of each macro, rather than copying the
32904         definiens of the fast variant; that way, we'll be more likely to
32905         catch future bugs in the fast variants.
32906
32907 2003-10-20  Bruno Haible  <bruno@clisp.org>
32908
32909         * modules/wait-process: New file.
32910         * MODULES.html.sh (func_all_modules): Add wait-process.
32911
32912 2003-10-20  Bruno Haible  <bruno@clisp.org>
32913
32914         * m4/wait-process.m4: New file.
32915
32916 2003-10-20  Bruno Haible  <bruno@clisp.org>
32917
32918         * lib/wait-process.h: New file, from GNU gettext.
32919         * lib/wait-process.c: New file, from GNU gettext.
32920
32921 2003-10-19  Jim Meyering  <jim@meyering.net>
32922
32923         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
32924         HPUX 10.20.
32925
32926 2003-10-18  Karl Berry  <karl@gnu.org>
32927
32928         * config/config.guess: update from config.
32929
32930 2003-10-16  Paul Eggert  <eggert@twinsun.com>
32931
32932         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
32933         (getgroups): First arg is int, not size_t.
32934         Don't let 'free' mangle errno.
32935
32936 2003-10-16  Paul Eggert  <eggert@twinsun.com>
32937
32938         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
32939
32940 2003-10-16  Karl Berry  <karl@gnu.org>
32941
32942         * config/config.{guess,sub}: update from config.
32943
32944 2003-10-16  Jim Meyering  <jim@meyering.net>
32945
32946         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
32947         memcpy.
32948
32949 2003-10-15  Paul Eggert  <eggert@twinsun.com>
32950
32951         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
32952         (SIZE_MAX): Remove.
32953         (new_exclude, add_exclude_file): Initial size no longer needs to
32954         be a power of 2.
32955         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
32956         our own address arithmetic overflow checking.
32957
32958         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
32959         (fnmatch): Do not alloca more than 2000 wide characters;
32960         instead, use malloc for large buffers.
32961         Check for address arithmetic overflow, and return -1
32962         with errno set to ENOMEM in that case.
32963         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
32964         (NEW_PATTERN): Do not alloca more than 8000 bytes;
32965         instead, return -1.  Check for address arithmetic overflow.
32966
32967 2003-10-14  Paul Eggert  <eggert@twinsun.com>
32968
32969         Handle invalid suffixes and overflow independently, so that
32970         callers can treat them independently as needed.  Fix some bugs in
32971         suffix handling, e.g., "100k@" was not diagnosed as an invalid
32972         suffix for a human-readable blocksize.  The major caller-visible
32973         change is the addition of a new
32974         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
32975         that both overflow and suffix chars were found.
32976
32977         * lib/human.c (humblock): Don't check separately for invalid suffix
32978         char; that is xstrtoumax's job (now that its bug is fixed).
32979         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
32980         INTMAX_MAX]: New macros.
32981         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
32982         TYPE_MAXIMUM): New macros.
32983         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
32984         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
32985         if overflow occurs, as it's what __strtol does and it's more useful
32986         in practice.
32987         (__xstrtol): If __strtol reports some error other than ERANGE,
32988         reflect it to the caller as LONGINT_INVALID.  If it reports
32989         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
32990         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
32991         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
32992         value.
32993         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
32994         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
32995         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
32996         [defined UINTMAX_MAX]: New macros.
32997
32998 2003-10-14  Bruno Haible  <bruno@clisp.org>
32999
33000         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
33001
33002 2003-10-14  Bruno Haible  <bruno@clisp.org>
33003
33004         * m4/sig_atomic_t: New file, from GNU gettext.
33005         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
33006
33007 2003-10-14  Bruno Haible  <bruno@clisp.org>
33008
33009         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
33010         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
33011         Also use volatile where needed.
33012
33013 2003-10-12  Paul Eggert  <eggert@twinsun.com>
33014
33015         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
33016         Change maintainer from Bruno Haible to 'all'.
33017
33018 2003-10-12  Paul Eggert  <eggert@twinsun.com>
33019
33020         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
33021
33022 2003-10-12  Paul Eggert  <eggert@twinsun.com>
33023
33024         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
33025         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
33026         and define in terms of the other primitives.
33027         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
33028         (SIZE_MAX): Define if not already defined.
33029         (array_size_overflow): New function.
33030         (xalloc_die): Abort instead of exiting if 'error' returns.
33031         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
33032         (xmalloc, xrealloc): Use them.
33033         (xcalloc): Check for address arithmetic overflow.
33034         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
33035         a bit faster than strcpy.
33036
33037 2003-10-10  Simon Josefsson  <jas@extundo.com>
33038
33039         * modules/argp (Depends-on): Add restrict and strcase.
33040
33041 2003-10-10  Simon Josefsson  <jas@extundo.com>
33042
33043         * m4/argp.m4: Add AC_C_INLINE.
33044
33045 2003-10-08  Paul Eggert  <eggert@twinsun.com>
33046
33047         Merge getpass from libc, plus a few fixes.
33048
33049         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
33050         Include <stdbool.h>.
33051         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
33052         __fsetlocking to empty.
33053         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
33054         do include <bits/libc-lock.h>.
33055         Do not include <fcntl.h>; not needed.
33056         [_LIBC]: Include <wchar.h>.
33057         (NOTCANCEL_MODE): New macro.
33058         (flockfile, funlockfile) [_LIBC]: New macros.
33059         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
33060         [!_LIBC]: New macros.
33061         (call_fclose): New function.
33062         (getpass): Use it.  Save tty stream separately; this simplifies the
33063         code and makes it more reliable if stdin happens to equal stdout.
33064         Invoke __fsetlocking on tty.
33065         Handle thread cancellation if needed.
33066         Namespace cleanup (use __tcgetattr, __getline).
33067         Use bool for Booleans.
33068         [USE_IN_LIBIO]: Handle wide streams.
33069         [!_LIBC]: Unconditionally do the fseek, since we don't know what
33070         stream might go where.
33071
33072         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
33073         doesn't have to include <stdio.h> before us.
33074         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
33075         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
33076         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
33077         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
33078         if not declared, so that we can use getpass.c code from libc without
33079         rewriting it.
33080         (flockfile, ftrylockfile, funlockfile): New macros.
33081
33082 2003-10-08  Paul Eggert  <eggert@twinsun.com>
33083
33084         * modules/getpass: Depend on stdbool.
33085
33086 2003-10-08  Paul Eggert  <eggert@twinsun.com>
33087
33088         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
33089
33090 2003-10-07  Karl Berry  <karl@gnu.org>
33091
33092         * config/config.{guess,sub}: update from config.
33093
33094 2003-10-06  Jim Meyering  <jim@meyering.net>
33095             Bruno Haible  <bruno@clisp.org>
33096
33097         This lets translators provide better translations for the
33098         "Written by ..." part of --version output.
33099         * lib/version-etc.h: Include stdarg.h.
33100         (version_etc_copyright): Declare as readonly.
33101         (version_etc): Make this function variadic with a NULL-terminated list
33102         of author name strings.
33103         (version_etc_va): New declaration.
33104         * lib/version-etc.c: Include stdarg.h, stdlib.h.
33105         (version_etc_copyright): Declare as readonly.
33106         (version_etc_va): New function. Provide a different translatable string
33107         for each possible number of authors < 10. Abbreviate when there are 10
33108         authors or more.
33109         (version_etc): Make this function variadic. Call version_etc_va.
33110         Suggestion from Gary V. Vaughan.
33111
33112         * lib/long-options.h (parse_long_options): Change prototype: the
33113         authors string is moved to the end and becomes variadic.
33114         * lib/long-options.c: Include stdarg.h.
33115         (parse_long_options): Make this function variadic, too.
33116         Call version_etc_va, not version_etc.
33117
33118 2003-10-06  Bruno Haible  <bruno@clisp.org>
33119
33120         * modules/version-etc-2: Remove file.
33121         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
33122
33123 2003-10-06  Bruno Haible  <bruno@clisp.org>
33124
33125         * modules/fatal-signal: New file.
33126         * MODULES.html.sh (func_all_modules): Add fatal-signal.
33127
33128 2003-10-06  Bruno Haible  <bruno@clisp.org>
33129
33130         * m4/fatal-signal.m4: New file.
33131         * m4/signalblocking.m4: New file, from GNU gettext.
33132
33133 2003-10-06  Bruno Haible  <bruno@clisp.org>
33134
33135         * lib/version-etc-2.h: Remove file.
33136         * lib/version-etc-2.c: Remove file.
33137
33138 2003-10-06  Bruno Haible  <bruno@clisp.org>
33139
33140         * lib/fatal-signal.h: New file, from GNU gettext.
33141         * lib/fatal-signal.c: New file, from GNU gettext.
33142
33143 2003-10-05  Paul Eggert  <eggert@twinsun.com>
33144
33145         * README: Rework advice for preventing empty .o files.
33146         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
33147         not <sys/types.h>.
33148
33149 2003-10-04  Karl Berry  <karl@gnu.org>
33150
33151         * lib/argp*: update from libc.
33152
33153 2003-10-04  Karl Berry  <karl@gnu.org>
33154
33155         * config/config.{guess,sub}: update from config.
33156
33157 2003-10-02  Bruno Haible  <bruno@clisp.org>
33158
33159         * modules/lchown (Include): Add lchown.h.
33160         * modules/time_r (Include): Use "..." syntax.
33161         * modules/xgetdomainname (Include): Add xgetdomainname.h.
33162
33163 2003-10-01  Simon Josefsson  <jas@extundo.com>
33164
33165         * MODULES.html.sh (func_all_modules): Move gethostname from section
33166         'based on' to section 'lacking' POSIX:2001.
33167
33168 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
33169
33170         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
33171         to output mode on the same stream.
33172
33173 2003-09-29  Paul Eggert  <eggert@twinsun.com>
33174
33175         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
33176         Fix arg typo in previous patch.
33177
33178 2003-09-28  Jim Meyering  <jim@meyering.net>
33179
33180         * lib/error.c: Correct cpp indentation.
33181
33182 2003-09-27  Paul Eggert  <eggert@twinsun.com>
33183
33184         * modules/free: New file.
33185
33186 2003-09-27  Paul Eggert  <eggert@twinsun.com>
33187
33188         * m4/free.m4: New file.
33189
33190 2003-09-27  Paul Eggert  <eggert@twinsun.com>
33191
33192         * lib/minmax.h (MIN, MAX)
33193         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
33194         Omit the special code that used __typeof__, since we worry that
33195         it could be more trouble than it's worth.  See:
33196         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
33197         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
33198
33199         * lib/free.c: New file.
33200
33201 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
33202
33203         Trivial fixes to Makefile.am parts of module listings.
33204         * modules/strstr: Append strstr.h to lib_SOURCES.
33205         * modules/strcase: Likewise, for strcase.h.
33206
33207 2003-09-27  Karl Berry  <karl@gnu.org>
33208
33209         * config/mkinstalldirs: update from automake.
33210
33211 2003-09-26  Paul Eggert  <eggert@twinsun.com>
33212
33213         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
33214         (error_tail): Do not loop, reallocating temporary buffer, since
33215         the output cannot contain more wide characters than the input
33216         contains bytes, the size must be big enough already.  This avoids
33217         one potential size overflow calculation.  Check for size overflow
33218         when calculating temporary buffer size.  Free temporary buffer
33219         when done, if it was allocated with malloc; this plugs a memory
33220         leak.  Remove casts from void * to pointers, that are no longer
33221         needed now that we're assuming C89 or better.
33222
33223         Merge error changes from glibc.
33224
33225         * lib/error.c, error.h: Update copyright notice header to match glibc.
33226         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
33227         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
33228         Disable cancellation while printing error.
33229         * lib/error.h: Prepend __ to parameter names.
33230
33231 2003-09-26  Jim Meyering  <jim@meyering.net>
33232
33233         * lib/error.c (error_tail): Move some declarations
33234         into inner scope where the local variables are used.
33235
33236 2003-09-26  Bruno Haible  <bruno@clisp.org>
33237
33238         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
33239         stpncpy().
33240         Don't define stpncpy through config.h; it's now done through stpncpy.h.
33241
33242 2003-09-26  Bruno Haible  <bruno@clisp.org>
33243
33244         * lib/stpncpy.h (gnu_stpncpy): New declaration.
33245         (stpncpy): Define as alias for gnu_stpncpy.
33246         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
33247
33248 2003-09-25  Simon Josefsson  <jas@extundo.com>
33249
33250         * lib/xgetdomainname.h: New file.
33251         * lib/xgetdomainname.c: New file.
33252
33253 2003-09-25  Simon Josefsson  <jas@extundo.com>
33254             Bruno Haible  <bruno@clisp.org>
33255
33256         * modules/getdomainname: New file.
33257         * modules/xgetdomainname: New file.
33258         * MODULES.html.sh (func_all_modules): Add getdomainname,
33259         xgetdomainname.
33260
33261 2003-09-25  Simon Josefsson  <jas@extundo.com>
33262             Bruno Haible  <bruno@clisp.org>
33263
33264         * m4/getdomainname.m4: New file.
33265
33266 2003-09-25  Simon Josefsson  <jas@extundo.com>
33267             Bruno Haible  <bruno@clisp.org>
33268
33269         * lib/getdomainname.h: New file.
33270         * lib/getdomainname.c: New file.
33271
33272 2003-09-25  Karl Berry  <karl@gnu.org>
33273
33274         * lib/argp-fmtstream.c, argp-help.c: update from libc.
33275
33276 2003-09-25  Karl Berry  <karl@gnu.org>
33277
33278         * config/install-sh: update from automake.
33279
33280 2003-09-25  Bruno Haible  <bruno@clisp.org>
33281
33282         * modules/version-etc-2: New file, from modules/version-etc with
33283         modifications.
33284         * MODULES.html.sh (func_all_modules): Add version-etc-2.
33285
33286 2003-09-25  Bruno Haible  <bruno@clisp.org>
33287
33288         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
33289         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
33290
33291 2003-09-24  Simon Josefsson  <jas@extundo.com>
33292
33293         * modules/xgethostname: Add xgethostname.h.
33294
33295 2003-09-24  Paul Eggert  <eggert@twinsun.com>
33296
33297         * lib/linebuffer.c (freebuffer): Don't free the argument, just
33298         the buffer associated with the argument.  Bug reported by
33299         Simon Josefsson.
33300
33301 2003-09-24  Paul Eggert  <eggert@twinsun.com>
33302
33303         * README: Document assumptions that 'int' is at least 32 bits
33304         wide, that integer arithmetic is 2's complement without overflow,
33305         that there are no holes in integer values, that adding sizes of
33306         two nonoverlapping objects can't overflow, and that all-bits-zero
33307         yields scalar zero.  Fix spelling and capitalization typos.
33308
33309 2003-09-19  Karl Berry  <karl@gnu.org>
33310
33311         * lib/argp.h: update from libc.
33312
33313 2003-09-17  Paul Eggert  <eggert@twinsun.com>
33314
33315         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
33316         to avoid spurious warnings like "AC_RUN_IFELSE was called before
33317         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
33318
33319 2003-09-17  Paul Eggert  <eggert@twinsun.com>
33320
33321         * gnulib-tool: Use "test -h", not "test -L", for portability
33322         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
33323         (tags_regexp): Remove, since \| doesn't conform to POSIX.
33324         (sed_extract_prog): Issue s commands one-by-one, rather than
33325         using \| in one s command.
33326
33327 2003-09-16  Paul Eggert  <eggert@twinsun.com>
33328
33329         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
33330         input error, instead of returning NULL the next time we are called
33331         (and therefore losing track of errno).
33332
33333 2003-09-16  Bruno Haible  <bruno@clisp.org>
33334
33335         * gnulib-tool (func_create_testdir): Warn about duplicated
33336         dependencies.
33337
33338 2003-09-15  Paul Eggert  <eggert@twinsun.com>
33339
33340         * modules/argmatch, modules/fatal, modules/obstack,
33341         modules/xalloc, modules/xgethostname: Sort dependencies by
33342         importance, not alphabetically.
33343
33344 2003-09-15  Paul Eggert  <eggert@twinsun.com>
33345
33346         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
33347         fails, so that the caller gets the proper errno.
33348
33349         * lib/readutmp.c (read_utmp): Likewise.
33350         Check for fstat error.  Close stream and free storage
33351         when failing.
33352
33353 2003-09-14  Karl Berry  <karl@gnu.org>
33354
33355         * config/srclist.txt (strdup.c): disable for c89 changes.
33356
33357 2003-09-14  Jim Meyering  <jim@meyering.net>
33358
33359         * lib/getloadavg.c: Correct cpp indentation.
33360         * lib/strdup.c: Likewise.
33361         * lib/vasnprintf.c: Likewise.
33362
33363 2003-09-14  Bruno Haible  <bruno@clisp.org>
33364
33365         * modules/fwriteerror: New file.
33366         * MODULES.html.sh (func_all_modules): Add fwriteerror.
33367
33368 2003-09-14  Bruno Haible  <bruno@clisp.org>
33369
33370         * lib/fwriteerror.h: New file.
33371         * lib/fwriteerror.c: New file.
33372
33373 2003-09-12  Paul Eggert  <eggert@twinsun.com>
33374
33375         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
33376         modules/xgethostname, modules/xalloc: Depend on exit.
33377
33378 2003-09-12  Paul Eggert  <eggert@twinsun.com>
33379
33380         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
33381
33382         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
33383         and AC_MINIX, too, so that their extensions are available.
33384
33385         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
33386         This macro has been superseded by gl_BACKUPFILE.
33387
33388         More patches to assume C89 or better.
33389
33390         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
33391
33392         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
33393         unconditionally.
33394         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
33395         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
33396         Include <string.h>, <stdlib.h> unconditionally.
33397         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
33398         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
33399         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
33400         headers or for string.h.
33401         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
33402         or strtoul.
33403
33404         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
33405         headers.
33406         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
33407         * m4/userspec.m4 (gl_USERSPEC): Likewise.
33408         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
33409         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
33410         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
33411         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
33412         memcpy, memset.
33413         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
33414         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
33415         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
33416         strtol.
33417         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
33418         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
33419         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
33420         strtoul.
33421
33422 2003-09-12  Paul Eggert  <eggert@twinsun.com>
33423
33424         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
33425         * lib/obstack.c [!defined _LIBC]: Likewise.
33426         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
33427         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
33428         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
33429
33430         More changes to assume C89 or better.
33431
33432         * lib/error.c (error_tail): Assume vprintf.
33433
33434         * lib/argmatch.c (getenv): Remove decl.
33435         * lib/progreloc.c (get_full_program_name): Define via prototype.
33436         * lib/setenv.c (clearenv): Likewise.
33437         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
33438         needed.
33439         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
33440         (malloc, memcpy): Remove decls.
33441         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
33442         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
33443         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
33444         (memcpy): Remove macro.
33445         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
33446         (__P): Remove.  All uses removed.
33447         (PTR): Remove.  All uses changed to void *.
33448         (CHAR_BIT, NULL): Remove.
33449         (spaces, zeros, memset_space, memset_zero)
33450         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
33451         Remove.
33452         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
33453         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
33454         Define with prototype.
33455         Remove now-unnecessary prototype decl.
33456         (extra_args_spec): Assume ANSI C.  All uses changed.
33457         (extra_args_spec_iso): Remove.
33458         (my_strftime, emacs_strftimeu): Define via prototype.
33459         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
33460         unconditionally.
33461         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
33462         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
33463         (strtoul, strtol): Remove decls.
33464         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
33465         LONG_MAX): Remove.
33466         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
33467         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
33468         (LOCALE_PARAM_PROTO): New macro.
33469         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
33470         (INTERNAL (strtol), strtol): Define with a prototype.
33471         (PARAMS): Remove.  All uses removed.
33472         * lib/tempname.c: Include <string.h> unconditionally.
33473         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
33474         * lib/xgethostname.c (main): Define with a prototype.
33475         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
33476         Include <stdlib.h> unconditionally.
33477         (calloc, malloc, realloc, free): Remove decls.
33478         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
33479         Include <stdlib.h> unconditionally.  Sort include file names.
33480         (strtod): Remove.
33481         (xstrtod): Define with a prototype.
33482         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
33483         (strtol, strtoul): Remove decls.
33484
33485 2003-09-11  Paul Eggert  <eggert@twinsun.com>
33486
33487         More patches to assume C89 or better.
33488         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
33489         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
33490         string.h, memchr, STDC_HEADERS.
33491
33492 2003-09-11  Paul Eggert  <eggert@twinsun.com>
33493
33494         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
33495         Include <stdlib.h>, <string.h> unconditionally.
33496         Remove now-unnecessary cast to char *.
33497         * lib/strnlen.c: Include <string.h> unconditionally.
33498         * lib/yesno.c (yesno): Define with a prototype.
33499
33500 2003-09-11  Bruno Haible  <bruno@clisp.org>
33501
33502         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
33503
33504 2003-09-10  Jim Meyering  <jim@meyering.net>
33505
33506         * lib/error.c: Correct indentation of cpp directives.
33507
33508 2003-09-10  Bruno Haible  <bruno@clisp.org>
33509
33510         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
33511         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
33512         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
33513         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
33514         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
33515         <stdlib.h> and <string.h> checks.
33516         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
33517         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
33518
33519 2003-09-10  Bruno Haible  <bruno@clisp.org>
33520
33521         * lib/strcspn.c: Include <string.h> unconditionally.
33522         * lib/strpbrk.c: Include <string.h> unconditionally.
33523         * lib/strstr.c: Include <string.h> unconditionally.
33524         * lib/unicodeio.c: Include <string.h> unconditionally.
33525         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
33526         * lib/unsetenv.c: Likewise.
33527         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
33528         * lib/yesno.c: Include <stdlib.h> unconditionally.
33529         (rpmatch): Add prototype.
33530
33531 2003-09-09  Paul Eggert  <eggert@twinsun.com>
33532
33533         More patches to assume C89 or better.
33534         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
33535         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
33536         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
33537         or for string.h.
33538         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
33539         stdlib.h.
33540         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
33541         C headers.
33542         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
33543         string.h.
33544         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
33545         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
33546         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
33547         or for string.h.
33548         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
33549         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
33550         C headers.
33551         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
33552         memcpy.
33553         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
33554         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
33555         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
33556         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
33557         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
33558         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
33559         string.h, free.
33560         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
33561         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
33562         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
33563         C headers, or for string.h.
33564         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
33565         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
33566         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
33567         headers, memory.h, stdlib.h, string.h, strings.h.
33568         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
33569         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
33570         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
33571         strchr.
33572         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
33573         headers, memory.h, string.h.
33574         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
33575         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
33576         free.
33577         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
33578         headers.
33579         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
33580         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
33581         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
33582         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
33583         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
33584
33585 2003-09-09  Paul Eggert  <eggert@twinsun.com>
33586
33587         More K&R removal.
33588
33589         * lib/acosl.c (main): Use a prototype.
33590         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
33591         tanl.c: Likewise.
33592
33593         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
33594
33595         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
33596         (getopt, etopt_long, getopt_long_only, _getopt_internal)
33597         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
33598         with a prototype.
33599         * lib/getopt.c (const): Remove macro.
33600         Include <string.h> unconditionally.
33601         (my_index): Remove; all uses changed to strchr.
33602         (strlen): Remove decl.
33603         (exchange): Remove forward decl; no longer needed.
33604         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
33605         Define with prototype.
33606         * lib/getopt1.c (const): Remove macro.
33607         (getopt_long, getopt_long_only, main): Define with prototype.
33608
33609         * lib/getugroups.c: Include <string.h> unconditionally.
33610
33611         * lib/getusershell.c: Include <stdlib.h> unconditionally.
33612         (getusershell, setusershell, endusershell, readname, main):
33613         Define with prototypes.
33614
33615         * lib/group-member.c: Include group-member.h first.
33616         Include <stdlib.h> unconditionally.
33617
33618         * lib/hard-locale.c: Include hard-locale.h first.
33619         Include <stdlib.h>, <string.h> unconditionally.
33620
33621         * lib/hash.c (free, malloc): Remove decls.
33622         Include <stdlib.h> unconditionally.
33623
33624         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
33625         (getenv): Do not declare.
33626
33627         * lib/idcache.c: Include <string.h> unconditionally.
33628
33629         * lib/long-options.c: Include long-options.h first, to test interface.
33630         Include <stdlib.h> unconditionally.
33631
33632         * lib/makepath.c: Include makepath.h first, to test interface.
33633         Include <stdlib.h> and <string.h> unconditionally.
33634
33635         * lib/linebuffer.c: Include <stdlib.h>.
33636         (free): Remove decl.
33637
33638         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
33639         stddef.h. rpl_malloc returns void *, not char *.
33640         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
33641         prototype.
33642
33643         * lib/md5.h: Include <limits.h> unconditionally.
33644         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
33645         (__P): Remove; all uses removed.
33646         * lib/md5.c: Include "md5.h" first.
33647         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
33648         md5_buffer, md5_process_bytes, md5_process_block):
33649         Define with prototypes.
33650         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
33651         * lib/sha.c: Include "sha.h" first.
33652         Include <stdlib.h>, <string.h> unconditionally.
33653
33654         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
33655         * lib/memcmp.c (__ptr_t): Likewise.
33656         * lib/memrchr.c (__ptr_t): Likewise.
33657         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
33658         Include <string.h> unconditionally.
33659         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
33660         * lib/memchr.c: Include <stdlib.h> unconditionally.
33661         * lib/memchr.c (LONG_MAX): Remove.
33662         * lib/memrchr.c (LONG_MAX): Likewise.
33663         * lib/memchr.c (__memchr): Define via a prototype.
33664         * lib/memrchr.c (__memrchr): Likewise.
33665         * lib/memcmp.c (__P): Remove, and remove all uses.
33666         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
33667         Remove forward decls; no longer needed.
33668         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
33669         Use types required by C89 in prototype.
33670
33671         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
33672         * lib/savedir.c: Likewise.
33673         * lib/mkdir.c (free): Remove decl.
33674         * lib/rmdir.c (rmdir): Define with a prototype.
33675         * lib/savedir.c: Include savedir.h first, to test interface.
33676
33677         * lib/mktime.c (STDC_HEADERS): Remove.
33678         Include <stdlib.h>, <string.h> unconditionally.
33679
33680         * lib/modechange.c: Include <stdlib.h> unconditionally.
33681         (malloc): Remove decl.
33682
33683         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
33684         (free): Remove decl.
33685
33686         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
33687         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
33688         (This type really should be intptr_t, but that's a C99ism.)
33689         (_obstack_memcpy): Remove: all uses changed to memcpy.
33690         Include <string.h> unconditionally.
33691         (struct obstack): Assume __STDC__ for types of members
33692         chunkfun, freefun, extra_arg.
33693         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
33694         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
33695         obstack_begin, obstack_specify_allocation,
33696         obstack_specify_allocation_with_arg, obstack_chunkfun,
33697         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
33698         Remove unprototyped decls and the macros that use them.
33699         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
33700         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
33701         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
33702         (defined __STDC__ && __STDC__)]:
33703         Remove nonprototyped code.
33704         Include <stdlib.h> unconditionally.
33705         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
33706         _obstack_allocated_p, _obstack_free, obstack_free,
33707         _obstack_memory_used, print_and_abort):
33708         Define using prototypes.
33709         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
33710         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
33711         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
33712         obstack_next_free, obstack_object_size, obstack_room) [0]:
33713         Remove unused, unprototyped code.
33714
33715         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
33716
33717         * lib/physmem.c (physmem_total, physmem_available, main): Define
33718         with prototypes.
33719
33720         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
33721         (main): Define with a prototype.
33722
33723         * lib/posixver.c (getenv): Remove decl.
33724
33725         * lib/putenv.c (malloc): Returns void *, not char *.
33726         Include <string.h> unconditionally.
33727         (strchr, memcpy, NULL): Do not define.
33728
33729         * lib/readtokens.c: Include readtokens.h first, to test interface.
33730         Include <stdlib.h>, <string.h> unconditionally.
33731         (init_tokenbuffer): Define with a prototype.
33732
33733         * lib/regex.c (PARAMS): Remove.  All uses removed.
33734         All uses of _RE_ARGS removed, too.
33735         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
33736         unconditionally.
33737         (bzero): Assume memset exists.
33738         (memcmp, memcpy, NULL): Remove.
33739         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
33740         char, or assignments to local vars of type signed char.
33741         (init_syntax_once, PREFIX(extract_number_and_incr),
33742         PREFIX(print_partial_compiled_pattern),
33743         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
33744         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
33745         PREFIX(regex_grow_registers), PREFIX(regex_compile),
33746         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
33747         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
33748         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
33749         wcs_compile_range, byte_compile_range, truncate_wchar,
33750         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
33751         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
33752         count_mbs_length, wcs_re_match_2_internal,
33753         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
33754         PREFIX(alt_match_null_string_p),
33755         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
33756         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
33757         regfree, PREFIX(extract_number)): Define with prototype.  Remove
33758         now-unnecessary declaration, if any.
33759         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
33760         regcomp, regexec):
33761         Remove now-unnecessary casts among pointer types.
33762         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
33763
33764         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
33765         (free): Remove decl.
33766
33767         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
33768
33769         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
33770         (free): Remove decl.
33771
33772         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
33773         * lib/xgetcwd.c: Likewise.
33774
33775         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
33776         (free): Remove decl.
33777
33778         * lib/strchrnul.c (strchrnul): Define with a prototype.
33779         Fix bug: c_in was not converted to char before searching.
33780
33781         The following changes are not K&R related:
33782
33783         * lib/group-member.h: Include <sys/types.h>, so that this file is
33784         self-contained.
33785         * lib/makepath.h: Likewise.
33786
33787         * lib/getusershell.c (readname, default_index, line_size, readname):
33788         Use size_t, not int, for sizes.
33789         (readname): If the size overflows, report an error instead of
33790         looping forever.
33791
33792 2003-09-09  Paul Eggert  <eggert@twinsun.com>
33793
33794         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
33795         libc.
33796
33797 2003-09-09  Paul Eggert  <eggert@twinsun.com>
33798
33799         * README: New section: portability guidelines.
33800
33801 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
33802
33803         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
33804         C89 spec.
33805
33806 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
33807
33808         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
33809
33810 2003-09-08  Paul Eggert  <eggert@twinsun.com>
33811
33812         Assume C89 or better; remove K&R cruft.
33813         A few of these changes were first proposed by Derek Robert Price
33814         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
33815
33816         * lib/addext.c: Include <string.h> unconditionally.
33817         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
33818         Don't declare getenv or malloc.
33819
33820         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
33821         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
33822         (NULL): Remove.
33823         (find_stack_direction, alloca): Use prototypes.
33824
33825         * lib/atexit.c (atexit): Define using a prototype.
33826
33827         * lib/basename.c, dirname.c, stripslash.c:
33828         Include <string.h> unconditionally.
33829
33830         * lib/bcopy.c: Include <stddef.h>.
33831         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
33832
33833         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
33834
33835         * lib/error.h (error, error_at_line, error_print_progname)
33836         [! (defined (__STDC__) && __STDC__)]: Remove decls.
33837         * lib/error.c: Include error.h first, to check interface.
33838         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
33839         (VA_START): Remove; all uses changeed to va_start.
33840         (exit, strerror): Remove decls.
33841         (error_print_progname): Prototype uncondionally.
33842         Don't include <errno.h>; no longer needed.
33843         (private_strerror): Remove.
33844         (error_tail): Always define.
33845         (error, error_at_line): Assume C89 or better; always use prototypes.
33846         * lib/fatal.c: Include "fatal.h" first, to test interface.
33847         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
33848         (VA_START): Remove; all uses changed to va_start.
33849         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
33850         this case.
33851         (exit): Remove decl.
33852         (fatal): Prototype unconditionally.  Assume va_start works.
33853         Abort at end, to pacify gcc.
33854
33855         * lib/euidaccess.c (main): Define with a prototype.
33856
33857         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
33858
33859         * lib/exitfail.c: Include <stdlib.h> unconditionally.
33860
33861         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
33862         prototypes.
33863         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
33864         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
33865         (getenv): Remove decl.
33866         (fnmatch): Define using a prototype.
33867         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
33868         (FCT): Define using a prototype.
33869
33870         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
33871
33872         * lib/gethostname.c: Include <stddef.h>.
33873         (gethostname): Define with prototype.  Length is size_t, not int.
33874
33875 2003-09-08  Paul Eggert  <eggert@twinsun.com>
33876
33877         Assume C89 or better; remove K&R cruft.
33878         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
33879         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
33880         string.h, getenv, malloc.
33881         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
33882         headers.
33883         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
33884         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
33885         do not check for strerror.
33886         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
33887         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
33888         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
33889         do not check for doprnt or vprintf.
33890         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
33891         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
33892
33893 2003-09-08  Paul Eggert  <eggert@twinsun.com>
33894
33895         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
33896         getversion.c should have been removed then, but was accidentally
33897         preserved.
33898
33899         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
33900         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
33901
33902 2003-09-08  Karl Berry  <karl@gnu.org>
33903
33904         * config/config.sub, config.guess, srclistvars.sh: update from savannah
33905                 config, forget about prep.
33906
33907         * config/depcomp, missing: update from automake.
33908
33909 2003-09-07  Paul Eggert  <eggert@twinsun.com>
33910
33911         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
33912         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
33913
33914 2003-09-07  Paul Eggert  <eggert@twinsun.com>
33915
33916         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
33917         copy_tm_result.  Bug reported by Simon Josefsson in
33918         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
33919
33920 2003-09-06  Paul Eggert  <eggert@twinsun.com>
33921
33922         * m4/time_r.m4: New file.
33923         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
33924         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
33925         is. Check for timegm declaration.
33926         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
33927         Do not check for gmtime_r.
33928         Replace mktime if __mktime_internal does not exist and if mktime
33929         hasn't been replaced already.
33930
33931 2003-09-06  Paul Eggert  <eggert@twinsun.com>
33932
33933         * lib/time_r.c, lib/time_r.h: New files.
33934
33935         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
33936         __localtime_r.
33937         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
33938         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
33939
33940         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
33941         __gmtime_r.
33942         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
33943         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
33944         Include <time_r.h>.
33945
33946         * lib/timegm.c: Switch to glibc implementation, with the following
33947         changes:
33948         [defined HAVE_CONFIG_H]: Include <config.h>.
33949         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
33950         (__mktime_internal) [!defined _LIBC]: New decl.
33951         (__gmtime_r) [!defined _LIBC]: New macro and function.
33952         (timegm): Use a prototype, since gnulib assumes C89.
33953         Do not bother declaring tmp to be const, as it's not really usefu.
33954         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
33955         (timegm): Declare only if HAVE_DECL_TIMEGM.
33956
33957 2003-09-06  Paul Eggert  <eggert@twinsun.com>
33958
33959         * MODULES.html.sh (func_all_modules): Add time_r.
33960         * modules/time_r: New file.
33961         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
33962         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
33963
33964 2003-09-03  Paul Eggert  <eggert@twinsun.com>
33965
33966         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
33967         Bug reported by Lute Kamstra in
33968         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
33969
33970         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
33971         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
33972         course with correspondingly smaller numbers for tomorrow and
33973         yesterday.  From Tadayoshi Funaba.  Originally installed into
33974         sh-utils on 1999-08-07, but the patch got lost (I guess during the
33975         coreutils merge?).
33976
33977 2003-08-31  Simon Josefsson  <jas@extundo.com>
33978
33979         * modules/timegm: New file.
33980         * MODULES.html.sh (func_all_modules): Add timegm.
33981
33982 2003-08-31  Simon Josefsson  <jas@extundo.com>
33983
33984         * m4/timegm.m4: New file.
33985
33986 2003-08-31  Simon Josefsson  <jas@extundo.com>
33987
33988         * lib/timegm.h: New file.
33989         * lib/timegm.c: New file.  Based on
33990         wget-1.8.2/src/http.c:mktime_from_utc.
33991
33992 2003-08-31  Karl Berry  <karl@gnu.org>
33993
33994         * lib/argp.h: update from libc.
33995
33996 2003-08-28  Bruno Haible  <bruno@clisp.org>
33997
33998         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
33999         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
34000         followed by '#define fnmatch fnmatch_posix' gives an error.
34001
34002 2003-08-28  Bruno Haible  <bruno@clisp.org>
34003
34004         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
34005         warning on QNX, which defines O_BINARY to 000000.
34006
34007 2003-08-27  Jim Meyering  <jim@meyering.net>
34008
34009         * m4/mkstemp.m4: Require that the system mkstemp be able to create
34010         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
34011         would fail after 32.  Reported by Danny Levinson.  Details here:
34012         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
34013
34014 2003-08-24  Bruno Haible  <bruno@clisp.org>
34015
34016         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
34017         MSVC7 <stdio.h> is included later.
34018
34019 2003-08-22  Simon Josefsson  <jas@extundo.com>
34020
34021         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
34022
34023 2003-08-20  Karl Berry  <karl@gnu.org>
34024
34025         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
34026
34027 2003-08-20  Bruno Haible  <bruno@clisp.org>
34028
34029         * modules/progname: New file.
34030         * MODULES.html.sh (func_all_modules): Add progname.
34031
34032 2003-08-20  Bruno Haible  <bruno@clisp.org>
34033
34034         * lib/progname.h: New file, from GNU gettext.
34035         * lib/progname.c: New file, from GNU gettext.
34036         * lib/progreloc.c: New file, from GNU gettext.
34037
34038 2003-08-19  Jim Meyering  <jim@meyering.net>
34039
34040         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
34041         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
34042
34043 2003-08-19  Bruno Haible  <bruno@clisp.org>
34044
34045         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
34046         more.
34047
34048 2003-08-19  Bruno Haible  <bruno@clisp.org>
34049
34050         * lib/xstrdup.c: Assume <string.h> exists.
34051
34052 2003-08-18  Paul Eggert  <eggert@twinsun.com>
34053
34054         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
34055         in makefile rules.
34056
34057 2003-08-18  Jim Meyering  <jim@meyering.net>
34058
34059         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
34060         * m4/lib-ld.m4: Likewise.
34061
34062 2003-08-18  Jim Meyering  <jim@meyering.net>
34063
34064         * lib/setenv.h: Indent nested cpp directive.
34065         * lib/vasnprintf.c: Remove trailing blanks.
34066
34067 2003-08-17  Simon Josefsson  <jas@extundo.com>
34068
34069         * modules/xstrndup: New file.
34070         * MODULES.html.sh (func_all_modules): Add xstrndup.
34071
34072 2003-08-17  Simon Josefsson  <jas@extundo.com>
34073
34074         * modules/argp: Fix autoconf macro name. Add more dependencies.
34075
34076 2003-08-17  Simon Josefsson  <jas@extundo.com>
34077
34078         * m4/xstrndup.m4: New file.
34079
34080 2003-08-17  Simon Josefsson  <jas@extundo.com>
34081
34082         * m4/argp.m4: New file.
34083
34084 2003-08-17  Simon Josefsson  <jas@extundo.com>
34085             Bruno Haible  <bruno@clisp.org>
34086
34087         * lib/xstrndup.h: New file.
34088         * lib/xstrndup.c: New file.
34089
34090 2003-08-17  Bruno Haible  <bruno@clisp.org>
34091
34092         * modules/strndup (Files, Include): Add lib/strndup.h.
34093
34094 2003-08-17  Bruno Haible  <bruno@clisp.org>
34095
34096         * modules/euidaccess (Files): Add lib/euidaccess.h.
34097
34098 2003-08-17  Bruno Haible  <bruno@clisp.org>
34099
34100         * lib/strndup.h: New file.
34101
34102 2003-08-17  Bruno Haible  <bruno@clisp.org>
34103
34104         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
34105         like AC_GNU_SOURCE.
34106         * modules/extensions (configure.ac): Comment out the invocation of
34107         gl_USE_SYSTEM_EXTENSIONS.
34108
34109 2003-08-16  Paul Eggert  <eggert@twinsun.com>
34110
34111         Merges from coreutils, etc.
34112         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
34113         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
34114         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
34115         fixing a typo.
34116         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
34117         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
34118
34119 2003-08-16  Paul Eggert  <eggert@twinsun.com>
34120
34121         Document merge from coreutils.
34122         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
34123         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
34124         * modules/utime: Add m4/utimes-null.m4.
34125
34126 2003-08-16  Paul Eggert  <eggert@twinsun.com>
34127
34128         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
34129         space, undoing this 2003-08-12 change:
34130         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
34131
34132 2003-08-16  Paul Eggert  <eggert@twinsun.com>
34133
34134         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
34135         strtoul.c from libc, undoing this 2003-08-12 change:
34136         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
34137
34138 2003-08-16  Jim Meyering  <jim@meyering.net>
34139
34140         Merges from coreutils.
34141         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
34142         prefix.  Adjust cache variables similarly.  Create 500 rather than
34143         just 300 files, to exercise bug on Darwin6.5, too.
34144         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
34145         $missing_dir.
34146         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
34147         AM_SYS_POSIX_TERMIOS.
34148         Reported by mkc@mathdogs.com.
34149         Also change use of $am_cv_sys_posix_termios
34150         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
34151         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
34152         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
34153         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
34154         in /proc/mounts until it finds one with matching device number.  This
34155         is unnecessary when the FILE argument *is* a mount point.  No stat call
34156         is necessary in that case.  So, disable the statvfs-testing code on
34157         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
34158         as RedHat bug# 84846.
34159         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
34160         to 1MB, so as not to render systems with no stack size limit (e.g.,
34161         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
34162         Include <unistd.h>.  On some systems,
34163         it is required for the definition of _SC_PAGESIZE.
34164
34165 2003-08-16  Jim Meyering  <jim@meyering.net>
34166
34167         Merge from coreutils.
34168         * lib/xstrtoimax.c: #else #if -> #elif.
34169         * lib/xstrtoumax.c: Likewise.
34170
34171 2003-08-16  Jim Meyering  <jim@meyering.net>
34172
34173         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
34174         * m4/utimes.m4: Removed.
34175         * m4/utimes-null.m4: Renamed from utimes.m4.
34176
34177         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
34178         to 1MB, so as not to render systems with no stack size limit (e.g.,
34179         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
34180         Include <unistd.h>.  On some systems,
34181         it is required for the definition of _SC_PAGESIZE.
34182
34183 2003-08-16  Jim Meyering  <jim@meyering.net>
34184         and Paul Eggert  <eggert@cs.ucla.edu>
34185
34186         Merges from coreutils, etc.
34187
34188         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
34189         using the latest version from cvs.  This avoids problems with #line
34190         directives using a vendor (Sun) compiler.
34191         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
34192         Don't set GETGROUPS_LIB here; now it's
34193         done via getgroups.m4's wrapper function.
34194         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
34195         rather than just in sh-util/configure.in, so that the
34196         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
34197         same.
34198         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
34199         AC_FUNC_GETLOADAVG where to find getloadavg.c.
34200         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
34201         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
34202         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
34203         Remove code that is now done by the newly-required macros.
34204         Append $(EXEEXT) to DF_PROG.
34205         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
34206         Do not invoke or require the following here,
34207         since prereq.m4 or some gnulib .m4 now does this for us:
34208         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
34209         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
34210         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
34211         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
34212         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
34213         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
34214         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
34215         AC_FUNC_OBSTACK.
34216         Do not replace the following functions, as this is now the job
34217         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
34218         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
34219         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
34220         atexit getpass, strdup, getpagesize.
34221         Replace 'raise'.
34222         Do not check for the following functions, as this is now the job
34223         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
34224         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
34225         setregid.
34226         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
34227         Check for sys/sysctl.h.
34228         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
34229         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
34230         of checking for ssize_t ourselves.
34231
34232         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
34233         Require every macro that gnulib/modules/* suggests for us.
34234         (jm_PREREQ_ADDEXT): New macro.
34235         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
34236         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
34237
34238         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
34239         (gl_PHYSMEM): Use it.
34240         Also check for `table' function.
34241         Check for new headers and functions.
34242         Add check for sys/sysmp.h.
34243         With suggestions from Kaveh Ghazi.
34244         Ignore headers that are present but cannot be compiled.  This
34245         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
34246         C 5.4.
34247
34248 2003-08-15  Paul Eggert  <eggert@twinsun.com>
34249
34250         Document merge from coreutils.
34251         * modules/userspec: Depend on posixver.
34252         * modules/strftime: Depend on tzset.
34253
34254 2003-08-15  Paul Eggert  <eggert@twinsun.com>
34255
34256         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
34257         rather than tab, after '#' in shell-script copyright notices.
34258         Suggested by Bruno Haible.
34259
34260 2003-08-15  Paul Eggert  <eggert@twinsun.com>
34261
34262         * config/srclist-update: Use three spaces, rather than tab, after '#'
34263         in shell-script copyright notices.  Suggested by Bruno Haible.
34264         Remove unnecessary parenthesization in regular expression.
34265
34266 2003-08-15  Jim Meyering  <jim@meyering.net>
34267
34268         Merge from coreutils.
34269         * lib/xgethostname.c: Include <stdlib.h>.
34270         (xghostname): Don't exit for anything other than memory-related
34271         failure; just return NULL.
34272         * lib/userspec.c: Include "posixver.h".
34273         (parse_user_spec): Accept `.' as a separator only
34274         in pre-POSIX-200112 mode.
34275         * lib/strtoimax.c: Use #elif rather than #else #if.
34276         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
34277         Remove function, now that we can rely on a working tzset function.
34278         [!_LIBC]: Ensure that the required autoconf test has been run.
34279         [!defined _NL_CURRENT && HAVE_STRFTIME]:
34280         Use underlying_strftime for %r.
34281         * lib/sha.c: Merge in some clean-up and optimization changes from
34282         glibc.
34283         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
34284         Ensure that it is a multiple of 64.
34285         Rearrange loop exit tests so as to avoid performing an
34286         additional fread after encountering an error or EOF.
34287         * lib/realloc.c: Update copyright date.
34288
34289 2003-08-15  Jim Meyering  <jim@meyering.net>
34290         and Paul Eggert  <eggert@twinsun.com>
34291
34292         Merge from coreutils.
34293         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
34294         member but strut utmpx does not.  Needed for AIX 4.3.3.
34295         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
34296
34297 2003-08-15  Jim Meyering  <jim@meyering.net>
34298         and Paul Eggert  <eggert@cs.ucla.edu>
34299
34300         Merges from coreutils, etc.
34301         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
34302         Require gl_FUNC_TZSET_CLOBBER.
34303         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
34304         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
34305         members.
34306
34307 2003-08-14  Paul Eggert  <eggert@twinsun.com>
34308
34309         Help the merge from coreutils.
34310         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
34311         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
34312         * m4/tzset.m4: Use it too.
34313
34314 2003-08-14  Paul Eggert  <eggert@twinsun.com>
34315
34316         * modules/tzset: New file.
34317
34318 2003-08-14  Jim Meyering  <jim@meyering.net>
34319
34320         Merges from coreutils.
34321         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
34322         variable names, rather than @FNMATCH_H@.
34323         * modules/alloca: Likewise for $(ALLOCA_H).
34324
34325         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
34326         the three copies of the literal target, `fnmatch.h'.
34327         * modules/alloca (alloca.h): Likewise.
34328
34329 2003-08-14  Jim Meyering  <jim@meyering.net>
34330
34331         Merge from coreutils.
34332         * m4/tzset.m4: New file.
34333         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
34334         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
34335         otherwise, AIX 5.1 systems would end up using the latter.
34336         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
34337         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
34338         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
34339         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
34340
34341 2003-08-14  Jim Meyering  <jim@meyering.net>
34342
34343         Merge from coreutils.
34344         * lib/obstack.h: Whitespace changes.
34345         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
34346         and xcalloc return values.
34347         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
34348         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
34349         hang on OSF/1 5.1 for DIR on both local and remote file systems.
34350         Reported by (and fix confirmed by) Nelson H. F. Beebe.
34351         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
34352         error from mntctl.
34353         Use mntctl's return value to drive the entry-processing loop, since
34354         we can't rely on the value of the vmt_length member in the last
34355         entry.  On some systems doing so could result in exhausting
34356         virtual memory.  Based in part on a patch from Mike Jetzer.
34357
34358 2003-08-14  Jim Meyering  <jim@meyering.net>
34359         and Paul Eggert  <eggert@twinsun.com>
34360
34361         Merges from coreutils, plus other fixes.
34362         * lib/physmem.c: Merge in portability changes from gcc/libiberty
34363         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
34364         for credits and details.  Thanks to Kaveh Ghazi for helping
34365         to keep these files in sync.
34366         (ARRAY_SIZE): Define it.
34367         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
34368         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
34369         (memcasecmp): Don't assume size_t fits in unsigned int.
34370         Remove casts and duplicate code.
34371         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
34372         (memcpy): Remove definition.
34373         Merge in some clean-up and optimization changes from glibc.
34374         [BLOCKSIZE]: Move definition to top of file.
34375         Ensure that it is a multiple of 64.
34376         Rearrange loop exit tests so as to avoid performing an
34377         additional fread after encountering an error or EOF.
34378         * lib/md5.h (md5_uintptr): Define.
34379         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
34380         return to the initial working directory.  Preserve errno
34381         for caller.
34382         * lib/idcache.c: Include "xalloc.h".
34383         (xmalloc, xrealloc): Remove decls.
34384         (getuser): Remove casts no longer required in C89.
34385         * lib/human.c: Include stdio.h, for sprintf.
34386         * lib/group-member.c: Include "xalloc.h".
34387         (xmalloc, xrealloc): Remove decls.
34388         (get_group_info): Remove casts no longer required in C89.
34389         * lib/getusershell.c (readname): Remove casts no longer required in
34390         C89.
34391         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
34392         * lib/getline.c: Whitespace fix, from coreutils.
34393
34394 2003-08-13  Paul Eggert  <eggert@twinsun.com>
34395
34396         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
34397         Check for isascii.
34398
34399         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
34400         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
34401         Undo previous (whitespace-only) change.
34402
34403 2003-08-13  Paul Eggert  <eggert@twinsun.com>
34404
34405         * lib/exclude.c: Include <ctype.h>
34406         (IN_CTYPE_DOMAIN): New macro.
34407         (is_space): New fn.
34408         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
34409         and empty lines.
34410
34411         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
34412         Undo previous (whitespace-only) change.
34413
34414 2003-08-13  Paul Eggert  <eggert@twinsun.com>
34415
34416         * config/srclist-update: Change update back to the old behavior,
34417         leaving whitespace alone.  Use one 'sed' command rather than a
34418         pipeline.
34419         (fixlicense): Now a variable, not a function.
34420         (remove_trailing_blanks): Remove.
34421         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
34422         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
34423         Undo previous (whitespace-only) change.
34424
34425 2003-08-12  Paul Eggert  <eggert@twinsun.com>
34426
34427         Merge from coreutils.
34428         * modules/euidaccess: Add lib_SOURCES, include for new
34429         file euidaccess.h
34430
34431 2003-08-12  Paul Eggert  <eggert@twinsun.com>
34432
34433         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
34434         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
34435         Normalize leading white space and remove trailing white space.
34436
34437         Merge from coreutils
34438         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
34439
34440         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
34441         0.12.1.  These files are now being upgraded automatically by
34442         ../config/srclist-update.
34443
34444 2003-08-12  Paul Eggert  <eggert@twinsun.com>
34445
34446         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
34447         Normalize leading white space and remove trailing white space.
34448         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
34449         notice, as per ../config/srclist-update.
34450
34451         Merge from coreutils.
34452         * lib/euidaccess.h: New file.
34453         * lib/euidaccess.c: Include it.
34454         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
34455         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
34456         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
34457
34458 2003-08-12  Paul Eggert  <eggert@twinsun.com>
34459
34460         * config/srclist-update: Add copyright notice.
34461         (remove_id_lines, remove_trailing_blanks): New constants.
34462         (fixfile): Use them to normalize spacing a bit in copied files.
34463         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
34464         Normalize leading white space and remove trailing white space.
34465
34466         * config/texinfo.tex: Sync with texinfo.
34467
34468         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
34469         strtoul.c from libc, to merge coreutils whitespace changes.
34470
34471         * config/srclist.txt: Get the following m4 files from gettext:
34472         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
34473         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
34474         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
34475         wint_t.m4.
34476
34477 2003-08-12  Karl Berry  <karl@gnu.org>
34478
34479         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
34480         been made.
34481
34482 2003-08-11  Paul Eggert  <eggert@twinsun.com>
34483
34484         * modules/gnu-source, m4/gnu-source.m4:
34485         Remove; we're assuming Autoconf 2.54 or later now.
34486         Suggested by Bruno Haible.
34487         * MODULES.html.sh (func_all_modules): Remove gnu-source.
34488
34489 2003-08-11  Bruno Haible  <bruno@clisp.org>
34490
34491         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
34492
34493 2003-08-11  Bruno Haible  <bruno@clisp.org>
34494
34495         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
34496         (vasnprintf): Use it instead of wcslen.
34497
34498 2003-08-11  Bruno Haible  <bruno@clisp.org>
34499
34500         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
34501         value to ensure that _Bool promotes to int. Use #define for _Bool when
34502         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
34503
34504 2003-08-10  Karl Berry  <karl@gnu.org>
34505
34506         * lib/regex.h: update from libc (whitespace fix).
34507
34508 2003-08-09  Paul Eggert  <eggert@twinsun.com>
34509
34510         Merge some files from coreutils.  These changes were
34511         originally made by Jim Meyering.
34512         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
34513         many older Unixes require this.
34514         * lib/alloca.c (alloca): Remove cast to argument of free;
34515         no longer needed in C89.
34516         * lib/alloca_.h, regex.h: Fix white space to match
34517         what GNU indent does.
34518
34519 2003-08-09  Paul Eggert  <eggert@twinsun.com>
34520
34521         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
34522         apparently Emacs's Unicode mode got confused before my 2003-08-05
34523         checkin.
34524
34525 2003-08-08  Paul Eggert  <eggert@twinsun.com>
34526
34527         * m4/extensions.m4: New file.
34528         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
34529         Require gl_USE_SYSTEM_EXTENSIONS.
34530         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
34531         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
34532
34533 2003-08-08  Paul Eggert  <eggert@twinsun.com>
34534
34535         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
34536         * modules/extensions, modules/gnu-source: New files.
34537         * modules/timespec, modules/unlocked-io: Depend on extensions.
34538
34539 2003-08-07  Paul Eggert  <eggert@twinsun.com>
34540
34541         * modules/restrict: New file.
34542         * MODULES.html.sh (func_all_modules): Add restrict.
34543         * modules/regex: Depend on restrict.
34544
34545 2003-08-07  Paul Eggert  <eggert@twinsun.com>
34546
34547         * m4/restrict.m4: New file.
34548         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
34549
34550 2003-08-07  Bruno Haible  <bruno@clisp.org>
34551
34552         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
34553         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
34554
34555 2003-08-07  Bruno Haible  <bruno@clisp.org>
34556
34557         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
34558         makes the module 'getndelim2' compatible with the module 'getline'.
34559
34560 2003-08-05  Paul Eggert  <eggert@twinsun.com>
34561
34562         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
34563         byte with "\201" to avoid glitches when editing that source file
34564         with multi-gnome-terminal.
34565
34566 2003-08-05  Paul Eggert  <eggert@twinsun.com>
34567
34568         * lib/bumpalloc.h: Remove.
34569
34570 2003-08-05  Paul Eggert  <eggert@twinsun.com>
34571
34572         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
34573         * modules/bumpalloc: Remove.
34574
34575 2003-08-04  Paul Eggert  <eggert@twinsun.com>
34576
34577         * lib/getloadavg.c: Change copyright notice and spacing to conform to
34578         GNU coding style.
34579
34580         Merge from coreutils.
34581         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
34582         1. From glibc.
34583         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
34584         from Karl Berry, implemented by Jim Meyering.
34585         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
34586         from Dmitry V. Levin.
34587         Remove anachronistic cast of xrealloc.
34588         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
34589         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
34590         type. Otherwise, it wouldn't compile with at least /bin/cc on
34591         ymp-cray-unicos9.0.2.X.
34592         Combine two mostly-identical uses of alloca into one.
34593         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
34594
34595 2003-08-04  Dave Love  <d.love@dl.ac.uk>
34596
34597         [From Emacs.]
34598
34599         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
34600         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
34601         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
34602         obsolete NLIST_NAME_UNION.
34603         [__GNU__]: Undef BSD and FSCALE.
34604         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
34605
34606 2003-08-03  Paul Eggert  <eggert@twinsun.com>
34607
34608         * lib/stdbool_.h (_Bool): Make it signed char, instead of
34609         an enum type, so that it's guaranteed to promote to int.  See:
34610         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
34611
34612 2003-08-03  Karl Berry  <karl@gnu.org>
34613
34614         * config/depcomp: update from automake.
34615
34616 2003-07-31  Paul Eggert  <eggert@twinsun.com>
34617
34618         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
34619         (strerror): Don't assume that a printable int fits in 14 bytes.
34620
34621 2003-07-31  Bruno Haible  <bruno@clisp.org>
34622
34623         * modules/getpass-gnu: New file.
34624         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
34625
34626 2003-07-31  Bruno Haible  <bruno@clisp.org>
34627
34628         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
34629
34630 2003-07-24  Karl Berry  <karl@gnu.org>
34631
34632         * config/missing: update from automake.
34633
34634 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
34635             Bruno Haible  <bruno@clisp.org>
34636
34637         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
34638         * lib/getline.c (getline, getdelim): Likewise.
34639         Remove _GNU_SOURCE define; now it's defined in config.h through
34640         m4/getline.m4.
34641
34642 2003-07-23  Karl Berry  <karl@gnu.org>
34643
34644         * config/config.sub: update from prep.
34645
34646 2003-07-22  Paul Eggert  <eggert@twinsun.com>
34647
34648         * modules/xalloc (Depends-on): Add exitfail.
34649         * modules/xmemcoll: Likewise.
34650
34651 2003-07-22  Paul Eggert  <eggert@twinsun.com>
34652
34653         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
34654         over-parenthesization in macros.
34655
34656         Sync with coreutils.
34657
34658         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
34659         required by C99.
34660
34661         Use `exit_failure' for xalloc and xmemcoll instead of their own
34662         private exit-failure variables.
34663         * lib/xalloc.h (xalloc_exit_failure): Remove.
34664         * lib/xmalloc.c: Likewise.  Include exitfail.h.
34665         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
34666         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
34667         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
34668         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
34669
34670 2003-07-20  Jim Meyering  <jim@meyering.net>
34671
34672         * modules/closeout (Depends-on): Add exitfail.
34673         Suggestion from Bruno Haible.
34674
34675 2003-07-19  Karl Berry  <karl@gnu.org>
34676
34677         * config/config.sub: update from prep.
34678
34679 2003-07-18  Paul Eggert  <eggert@twinsun.com>
34680
34681         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
34682         Remove.
34683         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
34684         to test that it can stand by itself.  Include "exitfail.h".
34685         Clients should set exit_failure instead.
34686         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
34687
34688 2003-07-18  Bruno Haible  <bruno@clisp.org>
34689
34690         * modules/getndelim2: New file.
34691         * modules/getline: Share files with module getndelim2.
34692         * modules/getnline: Depend on getndelim2 instead of sharing files with
34693         it. Add getnline.c to lib_SOURCES.
34694         * MODULES.html.sh (func_all_modules): Add getndelim2.
34695
34696 2003-07-18  Bruno Haible  <bruno@clisp.org>
34697
34698         * m4/getndelim2.m4: New file.
34699         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
34700         invoke gl_PREREQ_GETNDELIM2.
34701         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
34702         gl_PREREQ_GETNDELIM2.
34703         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
34704         gl_GETNDELIM2.
34705
34706 2003-07-18  Bruno Haible  <bruno@clisp.org>
34707
34708         * lib/getndelim2.h: New file.
34709         * lib/getndelim2.c: Make into a module of its own. Include config.h,
34710         getndelim2.h.
34711         (getndelim2): Make non-static. Change return type to ssize_t.
34712         * lib/getline.h: Change argument names.
34713         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
34714         * lib/getnline.c: Include getndelim2.h.
34715
34716 2003-07-18  Andreas Schwab  <schwab@suse.de>
34717
34718         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
34719
34720 2003-07-17  Karl Berry  <karl@gnu.org>
34721
34722         * config/config.sub: update from prep.
34723
34724 2003-07-17  Bruno Haible  <bruno@clisp.org>
34725
34726         * modules/getnline: New file.
34727         * modules/getline: Add lib/getndelim2.c to source file list.
34728         * MODULES.html.sh (func_all_modules): Add getnline.
34729
34730 2003-07-17  Bruno Haible  <bruno@clisp.org>
34731
34732         * m4/getnline.m4: New file.
34733
34734 2003-07-17  Bruno Haible  <bruno@clisp.org>
34735
34736         * m4/Makefile.am.in: Remove file.
34737         * m4/Makefile.am: Remove file.
34738         * m4/Makefile.in: Remove file.
34739
34740 2003-07-17  Bruno Haible  <bruno@clisp.org>
34741
34742         * lib/getnline.h: New file.
34743         * lib/getnline.c: New file.
34744         * lib/getndelim2.c: New file, extracted from getline.c.
34745         (getndelim2): Renamed from getdelim2, with added nmax argument.
34746         * lib/getline.c: Include getndelim2.c.
34747         (getdelim2): Moved out to getndelim2.c.
34748         (getline, getdelim): Update.
34749
34750 2003-07-17  Bruno Haible  <bruno@clisp.org>
34751
34752         * lib/Makefile.am: Remove file.
34753         * lib/Makefile.in: Remove file.
34754
34755 2003-07-17  Bruno Haible  <bruno@clisp.org>
34756
34757         * configure.in: Remove file.
34758         * Makefile.in: Remove file.
34759
34760 2003-07-17  Bruno Haible  <bruno@clisp.org>
34761
34762         * MODULES.html.sh: Put the </BODY> right before </HTML>.
34763
34764 2003-07-16  Karl Berry  <karl@gnu.org>
34765
34766         * config/srclist-update: was running fixlicense twice, which caused
34767                 texinfo.tex to be nullified for some reason.  Simplify,
34768                 $gplsrc is no longer needed as far as I can see?
34769
34770 2003-07-16  Jim Meyering  <jim@meyering.net>
34771
34772         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
34773
34774 2003-07-15  Paul Eggert  <eggert@twinsun.com>
34775
34776         * config/srclist.txt: Get the following files from gettext-runtime/intl
34777         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
34778         ref-del.sin.  From Bruno Haible.
34779         * config/srclist-update (fixfile): Change grep pattern again, since the
34780         previous fix didn't work (there was another trailing $).  Use
34781         '[$]' to escape the $s.
34782
34783 2003-07-15  Karl Berry  <karl@gnu.org>
34784
34785         * lib/vasnprintf.c: update from gettext.
34786
34787 2003-07-15  Karl Berry  <karl@gnu.org>
34788
34789         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
34790         gets expanded when surrounded by '$'.
34791
34792 2003-07-15  Jim Meyering  <jim@meyering.net>
34793
34794         * modules/save-cwd: Don't depend on error.  From Derek Price.
34795
34796 2003-07-15  Jim Meyering  <jim@meyering.net>
34797
34798         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
34799
34800 2003-07-14  Simon Josefsson  <jas@extundo.com>
34801
34802         * modules/mempcpy: New file.
34803         * MODULES.html.sh (func_all_modules): Add mempcpy.
34804
34805 2003-07-14  Simon Josefsson  <jas@extundo.com>
34806
34807         * m4/mempcpy.m4: New file.
34808
34809 2003-07-14  Simon Josefsson  <jas@extundo.com>
34810
34811         * lib/mempcpy.h: New file.
34812         * lib/mempcpy.c: New file.
34813
34814 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34815
34816         * modules/getdate, modules/posixtm: Depend on mktime.
34817
34818 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34819
34820         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
34821         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
34822         unicodeio.c, unicodeio.h, unlocked-io.h:
34823         Switch from LGPL to GPL.
34824
34825 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34826
34827         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
34828         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
34829         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
34830         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
34831         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
34832         updated automatically by ../config/srclist-update.  This changes
34833         their license from LPGL to GPL.
34834
34835 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34836
34837         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
34838         assumed to refer to the root of the most recent stable gettext version.
34839         * config/srclistvars.sh: Add defaults for eggert.
34840         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
34841         Match "This program" as well as "The program".  This is needed
34842         for gettext.
34843
34844 2003-07-14  Jim Meyering  <jim@meyering.net>
34845
34846         Don't emit diagnostics.  Let callers do that.
34847         * lib/save-cwd.c: Don't include "error.h".
34848         (save_cwd): Don't call error.  Ensure that errno is valid
34849         when returning nonzero.
34850
34851         * lib/save-cwd.h (restore_cwd): Update prototype.
34852         * lib/save-cwd.c (restore_cwd): Remove two parameters.
34853         Simplify.  Don't call error upon failure.  Let callers do that.
34854         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
34855         when auditing is enabled.  But don't bother updating the #if.
34856
34857 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
34858
34859         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
34860         it breaks C++ compilation.
34861         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
34862
34863 2003-07-10  Simon Josefsson  <jas@extundo.com>
34864
34865         * modules/strchrnul (Makefile.am): Add strchrnul.h.
34866
34867 2003-07-10  Jim Meyering  <jim@meyering.net>
34868
34869         * m4/clock_time.m4: Remove trailing blank.
34870         * m4/intmax_t.m4: Likewise.
34871
34872 2003-07-10  Jim Meyering  <jim@meyering.net>
34873
34874         * lib/vasnprintf.c: Remove trailing blanks.
34875         Make cpp indentation consistent.
34876
34877 2003-07-09  Paul Eggert  <eggert@twinsun.com>
34878
34879         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
34880         posixver.c, strftime.c, strnlen.c, strverscmp.c:
34881         Switch from LGPL to GPL.
34882
34883 2003-07-09  Paul Eggert  <eggert@twinsun.com>
34884
34885         * config/srclist.txt: Sort sublists.  Add
34886         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
34887         that differ from gnulib for one reason or another; we'd like this list
34888         to be smaller but for now let's document what we have.
34889
34890 2003-07-08  Paul Eggert  <eggert@twinsun.com>
34891
34892         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
34893         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
34894         and sweeter "eval x=$x".
34895         * config/srclist.txt: Get lib/argp* from glibc.
34896
34897 2003-07-07  Paul Eggert  <eggert@twinsun.com>
34898
34899         * lib/mktime.c: Fix some boundary cases and remove need for floating
34900         point.
34901
34902         Issue a compile-time diagnostic if time_t is floating point, or if
34903         two's complement arithmetic is not in effect, or if arithmetic
34904         right shift does not propagate the sign.  These assumptions were
34905         all in the original code but they weren't checked.
34906
34907         (TIME_T_MIDPOINT, verify): New macros.
34908         (__isleap): Remove; it has integer overflow problems.
34909         (leapyear): New function, without those problems.
34910         (ydhms_tm_diff): Remove; splitting into two parts.
34911         (ydhms_diff): New function, containing the arithmetic part of
34912         the old ydhms_tm_diff function.  Issue a compile-time
34913         diagnostic if we are not using C99 integer division.
34914         Avoid casts when possible.
34915         (guess_time_tm): New function, containing the checking part of
34916         the old ydhms_tm_diff function.  Return the new value, rather than
34917         the difference between it and the old.  Accept a new argument T
34918         so that *T specifies the old value.  Check for overflow in the result.
34919
34920         (__mktime_internal): Use a time_t offset, not a long int offset.
34921         This undoes the 2003-06-04 change, which is no longer needed now
34922         that we have better overflow checking.
34923         (localtime_offset): Likewise.
34924
34925         (__mktime_internal): Avoid harmful overflow on hosts where time_t
34926         and long are 64-bit but int is only 32-bit.
34927         (ydhms_diff): Use long int to store year1 and yday1.
34928         Issue a compile-time diagnostic if long int is not wide enough.
34929
34930         (__mktime_internal): Use long int to store adjusted year and yday.
34931         Use plain C rather than preprocessor commands, if that doesn't
34932         affect efficiency.
34933         Check for overflow (and try to repair) after each probe
34934         rather than checking only at the very end.  This avoids some bugs
34935         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
34936         does not equal GMT offset at maximum time).
34937         Use integer to check for overflow rather than floating point; this
34938         is more portable to non-IEEE hosts, and is a tad faster.
34939         When we detect that we are oscillating between two values,
34940         don't check whether tm_isdst has the requested value, since
34941         we already know the answer.  When tm_isdst has the wrong value,
34942         use a different heuristic to find the right one, based on the
34943         extreme values actually observed in practice in tz2003a,
34944         rather than the (overly optimistic) "previous 3 calendar quarters".
34945
34946         (not_equal_tm, print_tm, check_result): Use "const T" rather than
34947         "T const" to accommodate glibc style.
34948         (check_result): Use less-confusing report format.  "long" -> "long int.
34949         (main): Likewise.
34950         Don't loop if the iteration overflows time_t.
34951         Allow a negative step in the iteration.
34952
34953 2003-07-06  Karl Berry  <karl@gnu.org>
34954
34955         * config/depcomp: update from automake.
34956         * config/config.sub: update from prep.
34957
34958 2003-07-03  Karl Berry  <karl@gnu.org>
34959
34960         * config/config.guess: update from prep.
34961
34962 2003-07-01  Paul Eggert  <eggert@twinsun.com>
34963
34964         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
34965         xreadlink.c now includes it unconditionally.
34966
34967 2003-07-01  Paul Eggert  <eggert@twinsun.com>
34968
34969         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
34970         having it depend on HAVE_SYS_TYPES_H.
34971
34972 2003-07-01  Bruno Haible  <bruno@clisp.org>
34973
34974         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
34975         <sys/types.h> should be sufficient.
34976         Reported by Paul Eggert.
34977
34978 2003-06-26  Karl Berry  <karl@gnu.org>
34979
34980         * config/depcomp: update from automake.
34981
34982 2003-06-26  Bruno Haible  <bruno@clisp.org>
34983
34984         * modules/human: Depend on module stdbool.
34985
34986 2003-06-25  Bruno Haible  <bruno@clisp.org>
34987
34988         * modules/readlink: New file.
34989         * modules/xreadlink: Depend on it.
34990         * MODULES.html.sh (func_all_modules): Add readlink.
34991
34992 2003-06-25  Bruno Haible  <bruno@clisp.org>
34993
34994         * m4/readlink.m4: New file.
34995
34996 2003-06-25  Bruno Haible  <bruno@clisp.org>
34997
34998         * lib/readlink.c: New file.
34999
35000 2003-06-22  Karl Berry  <karl@gnu.org>
35001
35002         * config/srclist.txt: update mkinstalldirs from automake.
35003         * config/mkinstalldirs: update.
35004
35005 2003-06-22  Bruno Haible  <bruno@clisp.org>
35006
35007         Portability to mingw32.
35008         * m4/ssize_t.m4: New file, from GNU gettext.
35009         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
35010         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
35011
35012 2003-06-22  Bruno Haible  <bruno@clisp.org>
35013
35014         * modules/safe-read: Add m4/ssize_t.m4.
35015         * modules/xreadlink: Add m4/ssize_t.m4.
35016
35017 2003-06-20  Bruno Haible  <bruno@clisp.org>
35018
35019         Assume C89, so PARAMS isn't needed.
35020         * lib/unicodeio.h (PARAMS): Remove.
35021         * lib/unicodeio.c: Don't use PARAMS.
35022
35023 2003-06-18  Karl Berry  <karl@gnu.org>
35024
35025         * config/config.{guess,sub}: update from prep.
35026
35027 2003-06-18  Jim Meyering  <jim@meyering.net>
35028
35029         Merge changes from coreutils.
35030         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
35031         Remove explicit declarations of xmalloc and realloc.
35032         Include xalloc.h.
35033         (read_utmp): Remove anachronistic cast of xmalloc.
35034
35035 2003-06-17  Paul Eggert  <eggert@twinsun.com>
35036
35037         Assume C89, so PARAMS isn't needed.
35038         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
35039         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
35040         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
35041         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
35042         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
35043         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
35044         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
35045         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
35046         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
35047         lib/xstrtod.h, lib/xstrtol.h: Likewise.
35048         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
35049         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
35050         no longer needed. Anyway, config.h should always be included before any
35051         other file.
35052
35053 2003-06-11  Simon Josefsson  <jas@extundo.com>
35054
35055         * modules/sysexits: New file.
35056         * MODULES.html.sh (func_all_modules): Add sysexits.
35057
35058 2003-06-11  Simon Josefsson  <jas@extundo.com>
35059
35060         * lib/sysexit_.h: New file.
35061
35062 2003-06-11  Derek Price  <derek@ximbiot.com>
35063
35064         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
35065         necessary.
35066
35067 2003-06-11  Bruno Haible  <bruno@clisp.org>
35068
35069         * m4/sysexits.m4: New file.
35070
35071 2003-06-10  Simon Josefsson  <jas@extundo.com>
35072
35073         * lib/argp.h: New file, from glibc.
35074         * lib/argp-ba.c: New file, from glibc.
35075         * lib/argp-eexst.c: New file, from glibc.
35076         * lib/argp-fmtstream.c: New file, from glibc.
35077         * lib/argp-fmtstream.h: New file, from glibc.
35078         * lib/argp-fs-xinl.c: New file, from glibc.
35079         * lib/argp-help.c: New file, from glibc.
35080         * lib/argp-namefrob.h: New file, from glibc.
35081         * lib/argp-parse.c: New file, from glibc.
35082         * lib/argp-pv.c: New file, from glibc.
35083         * lib/argp-pvh.c: New file, from glibc.
35084         * lib/argp-xinl.c: New file, from glibc.
35085
35086 2003-06-10  Simon Josefsson  <jas@extundo.com>
35087
35088         * modules/strchrnul: New file.
35089
35090 2003-06-10  Simon Josefsson  <jas@extundo.com>
35091
35092         * modules/argp: New file.
35093
35094 2003-06-10  Simon Josefsson  <jas@extundo.com>
35095
35096         * m4/strchrnul.m4: New file.
35097
35098 2003-06-10  Simon Josefsson  <jas@extundo.com>
35099
35100         * lib/strchrnul.h: New file.
35101         * lib/strchrnul.c: New file.
35102
35103 2003-06-10  Bruno Haible  <bruno@clisp.org>
35104
35105         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
35106
35107 2003-06-07  Karl Berry  <karl@gnu.org>
35108
35109         * config/config.{guess,sub}: update from prep.
35110
35111 2003-06-07  Jim Meyering  <jim@meyering.net>
35112
35113         * modules/strtod: Use $(...) notation, not @...@ for
35114         AC_REPLACE'd variables.
35115         * modules/localcharset: Likewise.
35116
35117 2003-06-07  Jim Meyering  <jim@meyering.net>
35118
35119         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
35120         in place of my name in the copyright comment.
35121         Remove definition and uses of __P.
35122
35123         From coreutils.
35124         * lib/stat.c: Don't declare xmalloc explicitly.
35125         Instead, include "xalloc.h".
35126         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
35127         xrealloc, and xcalloc return values.
35128         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
35129         Improve comment.
35130         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
35131
35132 2003-06-07  Bruno Haible  <bruno@clisp.org>
35133
35134         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
35135         avoid AC_CONFIG_LINKS.
35136         * modules/fnmatch (Makefile.am): Use explicit creation rule for
35137         fnmatch.h, to avoid AC_CONFIG_LINKS.
35138         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
35139
35140 2003-06-07  Bruno Haible  <bruno@clisp.org>
35141
35142         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
35143         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
35144         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
35145         directory.
35146         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
35147         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
35148         directory.
35149
35150 2003-06-06  Jim Meyering  <jim@meyering.net>
35151
35152         Merge from coreutils.
35153         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
35154         Consolidate declarations and initializations of *_base* locals.
35155
35156         Merge from coreutils.
35157         This avoids a core dump on systems without GNU putenv,
35158         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
35159         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
35160         (unsetenv): New static function, from GNU libc.
35161         (rpl_putenv): Use it.
35162
35163         * lib/modechange.c: Remove trailing blanks.
35164
35165         Merge from coreutils.
35166         * lib/fsusage.c: Remove declaration of statfs.
35167         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
35168
35169         * lib/posixtm.c: Include <stdbool.h> unconditionally.
35170
35171 2003-06-06  Jim Meyering  <jim@meyering.net>
35172
35173         * lib/stdbool_.h: Renamed from stdbool.h.in.
35174
35175 2003-06-06  Jim Meyering  <jim@meyering.net>
35176             Bruno Haible  <bruno@clisp.org>
35177
35178         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
35179         Adjust Makefile.am snippet not to redirect directly to target.
35180         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
35181
35182 2003-06-05  Paul Eggert  <eggert@twinsun.com>
35183
35184         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
35185         mismatch, look in future quarters as well as past.  This fixes a
35186         bug when processing fall-backwards gaps immediately after a long
35187         period of daylight-saving time.
35188
35189         * lib/mktime.c: Assume freestanding C89 or better.
35190         (HAVE_LIMITS_H): Remove.  Assume it's 1.
35191         (__P): Remove; not used.
35192         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
35193         (mktime, not_equal_tm, print_tm, check_result,
35194         main): Use prototypes.  Use const * where appropriate.
35195         (main): Fix typo in testing code that uncovered by above changes.
35196         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
35197
35198 2003-06-04  Paul Eggert  <eggert@twinsun.com>
35199
35200         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
35201         locale.h, localeconv.  This merges changes from coreutils.
35202
35203         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
35204         It can be removed after the next Autoconf is released.
35205         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
35206         needed.
35207
35208 2003-06-04  Paul Eggert  <eggert@twinsun.com>
35209
35210         * lib/mktime.c: Fix Debian bug 177940
35211         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
35212         (localtime_offset): Now long int, not time_t, because we want it
35213         to be guaranteed to be signed.  All uses changed.
35214         (__mktime_internal): If overflow would occur when adding offset,
35215         don't add it.
35216
35217         Merge 'human' changes from coreutils.  Rewrite to support
35218         locale-specific notations like thousands separators.
35219         * lib/human.c: Simplify authorship notice.
35220         Include human.h immediately after config.h.
35221         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
35222         <limits.h>: Do not include, since human.h does.
35223         (SIZE_MAX, UINTMAX_MAX): New macros.
35224         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
35225         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
35226         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
35227         (power_letter): Renamed from suffixes.
35228         (generate_suffix_backwards): Remove.
35229         (adjust_value): Now takes int style (because of human.h changes)
35230         and long double value (for greater precision on some platforms).
35231         (group_number): New function.
35232         (human_readable): Use it.  Use integer options, not enum.
35233         Put the options before the sizes in the arg list.
35234         Support all the new options.
35235         The old human_readable function has been removed;
35236         use inttostr.h instead.
35237         (human_readable, default_block_size, humblock):
35238         Use uintmax_t, not int, for block sizes.
35239         (human_readable_inexact, block_size_types): Remove.
35240         (block_size_opts): New constant.
35241         (human_options): Renamed from human_block_size, with new signature
35242         that allows block sizes up to UINTMAX_MAX.  All callers changed.
35243         * lib/human.h: Add copyright and authorship notice.
35244         Include <limits.h> and <stdbool.h> unconditionally.
35245         (PARAMS): Remove.  All uses removed.
35246         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
35247         (enum human_inexact_style): Remove tag; now a nameless enum.
35248         (human_floor, human_ceiling, human_round_to_even): Now have
35249         values 2, 0, 1 rather than -1, 1, 0.
35250         (human_group_digits, human_suppress_point_zero, human_autoscale,
35251         human_base_1024, human_SI, human_B): New constants.
35252         (human_readable_inexact, human_block_size): Remove.
35253         (human_readable): Size args are now uintmax_t, not int.
35254         (human_options): New decl.
35255
35256         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
35257         unnecessary now that we assume C89 or better.  This change
35258         imported from coreutils.
35259
35260         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
35261         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
35262         in the 2003-05-30 sync from glibc.
35263
35264         .h files should stand alone, but we shouldn't include <sys/types.h>
35265         if we can get away with just <stddef.h>.
35266
35267         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
35268         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
35269         rather than <sys/types.h>, as we merely need size_t.
35270         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
35271         to get size_t.
35272         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
35273         Include <stdio.h>, to get FILE.
35274         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
35275         memcasecmp.h has included <stddef.h> and all we need is size_t.
35276         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
35277         our interface, instead of including <sys/types.h>
35278
35279 2003-06-04  Paul Eggert  <eggert@twinsun.com>
35280
35281         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
35282         now, as glibc mktime is buggy on non-glibc systems.
35283
35284 2003-06-03  Karl Berry  <karl@gnu.org>
35285
35286         * config/config.sub: update from prep.
35287
35288 2003-06-02  Paul Eggert  <eggert@twinsun.com>
35289
35290         [from coreutils]
35291         Fix some minor time-related bugs with POSIX time arguments.
35292         Some valid time stamps were being rejected (notably -1, and
35293         time stamps before 1900 on 64-bit hosts).  And some invalid
35294         time stamps were being accepted, e.g. September 31.
35295
35296         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
35297         that we can return (time_t) -1 successfully.
35298         * lib/posixtm.c: Likewise.
35299         [HAVE_STDBOOL_H]: Include <stdbool.h>.
35300         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
35301         (t): Remove static var.
35302         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
35303         of static var.  All uses changed.
35304         (year): Do not reject years before 1900; they can occur with
35305         64-bit time_t.
35306         (posix_time_parse): Do not check for out-of-range components;
35307         that is now the caller's responsibility, since our checks were
35308         only approximations.
35309         (posixtime): Use mktime to check for out-of-range components,
35310         since it knows them exactly.
35311         If mktime returns (time_t) -1, check whether an error actually occurred
35312         by invoking localtime on -1.
35313         (main) [TEST_POSIXTIME]: Check for input data errors, and report
35314         posixtime failures better.
35315         Improve the test data (in comments only).
35316
35317 2003-06-02  Karl Berry  <karl@gnu.org>
35318
35319         * config/mkinstalldirs (version): new variable.
35320         (--version): new option.
35321         (usage): improve message.
35322
35323 2003-05-30  Karl Berry  <karl@gnu.org>
35324
35325         * lib/mktime.c: update from libc.
35326
35327 2003-05-30  Bruno Haible  <bruno@clisp.org>
35328
35329         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
35330         * config/config.rpath: Upgrade to gettext-0.12.1.
35331
35332 2003-05-30  Bruno Haible  <bruno@clisp.org>
35333
35334         * m4/gettext.m4: Upgrade to gettext-0.12.1.
35335         * m4/nls.m4: New file, from gettext-0.12.1.
35336         * m4/po.m4: New file, from gettext-0.12.1.
35337         * m4/progtest.m4: Upgrade to gettext-0.12.1.
35338
35339 2003-05-30  Bruno Haible  <bruno@clisp.org>
35340
35341         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
35342         * lib/localcharset.h: Likewise.
35343         * lib/localcharset.c: Likewise.
35344
35345 2003-05-29  Karl Berry  <karl@gnu.org>
35346
35347         * config/config.rpath: update from gettext.
35348
35349 2003-05-28  Paul Eggert  <eggert@twinsun.com>
35350
35351         Assume the headers required for C89 freestanding compilers.
35352         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
35353         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
35354         * m4/human.m4 (gl_HUMAN): Likewise.
35355         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
35356         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
35357         * m4/userspec.m4 (gl_USERSPEC): Likewise.
35358         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
35359         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
35360         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
35361
35362 2003-05-28  Paul Eggert  <eggert@twinsun.com>
35363
35364         Assume the headers required for C89 freestanding compilers.
35365         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
35366         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
35367         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
35368         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
35369         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
35370         define, since <limits.h> is guaranteed to do that.
35371         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
35372         * lib/exclude.c: Include <stdbool.h> unconditionally.
35373         * lib/tempname.c: Include <stddef.h> unconditionally.
35374         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
35375         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
35376         <stddef.h> does that.
35377         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
35378         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
35379         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
35380         needed.
35381         * lib/xstrtol.c: Likewise.
35382         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
35383         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
35384
35385         * lib/addext.c (addext): Use assignment rather than cast, to avoid
35386         warnings on some platforms.
35387
35388         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
35389         arbitrarily.
35390
35391 2003-05-26  Jim Meyering  <jim@meyering.net>
35392
35393         Merge in a change from coreutils:
35394         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
35395         that is guaranteed to be `no'.  Use `no_such_member' to indicate
35396         that condition, rather than `-1' which is slightly misleading.
35397         Change the name of the cache variable to have the gl_ prefix.
35398         Prompted by a patch from Richard Dawe for DJGPP.
35399
35400 2003-05-24  Karl Berry  <karl@gnu.org>
35401
35402         * config/config.guess: update from prep.
35403
35404 2003-05-22  Karl Berry  <karl@gnu.org>
35405
35406         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
35407
35408 2003-05-20  Karl Berry  <karl@gnu.org>
35409
35410         * config/config.guess: update from prep.
35411
35412 2003-05-18  Karl Berry  <karl@gnu.org>
35413
35414         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
35415         might actually be set by the user.
35416
35417         * config/depcomp, install-sh, mdate-sh: update from automake.
35418
35419 2003-05-17  Bruno Haible  <bruno@clisp.org>
35420
35421         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
35422         invalid expansion for AC_EGREP_CPP.
35423         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
35424         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
35425         Suggested by Akim Demaille <akim@epita.fr> in
35426         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
35427
35428 2003-05-12  Jim Meyering  <jim@meyering.net>
35429
35430         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
35431         the space-padded-by-default conversion specifiers, %e, %k, %l.
35432
35433 2003-05-12  Bruno Haible  <bruno@clisp.org>
35434
35435         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
35436         the string is longer than 4 KB.
35437
35438 2003-05-11  Karl Berry  <karl@gnu.org>
35439
35440         * config/config.{guess,sub}: update from prep.
35441
35442 2003-05-09  Bruno Haible  <bruno@clisp.org>
35443
35444         * modules/error: Add m4/strerror_r.m4 to file list.
35445
35446 2003-05-03  Bruno Haible  <bruno@clisp.org>
35447
35448         Upgrade to Unicode-4.0.
35449         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
35450         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
35451         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
35452         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
35453         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
35454         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
35455         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
35456         Change width of U+E0100..U+E01EF from 1 to 0.
35457
35458 2003-04-25  Jim Meyering  <jim@meyering.net>
35459
35460         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
35461         of type size_t, not int.
35462
35463 2003-04-25  Bruno Haible  <bruno@clisp.org>
35464
35465         * lib/copy-file.c: Include <stddef.h>, for size_t.
35466
35467 2003-04-21  Paul Eggert  <eggert@twinsun.com>
35468
35469         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
35470         code which expansion is under static control.  Patch imported from
35471         Akim Demaille's patch to Bison; see
35472         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
35473
35474 2003-04-14  Bruno Haible  <bruno@clisp.org>
35475
35476         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
35477
35478 2003-04-11  Jim Meyering  <jim@meyering.net>
35479
35480         Merge changes from Coreutils.
35481
35482         2003-03-22  Jim Meyering  <jim@meyering.net>
35483
35484         * lib/strftime.c (widen): Cast alloca return value to proper type.
35485
35486         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
35487
35488         From GNU libc.
35489         * lib/strftime.c (my_strftime): Handle very large width
35490         specifications for numeric values correctly.  Improve checks for
35491         overflow.
35492
35493         2003-01-19  Jim Meyering  <jim@meyering.net>
35494
35495         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
35496         definitions.
35497         (nl_get_alt_digit) [! defined my_strftime]: Define.
35498         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
35499         _nl_get_alt_digit and _nl_get_walt_digit.
35500
35501         * lib/strftime.c (my_strftime): Merge in locale-related changes from
35502         libc. These changes have no effect outside of _LIBC.
35503
35504 2003-04-10  Bruno Haible  <bruno@clisp.org>
35505
35506         * modules/findprog: New file.
35507         * MODULES.html.sh (func_all_modules): Add it.
35508
35509 2003-04-10  Bruno Haible  <bruno@clisp.org>
35510
35511         * m4/findprog.m4: New file.
35512         * m4/eaccess.m4: New file.
35513
35514 2003-04-10  Bruno Haible  <bruno@clisp.org>
35515
35516         * lib/findprog.h: New file, from GNU gettext.
35517         * lib/findprog.c: New file, from GNU gettext.
35518
35519 2003-04-05  Jim Meyering  <jim@meyering.net>
35520
35521         Merge changes from Coreutils.
35522
35523         * lib/exclude.h (PARAMS): Remove definition and uses.
35524         * lib/exclude.c: Remove uses of `PARAMS'.
35525
35526         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
35527         Add test-cases for DOS filenames. Declare program_name.
35528         (main): Set up program_name.  Patch by Rich Dawe.
35529
35530         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
35531         error from mntctl.
35532         Use mntctl's return value to drive the entry-processing loop, since
35533         we can't rely on the value of the vmt_length member in the last
35534         entry.  On some systems doing so could result in exhausting
35535         virtual memory.  Based in part on a patch from Mike Jetzer.
35536
35537 2003-04-04  Bruno Haible  <bruno@clisp.org>
35538
35539         * modules/linebreak: New file.
35540         * MODULES.html.sh (func_all_modules): Add it.
35541
35542 2003-04-04  Bruno Haible  <bruno@clisp.org>
35543
35544         * m4/linebreak.m4: New file.
35545
35546 2003-04-04  Bruno Haible  <bruno@clisp.org>
35547
35548         * lib/linebreak.h: New file, from GNU gettext.
35549         * lib/linebreak.c: New file, from GNU gettext with slight
35550         modifications.
35551         * lib/lbrkprop.h: New file, from GNU gettext.
35552
35553 2003-04-03  Bruno Haible  <bruno@clisp.org>
35554
35555         * modules/utf8-ucs4: New file.
35556         * modules/utf16-ucs4: New file.
35557         * modules/ucs4-utf8: New file.
35558         * modules/ucs4-utf16: New file.
35559         * MODULES.html.sh (func_all_modules): Add them.
35560
35561 2003-04-03  Bruno Haible  <bruno@clisp.org>
35562
35563         * m4/utf-ucs4.m4: New file.
35564         * m4/ucs4-utf.m4: New file.
35565
35566 2003-04-03  Bruno Haible  <bruno@clisp.org>
35567
35568         * lib/utf8-ucs4.h: New file, from GNU gettext.
35569         * lib/utf16-ucs4.h: New file, from GNU gettext.
35570         * lib/ucs4-utf8.h: New file, from GNU gettext.
35571         * lib/ucs4-utf16.h: New file, from GNU gettext.
35572
35573 2003-04-02  Bruno Haible  <bruno@clisp.org>
35574
35575         * modules/binary-io: New file.
35576         * MODULES.html.sh (func_all_modules): Add it.
35577
35578 2003-04-02  Bruno Haible  <bruno@clisp.org>
35579
35580         * lib/binary-io.h: New file, from GNU gettext.
35581
35582 2003-04-01  Bruno Haible  <bruno@clisp.org>
35583
35584         * modules/pathname: New file.
35585         * MODULES.html.sh (func_all_modules): Add it.
35586
35587 2003-04-01  Bruno Haible  <bruno@clisp.org>
35588
35589         * lib/pathname.h: New file, from GNU gettext.
35590         * lib/concatpath.c: New file, from GNU gettext.
35591
35592 2003-03-30  Bruno Haible  <bruno@clisp.org>
35593
35594         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
35595
35596 2003-03-30  Bruno Haible  <bruno@clisp.org>
35597
35598         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
35599         function chown() doesn't exist.
35600
35601 2003-03-28  Bruno Haible  <bruno@clisp.org>
35602
35603         * modules/copy-file: New file.
35604         * MODULES.html.sh (func_all_modules): Add it.
35605
35606 2003-03-28  Bruno Haible  <bruno@clisp.org>
35607
35608         * m4/copy-file.m4: New file.
35609
35610 2003-03-28  Bruno Haible  <bruno@clisp.org>
35611
35612         * lib/copy-file.h: New file, from GNU gettext.
35613         * lib/copy-file.c: New file, from GNU gettext.
35614
35615 2003-03-18  Jim Meyering  <jim@meyering.net>
35616
35617         * lib/quote.c (quote_n): Fix typo in comment.
35618
35619 2003-03-18  Bruno Haible  <bruno@clisp.org>
35620
35621         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
35622         checking.
35623         * m4/onceonly_2_57.m4: Likewise.
35624
35625 2003-03-17  Bruno Haible  <bruno@clisp.org>
35626
35627         * m4/onceonly.m4: Require autoconf 2.54 or newer.
35628         (m4_quote): Remove macro.
35629         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
35630
35631 2003-03-14  Jim Meyering  <jim@meyering.net>
35632
35633         Merge changes from Coreutils.
35634         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
35635         to be const, in order to avoid warnings.
35636         (obstack_room): Likewise.
35637         (obstack_empty_p): Likewise.
35638
35639 2003-03-14  Bruno Haible  <bruno@clisp.org>
35640
35641         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
35642         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
35643
35644 2003-03-13  Paul Eggert  <eggert@twinsun.com>
35645
35646         Merge changes from Bison.
35647         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
35648         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
35649         when compiling Bison 1.875's `bitset bset = obstack_alloc
35650         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
35651         * lib/hash.c: Include <stdbool.h> unconditionally.
35652
35653 2003-03-13  Paul Eggert  <eggert@twinsun.com>
35654
35655         * m4/onceonly.m4 (m4_quote): New macro.
35656         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
35657         Quote AC_FOREACH variable-expansions properly.
35658
35659 2003-03-13  Paul Eggert  <eggert@twinsun.com>
35660
35661         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
35662
35663 2003-03-09  Paul Eggert  <eggert@twinsun.com>
35664
35665         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
35666         Reported by Bruce Becker; see:
35667         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
35668
35669 2003-03-03  Paul Eggert  <eggert@twinsun.com>
35670             Bruno Haible  <bruno@clisp.org>
35671
35672         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
35673         Reported by John Hughes, see
35674         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
35675
35676 2003-02-20  Bruno Haible  <bruno@clisp.org>
35677
35678         * MODULES.html.sh (func_all_modules): Add poll.
35679
35680 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
35681
35682         * modules/poll: New file.
35683
35684 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
35685
35686         * lib/poll_.h: New file.
35687         * lib/poll.c: New file.
35688
35689 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
35690
35691         * m4/poll.m4: New file.
35692
35693 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
35694
35695         * modules/mathl: New file.
35696
35697 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
35698
35699         * lib/mathl.h: New file.
35700         * lib/acosl.c: New file.
35701         * lib/asinl.c: New file.
35702         * lib/atanl.c: New file.
35703         * lib/ceill.c: New file.
35704         * lib/cosl.c: New file.
35705         * lib/expl.c: New file.
35706         * lib/floorl.c: New file.
35707         * lib/frexpl.c: New file.
35708         * lib/ldexpl.c: New file.
35709         * lib/logl.c: New file.
35710         * lib/sincosl.c: New file.
35711         * lib/sinl.c: New file.
35712         * lib/sqrtl.c: New file.
35713         * lib/tanl.c: New file.
35714         * lib/trigl.c: New file.
35715         * lib/trigl.h: New file.
35716
35717 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
35718
35719         * m4/mathl.m4: New file.
35720
35721 2003-02-18  Bruno Haible  <bruno@clisp.org>
35722
35723         * MODULES.html.sh (func_all_modules): Add mathl.
35724
35725 2003-02-17  Bruno Haible  <bruno@clisp.org>
35726
35727         * modules/mkdtemp: New module.
35728         * MODULES.html.sh (func_all_modules): Add it.
35729
35730 2003-02-17  Bruno Haible  <bruno@clisp.org>
35731
35732         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
35733
35734 2003-02-17  Bruno Haible  <bruno@clisp.org>
35735
35736         * lib/mkdtemp.h: New file, from GNU gettext.
35737         * lib/mkdtemp.c: New file, from GNU gettext.
35738
35739 2003-02-02  Jim Meyering  <jim@meyering.net>
35740
35741         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
35742         e.g. glibc-2.2.93.
35743
35744 2003-01-31  Bruno Haible  <bruno@clisp.org>
35745
35746         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
35747         'rpl_rename'.
35748         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
35749         'rpl_strnlen'.
35750         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
35751         'rpl_strtod'.
35752         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
35753         'rpl_utime'.
35754
35755 2003-01-31  Bruno Haible  <bruno@clisp.org>
35756
35757         * lib/rename.c: #undef rename before defining rpl_rename.
35758         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
35759
35760 2003-01-30  Bruno Haible  <bruno@clisp.org>
35761
35762         * modules/vasnprintf, modules/vasprintf: New modules.
35763         * MODULES.html.sh (func_all_modules): Add them.
35764
35765 2003-01-30  Bruno Haible  <bruno@clisp.org>
35766
35767         * m4/signed.m4: New file, from GNU gettext.
35768         * m4/longdouble.m4: New file, from GNU gettext.
35769         * m4/wchar_t.m4: New file, from GNU gettext.
35770         * m4/wint_t.m4: New file, from GNU gettext.
35771         * m4/vasnprintf.m4: New file.
35772         * m4/vasprintf.m4: New file.
35773
35774 2003-01-30  Bruno Haible  <bruno@clisp.org>
35775
35776         * lib/printf-args.h: New file, from GNU gettext.
35777         * lib/printf-args.c: New file, from GNU gettext.
35778         * lib/printf-parse.h: New file, from GNU gettext.
35779         * lib/printf-parse.c: New file, from GNU gettext.
35780         * lib/vasnprintf.h: New file, from GNU gettext.
35781         * lib/vasnprintf.c: New file, from GNU gettext.
35782         * lib/asnprintf.c: New file, from GNU gettext.
35783         * lib/vasprintf.h: New file, from GNU gettext with modifications.
35784         * lib/vasprintf.c: New file, from GNU gettext.
35785         * lib/asprintf.c: New file, from GNU gettext.
35786
35787 2003-01-29  Bruno Haible  <bruno@clisp.org>
35788
35789         * modules/stpncpy: New module.
35790         * MODULES.html.sh (func_all_modules): Add it.
35791
35792 2003-01-29  Bruno Haible  <bruno@clisp.org>
35793
35794         * m4/stpncpy.m4: New file.
35795
35796 2003-01-29  Bruno Haible  <bruno@clisp.org>
35797
35798         * lib/stpncpy.h: New file, from GNU gettext with modifications.
35799         * lib/stpncpy.c: New file, from GNU gettext with modifications.
35800
35801 2003-01-28  Bruno Haible  <bruno@clisp.org>
35802
35803         * modules/c-ctype: New module.
35804         * MODULES.html.sh (func_all_modules): Add it.
35805
35806 2003-01-28  Bruno Haible  <bruno@clisp.org>
35807
35808         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
35809         Paul Eggert.
35810         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
35811         Paul Eggert.
35812
35813 2003-01-27  Bruno Haible  <bruno@clisp.org>
35814
35815         * modules/xsetenv: New module.
35816         * MODULES.html.sh (func_all_modules): Add it.
35817
35818 2003-01-27  Bruno Haible  <bruno@clisp.org>
35819
35820         * lib/xsetenv.h: New file, from GNU gettext.
35821         * lib/xsetenv.c: New file, from GNU gettext.
35822
35823 2003-01-23  Jim Meyering  <jim@meyering.net>
35824
35825         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
35826         from working on systems without dirfd (at least Irix and OSF1/Tru64).
35827
35828 2003-01-23  Bruno Haible  <bruno@clisp.org>
35829
35830         * modules/minmax: New module.
35831         * MODULES.html.sh (func_all_modules): Add it.
35832
35833 2003-01-23  Bruno Haible  <bruno@clisp.org>
35834
35835         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
35836         Eggert.
35837
35838 2003-01-22  Bruno Haible  <bruno@clisp.org>
35839
35840         * modules/exit: New module.
35841         * MODULES.html.sh (func_all_modules): Add it.
35842
35843 2003-01-22  Bruno Haible  <bruno@clisp.org>
35844
35845         * lib/exit.h: New file, from GNU gettext.
35846
35847 2003-01-19  Bruno Haible  <bruno@clisp.org>
35848
35849         * gnulib-tool: Recognize option --extract-maintainer.
35850         (func_get_maintainer): New function.
35851         * modules/*: Add Maintainer entry.
35852
35853 2003-01-16  Jim Meyering  <jim@meyering.net>
35854
35855         * m4/regex.m4: The `regex' struct is both input and output.
35856         Initialize it before each use.  Patch by Tim Waugh.
35857
35858 2003-01-16  Bruno Haible  <bruno@clisp.org>
35859
35860         * MODULES.html.sh: Add a table of contents. Add the module name as
35861         leftmost column. Add hyperlinks.
35862
35863 2003-01-15  Bruno Haible  <bruno@clisp.org>
35864
35865         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
35866
35867 2003-01-15  Bruno Haible  <bruno@clisp.org>
35868
35869         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
35870         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
35871         suffix.
35872
35873 2003-01-15  Bruno Haible  <bruno@clisp.org>
35874
35875         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
35876
35877 2003-01-15  Bruno Haible  <bruno@clisp.org>
35878
35879         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
35880         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
35881
35882 2003-01-14  Jim Meyering  <jim@meyering.net>
35883
35884         * lib/same.c (same_name): Tweak a comment.
35885
35886 2003-01-14  Bruno Haible  <bruno@clisp.org>
35887
35888         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
35889         when a string comparison is sufficient.
35890
35891 2003-01-14  Bruno Haible  <bruno@clisp.org>
35892
35893         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
35894         'unsigned int'.
35895
35896 2003-01-14  Bruno Haible  <bruno@clisp.org>
35897
35898         * lib/hash-pjw.c: Add comment about low quality of this function.
35899
35900 2003-01-13  Bruno Haible  <bruno@clisp.org>
35901
35902         * modules/stpcpy: Distribute lib/stpcpy.h.
35903         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
35904
35905 2003-01-13  Bruno Haible  <bruno@clisp.org>
35906
35907         * modules/*: Add a description.
35908         * modules/strpbrk: Fix Makefile.am snippet.
35909         * modules/strtoimax: Fix dependencies.
35910         * modules/strtoumax: Likewise.
35911
35912 2003-01-13  Bruno Haible  <bruno@clisp.org>
35913
35914         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
35915         * modules/alloca (Makefile.am): All object files depend on alloca.h.
35916         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
35917
35918 2003-01-13  Bruno Haible  <bruno@clisp.org>
35919
35920         * gnulib-tool (func_create_testdir): Store config/* files in the main
35921         directory.
35922         * config.rpath: Move to ...
35923         * config/config.rpath: ... here.
35924         * modules/gettext: Contains config/config.rpath, not config.rpath.
35925         * modules/iconv: Likewise.
35926
35927 2003-01-12  Paul Eggert  <eggert@twinsun.com>
35928
35929         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
35930         to avoid collisions with libcurses and libreadline.
35931
35932         * m4/getstr.m4: Remove.
35933         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
35934
35935 2003-01-12  Paul Eggert  <eggert@twinsun.com>
35936
35937         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
35938         to avoid collisions with libcurses and libreadline.
35939
35940         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
35941         * lib/getstr.h, getstr.c: Remove.
35942         * lib/getline.c: Include "getline.h", to check interface.
35943         Move body of old getstr.c here: this defines MIN_CHUNK and
35944         declares getdelim2, which is renamed from getstr.
35945         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
35946
35947         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
35948         All uses changed.
35949         * lib/linebuffer.h: Likewise.
35950         (readline): Remove backward-compatibility macro.
35951
35952 2003-01-12  Paul Eggert  <eggert@twinsun.com>
35953
35954         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
35955         to avoid collisions with libcurses and libreadline.
35956         * getstr: Remove.
35957         * MODULES.html.sh: Remove getstr.
35958         * modules/getline: Depend on unlocked-io, not getstr.
35959
35960 2003-01-12  Jim Meyering  <jim@meyering.net>
35961
35962         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
35963
35964 2003-01-10  Bruno Haible  <bruno@clisp.org>
35965
35966         * modules/alloca: Change Makefile.am requirements. Simplify Include
35967         requirements. Add lib/alloca_.h to file list.
35968
35969 2003-01-10  Bruno Haible  <bruno@clisp.org>
35970
35971         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
35972
35973 2003-01-10  Bruno Haible  <bruno@clisp.org>
35974
35975         * lib/alloca_.h: New file.
35976         * lib/getdate.y: Unconditionally include alloca.h.
35977         * lib/makepath.c: Likewise.
35978         * lib/setenv.c: Likewise.
35979         * lib/userspec.c: Likewise.
35980
35981 2003-01-09  Karl Berry  <karl@gnu.org>
35982
35983         * MODULES.html.sh: include `dirname $0` in PATH, to find
35984         gnulib-tool.
35985
35986 2003-01-09  Bruno Haible  <bruno@clisp.org>
35987
35988         * modules/stdbool: Change configure.ac, Makefile.am requirements.
35989         Simplify Include requirements. Add lib/stdbool.h.in to file list.
35990
35991 2003-01-09  Bruno Haible  <bruno@clisp.org>
35992
35993         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
35994
35995 2003-01-09  Bruno Haible  <bruno@clisp.org>
35996
35997         * lib/stdbool.h.in: New file.
35998
35999 2003-01-09  Bruno Haible  <bruno@clisp.org>
36000
36001         * gnulib-tool (func_all_modules): Ignore files ending in ~.
36002         * MODULES.html.sh: Likewise.
36003
36004 2003-01-08  Jim Meyering  <jim@meyering.net>
36005
36006         * lib/full-write.c: Undefine and define-away `const' after inclusion
36007         of errno.h, not before.  Suggestion from Bruno Haible.
36008
36009 2003-01-08  Bruno Haible  <bruno@clisp.org>
36010
36011         * modules/full-read: Depend on full-write.
36012
36013 2003-01-08  Bruno Haible  <bruno@clisp.org>
36014
36015         * lib/safe-read.c: Include specification header first, to ensure its
36016         selfcontainedness.
36017         * lib/full-write.c: Likewise.
36018
36019 2003-01-07  Jim Meyering  <jim@meyering.net>
36020
36021         * lib/full-write.c: Rework so that it may serve to define full_read,
36022         too.
36023         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
36024
36025 2003-01-07  Bruno Haible  <bruno@clisp.org>
36026
36027         * lib/strtoimax.c: Include <stdint.h> as an alternative to
36028         <inttypes.h>.
36029         * lib/xstrtol.h: Likewise.
36030         * lib/xstrtoimax.c: Likewise.
36031         * lib/xstrtoumax.c: Likewise.
36032         * lib/human.h: Likewise.
36033
36034         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
36035         on systems that have <inttypes.h> but not <stdint.h>.
36036
36037 2003-01-07  Bruno Haible  <bruno@clisp.org>
36038
36039         * MODULES.html.sh: Add copyright notice.
36040         (missed_files): Omit CVS directory entries.
36041         (func_module): Make it work with sed-3.02.
36042         * MODULES.txt: Remove file.
36043
36044 2003-01-06  Jim Meyering  <jim@meyering.net>
36045
36046         * lib/version-etc.c: Update year in translatable copyright string.
36047
36048 2003-01-03  Karl Berry  <karl@gnu.org>
36049
36050         * config/config.{guess,sub}: update from prep.
36051
36052 2003-01-02  Karl Berry  <karl@gnu.org>
36053
36054         * doc/COPYING.DOC: belatedly updated to 1.2.
36055
36056 2003-01-01  Karl Berry  <karl@gnu.org>
36057
36058         * gnulib-tool (func_verify_module): report module name $module in
36059         error message, not $1.
36060         * gnulib-tool (create-testdir): don't complain if destdir couldn't
36061         be created, only if it doesn't exist.
36062         * gnulib-tool (last_checkin_date): don't expand the $Date here.
36063
36064 2002-12-31  Paul Eggert  <eggert@twinsun.com>
36065
36066         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
36067
36068 2002-12-31  Paul Eggert  <eggert@twinsun.com>
36069
36070         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
36071         memcmp if strcoll doesn't work.
36072
36073 2002-12-31  Bruno Haible  <bruno@clisp.org>
36074
36075         * lib/utime.c (utime_null): No need to call ftruncate if the file was
36076         nonempty.
36077
36078 2002-12-31  Bruno Haible  <bruno@clisp.org>
36079
36080         * lib/memcoll.c (STRCOLL): New macro.
36081         (memcoll): Use it.
36082
36083 2002-12-31  Bruno Haible  <bruno@clisp.org>
36084
36085         * lib/localcharset.h: New file.
36086         * lib/localcharset.c: Include it.
36087         * lib/unicodeio.c: Likewise.
36088
36089 2002-12-31  Bruno Haible  <bruno@clisp.org>
36090
36091         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
36092         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
36093
36094 2002-12-31  Bruno Haible  <bruno@clisp.org>
36095
36096         * lib/getline.h: Include <stddef.h>, for size_t.
36097
36098         * lib/unicodeio.h: Include <stddef.h>, for size_t.
36099         * lib/unicodeio.c: Don't include <stddef.h>.
36100
36101 2002-12-31  Bruno Haible  <bruno@clisp.org>
36102
36103         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
36104         HAVE_TM_ZONE.
36105
36106 2002-12-24  Karl Berry  <karl@gnu.org>
36107
36108         * config/config.guess: update from prep.
36109
36110 2002-12-24  Bruno Haible  <bruno@clisp.org>
36111
36112         General infrasructure.
36113         * m4/README: Rewritten.
36114         * m4/onceonly.m4: New file.
36115         * m4/onceonly_2_57.m4: New file.
36116
36117         Module atexit.
36118         * m4/atexit.m4: New file.
36119
36120         Module strtod.
36121         * m4/strtod.m4: New file.
36122
36123         Module strtol.
36124         * m4/strtol.m4: New file.
36125
36126         Module strtoul.
36127         * m4/strtoul.m4: New file.
36128
36129         Module memchr.
36130         * m4/memchr.m4: New file.
36131
36132         Module memcmp.
36133         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
36134         (jm_FUNC_MEMCMP): Invoke it.
36135
36136         Module memcpy.
36137         * m4/memcpy.m4: New file.
36138
36139         Module memmove.
36140         * m4/memmove.m4: New file.
36141
36142         Module memset.
36143         * m4/memset.m4: New file.
36144
36145         Module strcspn.
36146         * m4/strcspn.m4: New file.
36147
36148         Module strpbrk.
36149         * m4/strpbrk.m4: New file.
36150
36151         Module strstr.
36152         * m4/strstr.m4: New file.
36153
36154         Module strerror.
36155         * m4/strerror.m4: New file.
36156
36157         Module mktime.
36158         * m4/mktime.m4: Renamed from jm-mktime.m4.
36159         (gl_PREREQ_MKTIME): New macro.
36160         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
36161
36162         Module malloc.
36163         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
36164         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
36165         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
36166
36167         Module realloc.
36168         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
36169         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
36170         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
36171
36172         Module strftime.
36173         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
36174         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
36175         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
36176         gl_TM_GMTOFF.
36177         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
36178
36179         Module xalloc.
36180         * m4/xalloc.m4: New file.
36181
36182         Module alloca.
36183         * m4/alloca.m4: New file.
36184
36185         Module putenv.
36186         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
36187         (jm_FUNC_PUTENV): Invoke it.
36188
36189         Module setenv.
36190         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
36191         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
36192         when invoked twice.
36193         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
36194         gt_FUNC_SETENV.
36195
36196         Module memrchr.
36197         * m4/memrchr.m4: New file.
36198
36199         Module stpcpy.
36200         * m4/stpcpy.m4: New file.
36201
36202         Module strcase.
36203         * m4/strcase.m4: New file.
36204
36205         Module strdup.
36206         * m4/strdup.m4: New file.
36207
36208         Module strnlen.
36209         * m4/strnlen.m4: New file.
36210
36211         Module strndup.
36212         * m4/strndup.m4: New file.
36213
36214         Module xstrtod.
36215         * m4/xstrtod.m4: New file.
36216
36217         Module xstrtol.
36218         * m4/xstrtol.m4: New file.
36219
36220         Module getdate.
36221         * m4/getdate.m4: New file.
36222
36223         Module unlocked-io.
36224         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
36225         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
36226         * m4/jm-glibc-io.m4n: Remove file.
36227
36228         Module long-options.
36229         * m4/long-options.m4: New file.
36230
36231         Module md5.
36232         * m4/md5.m4: New file.
36233
36234         Module sha.
36235         * m4/sha.m4: New file.
36236
36237         Module getstr.
36238         * m4/getstr.m4: New file.
36239
36240         Module getline.
36241         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
36242         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
36243         <sys/types.h>, for size_t. Use the function name gnu_getline, not
36244         simply getline. Infoke gl_PREREQ_GETLINE.
36245
36246         Module obstack.
36247         * m4/obstack.m4: New file.
36248
36249         Module hash.
36250         * m4/hash.m4: New file.
36251
36252         Module readtokens.
36253         * m4/readtokens.m4: New file.
36254
36255         Module strverscmp.
36256         * m4/strverscmp.m4: New file.
36257
36258         Module stdbool.
36259         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
36260         OSF/1.
36261
36262         Module strtoll.
36263         * m4/strtoll.m4: New file.
36264
36265         Module strtoull.
36266         * m4/strtoull.m4: New file.
36267
36268         Module strtoimax.
36269         * m4/strtoimax.m4: New file.
36270
36271         Module strtoumax.
36272         * m4/strtoumax.m4: New file.
36273
36274         Module xstrtoimax.
36275         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
36276         jm_AC_PREREQ_XSTRTOIMAX.
36277         Moved the strtol prerequisites to strtol.m4.
36278         Moved the strtoll prerequisites to strtoll.m4.
36279         Moved the strtoimax prerequisites to strtoimax.m4.
36280
36281         Module xstrtoumax.
36282         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
36283         jm_AC_PREREQ_XSTRTOUMAX.
36284         Moved the strtoul prerequisites to strtoul.m4.
36285         Moved the strtoull prerequisites to strtoull.m4.
36286         Moved the strtoumax prerequisites to strtoumax.m4.
36287
36288         Module chown.
36289         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
36290         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
36291
36292         Module dup2.
36293         * m4/dup2.m4: New file.
36294
36295         Module ftruncate.
36296         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
36297         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
36298
36299         Module getgroups.
36300         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
36301         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
36302
36303         Module gettimeofday.
36304         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
36305         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
36306         gl_PREREQ_GETTIMEOFDAY.
36307
36308         Module mkdir.
36309         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
36310         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
36311
36312         Module mkstemp.
36313         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
36314         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
36315         jm_AC_TYPE_UINTMAX_T.
36316         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
36317
36318         Module stat.
36319         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
36320         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
36321
36322         Module lstat.
36323         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
36324         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
36325
36326         Module timespec.
36327         * m4/timespec.m4 (gl_TIMESPEC): New macro.
36328         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
36329         * m4/st_mtim.m4: Indentation.
36330
36331         Module nanosleep.
36332         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
36333         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
36334         gl_PREREQ_NANOSLEEP.
36335
36336         Module regex.
36337         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
36338         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
36339         (gl_REGEX): New macro.
36340
36341         Module rename.
36342         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
36343         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
36344
36345         Module rmdir.
36346         * m4/rmdir.m4: New file.
36347
36348         Module utime.
36349         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
36350         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
36351         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
36352
36353         Module dirname.
36354         * m4/dirname.m4: New file.
36355
36356         Module getopt.
36357         * m4/getopt.m4: New file.
36358
36359         Module unistd-safer.
36360         * m4/unistd-safer.m4: New file.
36361
36362         Module fnmatch.
36363         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
36364         declaration.
36365         (gl_PREREQ_FNMATCH_EXTRA): New macro.
36366         (gl_FUNC_FNMATCH_POSIX): New macro.
36367         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
36368         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
36369         simply fnmatch.
36370
36371         Module exclude.
36372         * m4/exclude.m4: New file.
36373
36374         Module human.
36375         * m4/human.m4: New file.
36376
36377         Module acl.
36378         * m4/acl.m4: Nop.
36379
36380         Module backupfile.
36381         * m4/backupfile.m4: New file.
36382         * m4/d-ino.m4: Indentation.
36383
36384         Module fsusage.
36385         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
36386         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
36387         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
36388
36389         Module dirfd.
36390         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
36391         requirements.
36392
36393         Module euidaccess.
36394         * m4/euidaccess.m4: New file.
36395
36396         Module file-type.
36397         * m4/file-type.m4: New file.
36398
36399         Module fileblocks.
36400         * m4/fileblocks.m4: New file.
36401
36402         Module filemode.
36403         * m4/filemode.m4: New file.
36404
36405         Module isdir.
36406         * m4/isdir.m4: New file.
36407
36408         Module lchown.
36409         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
36410         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
36411
36412         Module makepath.
36413         * m4/makepath.m4: New file.
36414
36415         Module modechange.
36416         * m4/modechange.m4: New file.
36417
36418         Module mountlist.
36419         * m4/mountlist.m4: New file.
36420         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
36421         Indentation.
36422
36423         Module path-concat.
36424         * m4/path-concat.m4: New file.
36425
36426         Module pathmax.
36427         * m4/pathmax.m4: New file.
36428
36429         Module same.
36430         * m4/same.m4: New file.
36431
36432         Module save-cwd.
36433         * m4/save-cwd.m4: New file.
36434
36435         Module savedir.
36436         * m4/savedir.m4: New file.
36437
36438         Module xgetcwd.
36439         * m4/xgetcwd.m4: New file.
36440         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
36441
36442         Module xreadlink.
36443         * m4/xreadlink.m4: New file.
36444
36445         Module safe-read.
36446         * m4/safe-read.m4: New file.
36447
36448         Module safe-write.
36449         * m4/safe-write.m4: New file.
36450
36451         Module closeout.
36452         * m4/closeout.m4: New file.
36453
36454         Module stdio-safer.
36455         * m4/stdio-safer.m4: New file.
36456
36457         Module getpass.
36458         * m4/getpass.m4: New file.
36459
36460         Module getugroups.
36461         * m4/getugroups.m4: New file.
36462
36463         Module group-member.
36464         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
36465         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
36466
36467         Module idcache.
36468         * m4/idcache.m4: New file.
36469
36470         Module userspec.
36471         * m4/userspec.m4: New file.
36472
36473         Module gettime.
36474         * m4/clock_time.m4: New file.
36475         * m4/gettime.m4: New file.
36476
36477         Module settime.
36478         * m4/settime.m4: New file.
36479
36480         Module posixtm.
36481         * m4/posixtm.m4: New file.
36482
36483         Module gethostname.
36484         * m4/gethostname.m4: New file.
36485
36486         Module canon-host.
36487         * m4/canon-host.m4: New file.
36488
36489         Module gettext.
36490         * m4/codeset.m4: New file, from gettext-0.11.5.
36491         * m4/gettext.m4: New file, from gettext-0.11.5.
36492         * m4/glibc21.m4: New file, from gettext-0.11.5.
36493         * m4/iconv.m4: New file, from gettext-0.11.5.
36494         * m4/intdiv0.m4: New file, from gettext-0.11.5.
36495         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
36496         * m4/inttypes.m4: New file, from gettext-0.11.5.
36497         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
36498         * m4/isc-posix.m4: New file, from gettext-0.11.5.
36499         * m4/lcmessage.m4: New file, from gettext-0.11.5.
36500         * m4/lib-ld.m4: New file, from gettext-0.11.5.
36501         * m4/lib-link.m4: New file, from gettext-0.11.5.
36502         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
36503         * m4/progtest.m4: New file, from gettext-0.11.5.
36504         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
36505         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
36506         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
36507
36508         Module localcharset.
36509         * m4/localcharset.m4: New file.
36510
36511         Module hard-locale.
36512         * m4/hard-locale.m4: New file.
36513
36514         Module mbswidth.
36515         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
36516         onceonly macros.
36517         * m4/mbrtowc.m4: Add comment.
36518
36519         Module memcasecmp.
36520         * m4/memcasecmp.m4: New file.
36521
36522         Module memcoll.
36523         * m4/memcoll.m4: New file.
36524
36525         Module unicodeio.
36526         * m4/unicodeio.m4: New file.
36527
36528         Module rpmatch.
36529         * m4/rpmatch.m4: New file.
36530
36531         Module yesno.
36532         * m4/yesno.m4: New file.
36533
36534         Module exitfail.
36535         * m4/exitfail.m4: New file.
36536
36537         Module c-stack.
36538         * m4/c-stack.m4 (gl_C_STACK): New macro.
36539         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
36540
36541         Module error.
36542         * m4/error.m4 (gl_ERROR): New macro.
36543         (jm_PREREQ_ERROR): Use onceonly macros.
36544
36545         Module fatal.
36546         * m4/fatal.m4: New file.
36547
36548         Module getloadavg.
36549         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
36550         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
36551
36552         Module getpagesize.
36553         * m4/getpagesize.m4: New file.
36554
36555         Module getusershell.
36556         * m4/getusershell.m4: New file.
36557
36558         Module physmem.
36559         * m4/physmem.m4: New file.
36560
36561         Module posixver.
36562         * m4/posixver.m4: New file.
36563
36564         Module quotearg.
36565         * m4/quotearg.m4: New file.
36566
36567         Module quote.
36568         * m4/quote.m4: New file.
36569
36570         Module readutmp.
36571         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
36572
36573         Module sig2str.
36574         * m4/sig2str.m4: New file.
36575
36576         Other.
36577         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
36578         ulonglong.m4.
36579         * m4/intmax_t.m4: New file.
36580         * m4/d-type.m4: Indentation.
36581         * m4/jm-macros.m4: Update.
36582         * m4/prereq.m4 (jm_PREREQ): Update.
36583         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
36584         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
36585         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
36586         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
36587         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
36588         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
36589         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
36590         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
36591         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
36592         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
36593         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
36594         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
36595         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
36596         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
36597         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
36598         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
36599         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
36600         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
36601         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
36602
36603 2002-12-24  Bruno Haible  <bruno@clisp.org>
36604
36605         * MODULES.txt: Update according to m4/ changes.
36606
36607         Module gettext.
36608         * config.rpath: New file, from gettext-0.11.5.
36609
36610         * modules/*: New module descriptions.
36611         * gnulib-tool: New file.
36612         * MODULES.html.sh: New file.
36613
36614 2002-12-21  Karl Berry  <karl@gnu.org>
36615
36616         * doc/fdl.texi: update to version 1.2.
36617
36618 2002-12-19  Karl Berry  <karl@gnu.org>
36619
36620         * config/config.guess: update from prep.
36621
36622 2002-12-18  Bruno Haible  <bruno@clisp.org>
36623
36624         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
36625         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
36626
36627 2002-12-17  Bruno Haible  <bruno@clisp.org>
36628
36629         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
36630         stdlib.h, string.h.
36631
36632 2002-12-17  Bruno Haible  <bruno@clisp.org>
36633
36634         * lib/canon-host.c (strdup): Remove unused declaration.
36635
36636         * lib/fsusage.c: Include full_read.h.
36637         (get_fs_usage): Use full_read instead of safe_read.
36638
36639         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
36640
36641 2002-12-12  Karl Berry  <karl@gnu.org>
36642
36643         * config/config.guess: update from prep.
36644
36645 2002-12-11  Bruno Haible  <bruno@clisp.org>
36646
36647         * m4/setenv.m4: New file, from gettext-0.11.5.
36648
36649 2002-12-11  Bruno Haible  <bruno@clisp.org>
36650
36651         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
36652         not unsetenv().
36653         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
36654         modifications:
36655
36656         2002-12-11  Bruno Haible  <bruno@clisp.org>
36657
36658                 * setenv.c (alloca): Fall back to malloc.
36659                 (freea): New macro.
36660                 (setenv): Use freea() to free memory allocated with alloca().
36661
36662         2002-11-13  Bruno Haible  <bruno@clisp.org>
36663
36664                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
36665                 function declarations.
36666                 * unsetenv.c (unsetenv): Likewise.
36667
36668         2002-03-04  Bruno Haible  <bruno@clisp.org>
36669
36670                 Portability to AIX 4.3.3.
36671                 * unsetenv.c: New file, extracted from setenv.c.
36672                 * setenv.c: Move the unsetenv() function to unsetenv.c.
36673
36674         2001-12-20  Bruno Haible  <bruno@clisp.org>
36675
36676                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
36677                 use malloc instead. For SunOS 4.
36678
36679         2001-12-11  Bruno Haible  <bruno@clisp.org>
36680
36681                 * setenv.c: Declare alloca.
36682                 (compar_fn_t): New typedef.
36683                 (KNOWN_VALUE, STORE_VALUE): Use it.
36684
36685         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
36686         setenv.h.
36687
36688 2002-12-10  Paul Eggert  <eggert@twinsun.com>
36689
36690         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
36691         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
36692         Choose values that are less likely to collide with system fnmatch
36693         options.
36694         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
36695         defined (e.g., a pure POSIX system).
36696         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
36697         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
36698
36699 2002-12-06  Paul Eggert  <eggert@twinsun.com>
36700
36701         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
36702         a pain in practice to deal with generated m4 files.  This change
36703         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
36704
36705         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
36706         and jm-glibc-io.m4, as they are no longer a special case.
36707         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
36708         kludge and the auto-generation stuff.  Check only whether the
36709         functions are declared, not whether they exist, since older hosts
36710         that don't declare the functions can't use the optimization anyway.
36711
36712 2002-12-06  Jim Meyering  <jim@meyering.net>
36713
36714         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
36715
36716         Merge in changes from libc's misc/error.c, in preparation
36717         for the merge of gnulib's changes back into libc.
36718
36719         * lib/error.c (_): Define only if not already defined.
36720         Move definition to follow all #include directives.
36721         Include unlocked-io.h only if !_LIBC.
36722         [_LIBC]: Include <libio/libioP.h>.
36723         [USE_IN_LIBIO]: Include <libio/iolibio.h>
36724         (fflush): Tweak definition to use INTUSE.
36725         (putc): Define.
36726
36727 2002-12-05  Paul Eggert  <eggert@twinsun.com>
36728
36729         * lib/alloca.c [defined emacs]: Include "lisp.h".
36730         (xalloc_die) [defined emacs]: New macro.
36731         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
36732         [! defined emacs]: Include <xalloc.h>.
36733         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
36734         (pointer): Typedef to POINTER_TYPE *.
36735         (malloc): Remove decl; we now always use xmalloc.
36736         (alloca): Use old-style definition, since Emacs needs this.
36737         Check for arithmetic overflow when computing combined size.
36738
36739 2002-12-04  Paul Eggert  <eggert@twinsun.com>
36740
36741         Do not generate unlocked-io.h automatically, since it's easier to
36742         maintain it by hand.
36743
36744         * lib/unlocked-io.h: New file, from GNU diffutils,
36745         but with proper copyright notice and attribution.
36746         * lib/gen-uio: Remove.
36747         * lib/Makefile.am: Add copyright notice.
36748         (libfetish_a_SOURCES): Add unlocked-io.h.
36749         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
36750         (DISTCLEANFILES, io_functions): Remove macros.
36751         (EXTRA_DIST): Remove gen_uio.
36752         (unlocked-io.h): Remove rule.
36753
36754 2002-12-04  Jim Meyering  <jim@meyering.net>
36755
36756         Reflect the fact that stat.c and lstat.c are no longer generated.
36757         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
36758         (DISTCLEANFILES): Likewise.
36759         (EXTRA_DIST): Likewise.
36760         (all_local): Don't depend on stat.c or lstat.c.
36761         (stat.c, lstat.c): Remove rules.
36762         (EXTRA_DIST): Remove xstat.in.
36763
36764         * lib/xstat.in: Remove file.  Contents moved into stat.c.
36765         * lib/stat.c: New file.  Contents mostly from xstat.in.
36766         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
36767         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
36768
36769         * lib/safe-read.c: Rework so that it may serve to define safe_write,
36770         too.
36771         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
36772
36773 2002-12-03  Jim Meyering  <jim@meyering.net>
36774
36775         * lib/safe-read.c, safe-write.c: Change variable names and comments,
36776         but not semantics, to minimize the differences between these two files.
36777         (safe_read): Change comment to mention SAFE_READ_ERROR.
36778
36779         * lib/safe-read.c (IS_EINTR): Define.
36780         (safe_read): Use IS_EINTR in place of in-function cpp directives.
36781
36782 2002-12-02  Jim Meyering  <jim@meyering.net>
36783
36784         * lib/safe-read.c (EINTR): Define.
36785         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
36786         (INT_MAX): Provide fallback.
36787         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
36788
36789         * lib/safe-read.h (SAFE_READ_ERROR): Define.
36790
36791 2002-12-02  Bruno Haible  <bruno@clisp.org>
36792
36793         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
36794         Define, taken from safe-read.c.
36795         (INT_MAX): Provide fallback.
36796         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
36797         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
36798
36799         * lib/safe-read.c (EINTR): Remove definition.
36800         (safe_read): Don't use EINTR if it is absent.
36801
36802 2002-12-01  Jim Meyering  <jim@meyering.net>
36803
36804         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
36805         zero.
36806         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
36807
36808 2002-11-27  Paul Eggert  <eggert@twinsun.com>
36809
36810         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
36811         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
36812         with `if (! (value < limit)) abort ();', for readability.
36813
36814 2002-11-26  Karl Berry  <karl@gnu.org>
36815
36816         * lib/strdup.c: copy from libc again, with jim's ok.
36817         * lib/.cppi-disable: re-add strdup.c
36818
36819 2002-11-25  Karl Berry  <karl@gnu.org>
36820
36821         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
36822         instead of "strtol.c".
36823
36824 2002-11-25  Karl Berry  <karl@gnu.org>
36825
36826         * config/install-sh: update from automake for variable quoting, $0 in
36827         error msgs, etc.
36828
36829         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
36830         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
36831         entry.
36832
36833 2002-11-25  Jim Meyering  <jim@meyering.net>
36834
36835         * lib/mktime.c: Sync from libc, now that it has the latest fix.
36836
36837 2002-11-24  Karl Berry  <karl@gnu.org>
36838
36839         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
36840         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
36841
36842 2002-11-24  Jim Meyering  <jim@meyering.net>
36843
36844         Update from coreutils:
36845
36846         * lib/mktime.c: Merge in changes from libc.
36847
36848         Avoid a link-time failure on some Linux systems.
36849         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
36850         (otherwise).
36851         (__mon_yday): Declare with the STATIC attribute.
36852         (__mktime_internal): Likewise.
36853         Based on a report from Greg Schafer.
36854
36855 2002-11-23  Jim Meyering  <jim@meyering.net>
36856
36857         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
36858         Use `unsigned', not `int', as type of index.
36859
36860         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
36861
36862         * lib/fsusage.c: Remove unneeded parentheses around operands of
36863         `defined'.
36864
36865 2002-11-22  Paul Eggert  <eggert@twinsun.com>
36866
36867         * lib/quotearg.h: Allow multiple inclusion by surrounding with
36868         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
36869         so that we can be included first.
36870         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
36871         * lib/quotearg.c: Include quotearg.h immediately after config.h.
36872         No need to include stddef.h or sys/types.h any more.
36873         Surround local include files with "", not "<>".
36874         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
36875         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
36876         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
36877         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
36878         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
36879         (ISPRINT): Remove; no longer needed now that we assume C89.
36880
36881         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
36882         Preserve errno.
36883
36884         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
36885         quotearg_char): Use SIZE_MAX rather than
36886         (size_t) -1 when we are talking about "infinity".
36887
36888         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
36889
36890 2002-11-22  Paul Eggert  <eggert@twinsun.com>
36891
36892         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
36893         hint that one should use `if (! x) abort ();' rather than `assert
36894         (x);', and anyway it's one less thing to worry about configuring.
36895         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
36896         hash_rehash, hash_insert): Use abort rather than assert.
36897
36898 2002-11-22  Bruno Haible  <bruno@clisp.org>
36899
36900         * lib/safe-read.h: Assume C89. Add comments.
36901         (safe_read): Change return type to size_t.
36902         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
36903         byte counts > SSIZE_MAX correctly.
36904         * lib/safe-write.h: New file.
36905         * lib/safe-write.c: New file.
36906         * lib/full-read.h: New file.
36907         * lib/full-read.c: New file.
36908         * lib/full-write.h: Assume C89. Add comments.
36909         * lib/full-write.c: Include safe-write.h.
36910         (full_write): Rewritten to use safe_write.
36911         Suggested by Jim Meyering and Paul Eggert.
36912
36913 2002-11-21  Jim Meyering  <jim@meyering.net>
36914
36915         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
36916
36917         Merge in changes from the coreutils.
36918
36919         2002-09-25  Paul Eggert  <eggert@twinsun.com>
36920         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
36921         <stdint.h>.
36922         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
36923         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
36924         int.  Work more efficiently if X is the same width as uintmax_t.
36925         Do not compare X to -1, to avoid bogus compiler warning.
36926         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
36927         Don't assume that f_frsize and f_bsize are the same type.
36928
36929         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
36930         warning on FreeBSD.
36931
36932         * lib/makepath.c (make_path): Restore umask *before* creating the final
36933         component.
36934         (make_path): Minor reformatting.
36935
36936         * lib/xmalloc.c: Adjust to work with new autoconf macros,
36937         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
36938         HAVE_MALLOC/HAVE_REALLOC.
36939
36940         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
36941         dummy ones.  At least on GNU/Linux systems, `auto' means something
36942         else.
36943         From Michael Stone.
36944
36945 2002-11-21  Bruno Haible  <bruno@clisp.org>
36946
36947         Remove case insensitive option matching.
36948         * lib/argmatch.h (argcasematch): Remove declaration.
36949         (ARGCASEMATCH): Remove macro.
36950         (__xargmatch_internal): Remove case_sensitive argument.
36951         (XARGMATCH): Update.
36952         (XARGCASEMATCH): Remove macro.
36953         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
36954         case_sensitive argument.
36955         (argcasematch): Remove function.
36956         (__xargmatch_internal): Remove case_sensitive argument.
36957         (main): Use XARGMATCH instead of XARGCASEMATCH.
36958
36959         * lib/xmalloc.c: Change compile-time error message. Add comment about
36960         required autoconf version.
36961
36962 2002-11-20  Paul Eggert  <eggert@twinsun.com>
36963
36964         Merge argmatch cleanups from Bison.  Assume C89.
36965
36966         * lib/argmatch.c: Include config.h here, not in argmatch.h.
36967         Include stdlib.h, for EXIT_FAILURE.
36968         Always include <string.h>, since we assume C89.
36969         (EXIT_FAILURE): Remove pre-C89 bug workaround.
36970         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
36971         Include <stddef.h> instead, since it's all we need for size_t.
36972         (PARAMS): Remove.  All uses removed.
36973         (ARRAY_CARDINALITY): Do not bother to #undef.
36974         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
36975         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
36976         Remove unnecessary parentheses.
36977         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
36978         Insert necessary parentheses.
36979         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
36980         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
36981
36982 2002-11-19  Bruno Haible  <bruno@clisp.org>
36983
36984         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
36985         * lib/mbswidth.h: Include <stddef.h>, for size_t.
36986
36987         * lib/mbswidth.h (PARAMS): Remove macro.
36988         (mbswidth, mbsnwidth): Use ANSI C function declarations.
36989         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
36990
36991         * lib/gcd.h (PARAMS): Remove macro.
36992         (gcd): Use ANSI C function declarations.
36993         * lib/gcd.c (gcd): Likewise.
36994
36995 2002-11-15  Bruno Haible  <bruno@clisp.org>
36996
36997         * lib/strcspn.c: Include <stddef.h>.
36998         (strcspn): Use ANSI C function declaration. Change return type to
36999         size_t. Use NULL.
37000         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
37001         (strpbrk): Use NULL.
37002         * lib/strpbrk.h (PARAMS): Remove macro.
37003         (strpbrk): Use ANSI C function declaration.
37004         * lib/strstr.c: Don't include <sys/types.h>.
37005         * lib/strstr.h (PARAMS): Remove macro.
37006         (strstr): Use ANSI C function declarations.
37007
37008 2002-11-14  Karl Berry  <karl@gnu.org>
37009
37010         * config/mkinstalldirs: `do' on separate line, instead of
37011         `for var; do'.
37012
37013 2002-11-06  Bruno Haible  <bruno@clisp.org>
37014
37015         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
37016         * lib/gcd.c (gcd): Likewise.
37017
37018 2002-11-05  Bruno Haible  <bruno@clisp.org>
37019
37020         * lib/gcd.h: New file, from gettext-0.11.5.
37021         * lib/gcd.c: New file, from gettext-0.11.5.
37022
37023 2002-11-05  Bruno Haible  <bruno@clisp.org>
37024
37025         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
37026         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
37027         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
37028         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
37029
37030         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
37031         <libintl.h>.
37032         * lib/makepath.c: Include gettext.h instead of <locale.h> and
37033         <libintl.h>.
37034
37035         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
37036         * lib/human.c: Include gettext.h instead of <libintl.h>.
37037         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
37038         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
37039         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
37040         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
37041         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
37042         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
37043         (textdomain): Remove definition.
37044         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
37045
37046         * lib/long-options.c: Remove include of <libintl.h> and definition of
37047         _.
37048         * lib/same.c: Remove include of <libintl.h> and definition of _.
37049
37050 2002-11-04  Owen Taylor  <otaylor@redhat.com>
37051
37052         * lib/config.charset: A few additions for Solaris.
37053
37054 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
37055
37056         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
37057         * lib/localcharset.c (locale_charset): Declare as extern "C".
37058
37059 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
37060
37061         * lib/config.charset: msdos in uk_UA uses CP1125.
37062
37063 2002-11-04  Bruno Haible  <bruno@clisp.org>
37064
37065         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
37066         * lib/strcase.h: New file, from GNU gettext-0.11.5.
37067         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
37068         * lib/strstr.h: New file, from GNU gettext-0.11.5.
37069         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
37070
37071 2002-11-04  Bruno Haible  <bruno@clisp.org>
37072
37073         * lib/localcharset.c (locale_charset): Don't return an empty string.
37074
37075 2002-11-04  Bruno Haible  <bruno@clisp.org>
37076
37077         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
37078         aliases.
37079
37080 2002-11-04  Bruno Haible  <bruno@clisp.org>
37081
37082         * lib/config.charset: Update for newest glibc. Add canonical names
37083         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
37084
37085 2002-11-04  Bruno Haible  <bruno@clisp.org>
37086
37087         * lib/config.charset: Add support for NetBSD.
37088
37089 2002-11-04  Bruno Haible  <bruno@clisp.org>
37090
37091         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
37092
37093 2002-11-01  Bruno Haible  <bruno@clisp.org>
37094
37095         * configure.in: Add AC_CONFIG_AUX_DIR call.
37096         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
37097         test/Makefile.
37098         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
37099
37100 2002-09-28  Karl Berry  <karl@gnu.org>
37101
37102         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
37103         installed automake until the next release, since changes have been
37104         made.
37105
37106 2002-09-25  Karl Berry  <karl@gnu.org>
37107
37108         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
37109         * lib/getopt*: copy from libc/posix.
37110         * lib/gettext.h: copy from gettext.
37111         * lib/.cppi-disable: add strdup.c, gettext.h.
37112
37113 2002-09-25  Karl Berry  <karl@gnu.org>
37114
37115         * config/srclist.txt: enable gettext.h check.
37116         * config/config.{guess,sub}: update from prep.
37117         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
37118                 from automake 1.6.3.
37119         See srclist*.
37120
37121 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
37122
37123         * regex.c (PATFETCH): Remove the translating fetch.
37124         (PATFETCH_RAW): Rename to PATFETCH.
37125         (set_image_of_range): New fun.
37126         (SET_RANGE_TABLE_WORK_AREA): Use it.
37127         (regex_compile): Don't translate the pattern chars so eagerly.
37128         Only do it when inserting an `exactn' bytecode or when handling
37129         a char-range.
37130         (mutually_exclusive_p): Avoid empty statement.
37131
37132 2002-07-06  Jim Meyering  <meyering@lucent.com>
37133
37134         * m4/README: Don't mention Makefile.am.in.
37135         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
37136
37137 2002-07-01  Jim Meyering  <meyering@lucent.com>
37138
37139         * lib/c-stack.c: Include sys/time.h.
37140         From Volker Borchert.
37141
37142 2002-06-26  Paul Eggert  <eggert@twinsun.com>
37143
37144         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
37145
37146 2002-06-26  Paul Eggert  <eggert@twinsun.com>
37147
37148         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
37149         New macro.  Use it uniformly instead of
37150         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
37151         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
37152         reported by Vin Shelton.
37153
37154 2002-06-22  Paul Eggert  <eggert@twinsun.com>
37155
37156         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
37157         Do not assume SA_SIGINFO behavior.
37158         Bug reported by Jim Meyering on NetBSD 1.5.2.
37159
37160 2002-06-22  Jim Meyering  <meyering@lucent.com>
37161
37162         * m4/c-stack.m4: New file, from diffutils-2.8.2.
37163         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
37164
37165         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
37166         now that configure.ac uses AC_GNU_SOURCE.
37167         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
37168         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
37169
37170         Update to latest tools.  Suggestions from Paul Eggert.
37171         * m4/stdbool.m4: New file, from diffutils-2.8.2.
37172         * m4/gnu-source.m4: Update from diffutils-2.8.2.
37173         * m4/fnmatch.m4: Likewise.
37174         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
37175         to AC_HEADER_STDBOOL
37176
37177 2002-06-22  Jim Meyering  <meyering@lucent.com>
37178
37179         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
37180         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
37181
37182 2002-06-22  Jim Meyering  <meyering@lucent.com>
37183
37184         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
37185
37186         * lib/exitfail.c, exitfail.h: Likewise.
37187         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
37188
37189         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
37190         of fnmatch.h.
37191         (EXTRA_DIST): Add fnmatch_loop.c.
37192         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
37193
37194         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
37195         * lib/fnmatch.c: Update from diffutils-2.8.2.
37196         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
37197         * lib/fnmatch.h: Remove file.
37198
37199 2002-06-21  Jim Meyering  <meyering@lucent.com>
37200
37201         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
37202         * m4/mbrtowc.m4: Likewise.
37203
37204         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
37205         * m4/mbswidth.m4: Reflect name change:
37206         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
37207         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
37208
37209         * m4/lib-link.m4: Update from gettext-0.11.2.
37210         * m4/gettext.m4: Likewise.
37211
37212         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
37213         From Alfred M. Szmidt.
37214
37215 2002-06-18  Paul Eggert  <eggert@twinsun.com>
37216
37217         * lib/file-type.h: Report an error if neither S_ISREG nor
37218         S_IFREG is defined, instead of using a test specific to glibc
37219         2.2.  This should be safe, since POSIX requires S_ISREG and
37220         Unix Version 7 had S_IFREG.  We don't need to check for
37221         <sys/types.h> since we don't use any symbols that it defines.
37222
37223 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
37224
37225         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
37226         $@-t, so that each temporary file name is unique and valid in the first
37227         8 characters, for operation under DOS.
37228
37229 2002-06-15  Paul Eggert  <eggert@twinsun.com>
37230
37231         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
37232
37233 2002-06-15  Jim Meyering  <meyering@lucent.com>
37234
37235         Work even with DJGPP 2.03, which lacks support for symlinks.
37236         From Richard Dawe.
37237         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
37238         is defined.
37239         * lib/lchown.c (S_ISLNK): Likewise.
37240
37241 2002-06-15  Jim Meyering  <meyering@lucent.com>
37242
37243         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
37244         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
37245         have been included before this file.
37246
37247 2002-06-14  Jim Meyering  <meyering@lucent.com>
37248
37249         * lib/file-type.h: Use the version from diffutils-2.8.2.
37250         * lib/file-type.c: Likewise.
37251
37252 2002-06-07  Jim Meyering  <meyering@lucent.com>
37253
37254         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
37255         They're needed at least for NetBSD 1.5.2.
37256         ($statxfs_includes): Include those same headers.
37257         ($statxfs_includes): Include sys/vfs.h if available.
37258         ($statxfs_includes): Likewise for sys/statvfs.h.
37259         Check for the following members in both structs statfs and statvfs:
37260         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
37261
37262 2002-06-01  Jim Meyering  <meyering@lucent.com>
37263
37264         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
37265         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
37266
37267 2002-05-28  Jim Meyering  <meyering@lucent.com>
37268
37269         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
37270         Reported by Volker Borchert.
37271
37272 2002-05-27  Jim Meyering  <meyering@lucent.com>
37273
37274         Fix a problem seen only on nonconforming systems whereby ls.c's
37275         use of localtime, and then of gettimeofday would cause trouble:
37276         the localtime call used to initialize rpl_gettimeofday's save
37277         mechanism would clobber ls's current local time information so
37278         that in any long listing the first file would always be listed
37279         with date 1970-01-01.  Analysis by Volker Borchert.
37280
37281         * lib/gettimeofday.c (localtime): Undefine.
37282         (rpl_localtime): New function.
37283
37284 2002-05-27  Jim Meyering  <meyering@lucent.com>
37285
37286         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
37287         localtime.
37288
37289         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
37290         use the replacement function; it wouldn't resolve at link time.
37291         Reported by Volker Borchert.
37292
37293 2002-05-22  Jim Meyering  <meyering@lucent.com>
37294
37295         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
37296         file-type.h.
37297         * lib/file-type.h: New file.
37298         * lib/file-type.c (file_type): New file/function.  Extracted from
37299         diffutils.
37300
37301 2002-04-30  Jim Meyering  <meyering@lucent.com>
37302
37303         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
37304
37305 2002-04-29  Paul Eggert  <eggert@twinsun.com>
37306
37307         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
37308
37309 2002-04-29  Paul Eggert  <eggert@twinsun.com>
37310
37311         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
37312         Do not check for alloca.h (no longer used) or stdbool.h (was never
37313         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
37314
37315 2002-04-29  Paul Eggert  <eggert@twinsun.com>
37316
37317         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
37318
37319 2002-04-29  Jim Meyering  <meyering@lucent.com>
37320
37321         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
37322         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
37323         Use AC_FUNC_STRNLEN here instead.
37324
37325         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
37326         With autoconf-2.53a, it's part of AC_PROG_CC.
37327
37328 2002-04-28  Paul Eggert  <eggert@twinsun.com>
37329
37330         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
37331         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
37332
37333 2002-04-28  Paul Eggert  <eggert@twinsun.com>
37334
37335         * lib/sig2str.h, lib/sig2str.c: New files.
37336         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
37337
37338 2002-04-28  Paul Eggert  <eggert@twinsun.com>
37339
37340         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
37341         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
37342         of 127, since 64 is the largest conceivable number for ancient
37343         nonstandard hosts.
37344         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
37345
37346 2002-04-28  Jim Meyering  <meyering@lucent.com>
37347
37348         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
37349
37350 2002-04-24  Jim Meyering  <meyering@lucent.com>
37351
37352         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
37353         (jm_PREREQ): Use it.
37354
37355         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
37356         mach/mach.h fcntl.h.
37357         Check for this function: setlocale.
37358
37359 2002-04-24  Jim Meyering  <meyering@lucent.com>
37360
37361         * lib/gettext.h: New file, from Gettext.
37362         * lib/Makefile.am (INCLUDES): Remove -I../intl.
37363         (libfetish_a_SOURCES): Add gettext.h.
37364
37365 2002-04-16  Jim Meyering  <meyering@lucent.com>
37366
37367         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
37368         ut_pid, ut_id, ut_exit.
37369
37370 2002-04-16  Jim Meyering  <meyering@lucent.com>
37371
37372         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
37373         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
37374         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
37375
37376 2002-04-12  Jim Meyering  <meyering@lucent.com>
37377
37378         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
37379         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
37380         existence of the getmntinfo function.  Needed for Darwin 5.3.
37381
37382         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
37383         This is necessary at least on Darwin 5.3.
37384
37385         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
37386         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
37387         strnlen.o in the library, and that makes some versions of ranlib
37388         object.
37389
37390 2002-04-12  Jim Meyering  <meyering@lucent.com>
37391
37392         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
37393
37394 2002-04-09  Jim Meyering  <meyering@lucent.com>
37395
37396         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
37397         to be more precise.  Rather than saying we're checking whether the
37398         function `works', say what we're testing.
37399         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
37400         Reported by Bruno Haible.
37401
37402 2002-03-10  Jim Meyering  <meyering@lucent.com>
37403
37404         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
37405         Suggestion from Santiago Vila.
37406
37407 2002-03-08  Jim Meyering  <meyering@lucent.com>
37408
37409         * lib/rename.c: Mention that this wrapper is needed also on
37410         mips-dec-ultrix4.4 systems.
37411
37412 2002-03-02  Jim Meyering  <meyering@lucent.com>
37413
37414         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
37415         not HAVE_CLOCK_SETTIME.
37416
37417 2002-02-27  Paul Eggert  <eggert@twinsun.com>
37418
37419         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
37420         Check for clock_settime.
37421
37422 2002-02-27  Paul Eggert  <eggert@twinsun.com>
37423
37424         * lib/nanosleep.h: Rename to....
37425         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
37426
37427         * lib/gettime.c: New file.
37428         * lib/settime.c: New file.
37429         * lib/stime.c: Remove.
37430
37431         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
37432         timespec.h.  Remove nanosleep.h.
37433
37434 2002-02-25  Paul Eggert  <eggert@twinsun.com>
37435
37436         * m4/acl.m4: New file.
37437         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
37438         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
37439
37440 2002-02-25  Paul Eggert  <eggert@twinsun.com>
37441
37442         * lib/acl.c, lib/acl.h: New files.
37443         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
37444
37445 2002-02-24  Jim Meyering  <meyering@lucent.com>
37446
37447         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
37448         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
37449         cause trouble.  Reported by Nelson Beebe.
37450
37451 2002-02-23  Paul Eggert  <eggert@twinsun.com>
37452
37453         * lib/path-concat.c (xpath_concat): Reorder code to pacify
37454         compilers that don't know that xalloc_die never returns.
37455
37456 2002-02-20  Jim Meyering  <meyering@lucent.com>
37457
37458         * lib/getdate.c: Regenerate using bison-1.33.
37459
37460 2002-02-17  Jim Meyering  <meyering@lucent.com>
37461
37462         * config/config.guess (main): Don't use `head -1'; it's no longer
37463         portable. Use `sed 1q' instead.
37464
37465 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
37466
37467         * m4/codeset.m4: Upgrade to gettext-0.11.
37468         * m4/gettext.m4: Upgrade to gettext-0.11.
37469         * m4/glibc21.m4: Upgrade to gettext-0.11.
37470         * m4/iconv.m4: Upgrade to gettext-0.11.
37471         * m4/isc-posix.m4: Upgrade to gettext-0.11.
37472         * m4/lcmessage.m4: Upgrade to gettext-0.11.
37473         * m4/lib-ld.m4: New file, from gettext-0.11.
37474         * m4/lib-link.m4: New file, from gettext-0.11.
37475         * m4/lib-prefix.m4: New file, from gettext-0.11.
37476         * m4/progtest.m4: Upgrade to gettext-0.11.
37477
37478 2002-02-15  Paul Eggert  <eggert@twinsun.com>
37479
37480         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
37481         (jm_PREREQ): Use it.
37482
37483 2002-02-15  Paul Eggert  <eggert@twinsun.com>
37484
37485         * lib/posixver.c, lib/posixver.h: New files.
37486         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
37487
37488 2002-02-02  Paul Eggert  <eggert@twinsun.com>
37489             Bruno Haible  <bruno@clisp.org>
37490
37491         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
37492         (fwrite_success_callback): New declaration.
37493         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
37494         print_unicode_char. Call failure callback instead of error.
37495         (fwrite_success_callback): New function.
37496         (exit_failure_callback): New function.
37497         (fallback_failure_callback): New function.
37498         (print_unicode_char): Call unicode_to_mb.
37499
37500 2002-01-26  Jim Meyering  <meyering@lucent.com>
37501
37502         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
37503         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
37504
37505 2002-01-26  Jim Meyering  <meyering@lucent.com>
37506
37507         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
37508
37509 2002-01-22  Paul Eggert  <eggert@twinsun.com>
37510
37511         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
37512
37513 2002-01-22  Jim Meyering  <meyering@lucent.com>
37514
37515         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
37516         Otherwise, some versions of automake would omit the rule that makes
37517         Makefile from Makefile.in.
37518
37519 2002-01-21  Paul Eggert  <eggert@twinsun.com>
37520
37521         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
37522         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
37523         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
37524         (memcoll): Set errno to zero if there is no error.
37525
37526         * lib/quotearg.c (quotearg_buffer_restyled):
37527         Fix bug with quoting buffers containing NUL when backslashing escapes.
37528         This bug was exposed by the other changes in this patch.
37529         (quotearg_n_options): New arg ARGSIZE.
37530         All callers changed.
37531         (quoting_options_from_style): New function.
37532         (quotearg_n_style): Use it.
37533         (quotearg_n_style_mem): New function.
37534
37535         * lib/quotearg.h (quotearg_n_style_mem): New function.
37536
37537 2002-01-19  Jim Meyering  <meyering@lucent.com>
37538
37539         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
37540         Remove useless quotes: DF_PROG="df".
37541         * m4/strnlen.m4: New file.
37542
37543 2002-01-16  Paul Eggert  <eggert@twinsun.com>
37544
37545         * lib/backupfile.c (ISDIGIT): Comment fix.
37546         * lib/getdate.y (ISDIGIT): Likewise.
37547         * lib/posixtm.c (ISDIGIT, year): Likewise.
37548         * lib/strverscmp.c (ISDIGIT): Likewise.
37549         * lib/userspec.c (ISDIGIT): Likewise.
37550
37551 2002-01-16  Jim Meyering  <meyering@lucent.com>
37552
37553         * lib/getdate.y: Add three semicolons, each just before a closing
37554         brace. Bison (as of version 1.31) no longer papers over that mistake.
37555
37556 2002-01-05  Jim Meyering  <meyering@lucent.com>
37557
37558         * lib/version-etc.c (version_etc_copyright): Update copyright year.
37559
37560 2001-12-19  Paul Eggert  <eggert@twinsun.com>
37561
37562         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
37563         not silently exit merely because the output buffer happens to
37564         have nothing pending.
37565
37566 2001-12-18  Paul Eggert  <eggert@twinsun.com>
37567
37568         See the big note in ../ChangeLog.
37569         * lib/human.c (suffixes): Prefer K to k for 1024.
37570         (generate_suffix_backwards): New function.
37571         (human_readable_inexact): Use it.
37572         * lib/xstrtol.c (__xstrtol): If there is no number but there
37573         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
37574         Accept 'K' as well as 'k'.
37575
37576 2001-12-15  Jim Meyering  <meyering@lucent.com>
37577
37578         * lib/regex.h (__restrict_arr): Update from libc.
37579
37580         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
37581         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
37582         (STREQ): Define.
37583
37584 2001-12-14  Jim Meyering  <meyering@lucent.com>
37585
37586         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
37587         Suggestion from Bruno Haible.
37588
37589 2001-12-10  Jim Meyering  <meyering@lucent.com>
37590
37591         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
37592         xrealloc, Instead, include "xalloc.h".
37593         (initbuffer): Don't cast xmalloc return value to char*.
37594         (readline): Reword comment.
37595         Don't cast xrealloc return value to char*
37596         Return NULL, not 0.
37597
37598 2001-12-09  Jim Meyering  <meyering@lucent.com>
37599
37600         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
37601         about `signed and unsigned type in conditional expression'.
37602         * lib/posixtm.c (posix_time_parse): Likewise.
37603
37604         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
37605
37606         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
37607         to avoid a pedantic warning.
37608
37609         * lib/getstr.c: Don't include assert.h.
37610         (getstr): Remove warning-evoking assertions.
37611         Return -1 if offset parameter is out of bounds.
37612         Change the type of a local from int to size_t.
37613
37614         * lib/strftime.c (my_strftime_localtime_r): Include this function
37615         definition in the `#if ! HAVE_TM_GMTOFF' block.
37616
37617         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
37618         Include xalloc.h instead.
37619
37620 2001-12-02  Jim Meyering  <meyering@lucent.com>
37621
37622         * lib/tempname.c: Don't declare getenv, thus reverting the change of
37623         2001-11-18.  It's no longer necessary, now that stdlib.h is always
37624         included.
37625
37626         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
37627         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
37628
37629 2001-11-30  Akim Demaille  <akim@epita.fr>
37630
37631         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
37632         before being defined.
37633
37634 2001-11-27  Paul Eggert  <eggert@twinsun.com>
37635
37636         * lib/quotearg.h (quotearg_n, quotearg_n_style):
37637         First arg is int, not unsigned.
37638         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
37639         (SIZE_MAX, UINT_MAX): New macros.
37640         (quotearg_n_options): Abort if N is negative.
37641         Avoid overflow check on hosts where size_t is 64 bits and int
37642         is 32 bits, as overflow is impossible there.
37643         Fix off-by-one typo that caused unnecessary reallocation.
37644
37645 2001-11-27  Jim Meyering  <meyering@lucent.com>
37646
37647         * lib/tempname.c: Merge with version from libc.
37648         * lib/regex.c: Likewise.
37649
37650         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
37651         systems for which STDC_HEADERS is 0, it was not included, resulting in
37652         a warning about an integer-to-pointer conversion problem with getenv.
37653         Reported by Volker Borchert.
37654
37655 2001-11-26  Jim Meyering  <meyering@lucent.com>
37656
37657         * lib/gtod.h: Remove file.
37658         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
37659         * lib/gettimeofday.c: Don't include gtod.h.
37660         (GTOD_init): Remove function.
37661         (rpl_gettimeofday): Do its job here instead, rather than aborting.
37662         Suggestion from Volker Borchert.
37663
37664 2001-11-23  Jim Meyering  <meyering@lucent.com>
37665
37666         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
37667         it.
37668         * lib/hash.c (struct hash_table): Define it here instead.
37669
37670 2001-11-22  Jim Meyering  <meyering@lucent.com>
37671
37672         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
37673
37674 2001-11-20  Jim Meyering  <meyering@lucent.com>
37675
37676         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
37677         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
37678
37679 2001-11-19  Jim Meyering  <meyering@lucent.com>
37680
37681         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
37682         directory.  Use "conftestXXXXXX" as the template.
37683         Suggestion from Paul Eggert.
37684
37685         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
37686         immediately, so the test doesn't mistakenly hit the max-open-files
37687         limit.
37688
37689 2001-11-18  Paul Eggert  <eggert@twinsun.com>
37690
37691         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
37692         (TEMPORARIES): New macro.
37693         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
37694         removes an artificial limitation (e.g. HP-UX 10.20, where
37695         TMP_MAX is 17576).
37696
37697 2001-11-18  Jim Meyering  <meyering@lucent.com>
37698
37699         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
37700
37701 2001-11-18  Jim Meyering  <meyering@lucent.com>
37702
37703         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
37704         on SunOS 4.
37705
37706         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
37707         files will be created before anything else.
37708
37709 2001-11-17  Paul Eggert  <eggert@twinsun.com>
37710
37711         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
37712         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
37713
37714 2001-11-17  Jim Meyering  <meyering@lucent.com>
37715
37716         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
37717         Prompted by a report from Bob Proulx.
37718
37719         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
37720         Instead, require UTILS_FUNC_MKSTEMP.
37721
37722 2001-11-17  Jim Meyering  <meyering@lucent.com>
37723
37724         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
37725         Now, that's done as part of AC_FUNC_STRTOD.
37726
37727 2001-11-17  Jim Meyering  <meyering@lucent.com>
37728
37729         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
37730         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
37731         rather than group writable.  Patch by Juan F. Codagnone.
37732
37733         * lib/readtokens.c: Remove explicit declarations of xmalloc and
37734         xrealloc, Instead, include "xalloc.h".
37735
37736         * lib/mountlist.c: Include unlocked-io.h after all system headers.
37737         Remove explicit declarations of xmalloc, xrealloc,
37738         and xstrdup.  Instead, include "xalloc.h".
37739
37740         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
37741         unlocked-io.h.
37742         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
37743         Likewise.
37744         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
37745
37746         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
37747         Reported by Padraig Brady.
37748
37749         * lib/mkstemp.c: #undef mkstemp.
37750         Include config.h.
37751         (rpl_mkstemp): Rename from mkstemp.
37752         Protoize.
37753
37754 2001-11-16  Jim Meyering  <meyering@lucent.com>
37755
37756         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
37757         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
37758         determine the amount of total physical memory, use pstat_getstatic.
37759         HPUX-11 doesn't define _SC_PHYS_PAGES.
37760         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
37761         If sysconf couldn't be used to determine the amount of available
37762         physical memory, use both pstat_getstatic and pstat_getdynamic.
37763         Based on a patch from Bob Proulx.
37764
37765 2001-11-10  Jim Meyering  <meyering@lucent.com>
37766
37767         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
37768         (jm_PREREQ): Use it.
37769
37770 2001-11-09  Jim Meyering  <meyering@lucent.com>
37771
37772         * m4/jm-macros.m4: Require autoconf-2.52f.
37773         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
37774         Use these AC_-prefixed names, not the AM_-prefixed ones.
37775
37776         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
37777
37778 2001-11-05  Jim Meyering  <meyering@lucent.com>
37779
37780         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
37781
37782 2001-11-04  Jim Meyering  <meyering@lucent.com>
37783
37784         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
37785         $DEFS.
37786
37787 2001-11-03  Jim Meyering  <meyering@lucent.com>
37788
37789         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
37790         of AC_DEFUN.
37791
37792         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
37793         know the name of the variable in the macro definition.
37794
37795 2001-11-03  Jim Meyering  <meyering@lucent.com>
37796
37797         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
37798         in argmatch_to_argument call.
37799
37800         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
37801         argument.
37802
37803         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
37804         e.g., a fault due to an attempt to free a NULL pointer.
37805
37806 2001-11-01  Jim Meyering  <meyering@lucent.com>
37807
37808         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
37809         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
37810
37811 2001-11-01  Jim Meyering  <meyering@lucent.com>
37812
37813         * lib/dirfd.c, lib/dirfd.h: New files.
37814         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
37815
37816         * lib/hash.c (hash_print) [TESTING]: Clean up.
37817
37818 2001-10-22  Paul Eggert  <eggert@twinsun.com>
37819
37820         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
37821         to avoid a warning if -Wall.
37822
37823 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
37824
37825         * README: New file
37826         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
37827         (per RMS's instructions, this is now the canonical source)
37828         * lgpl/, gpl/: New directories.
37829
37830 2001-10-21  Paul Eggert  <eggert@twinsun.com>
37831
37832         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
37833
37834 2001-10-21  Jim Meyering  <meyering@lucent.com>
37835
37836         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
37837         this code would end up calling gettext even in packages built
37838         with --disable-nls.
37839         * lib/getopt.c (_): Likewise.
37840         * lib/regex.c (_): Likewise.
37841
37842 2001-10-20  Paul Eggert  <eggert@twinsun.com>
37843
37844         * m4/error.m4 (jm_PREREQ_ERROR):
37845         Do not invoke AC_CHECK_FUNCS with strerror_r, as
37846         AC_FUNC_STRERROR_R does that.
37847         Check for strerror declaration.
37848
37849         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
37850         are supposed to have them these days.
37851         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
37852         Merge changes from latest Autoconf CVS.
37853         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
37854         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
37855         POSIX decided to standardize on the int flavor of strerror_r.
37856
37857 2001-10-20  Paul Eggert  <eggert@twinsun.com>
37858
37859         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
37860         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
37861         Use strerror_r that is only a macro, even if it is not a function.
37862         (strerror): Check for HAVE_DECL_STRERROR before declaring.
37863         (private_strerror): Use prototypes, not old-style function definition.
37864         (print_errno_message): New function.
37865         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
37866         char*-flavored one.
37867         (error_tail, error, error_at_line): Use it.
37868
37869 2001-10-11  Jim Meyering  <meyering@lucent.com>
37870
37871         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
37872         and quote_n (1, ... to avoid clobbering a buffer.
37873
37874 2001-10-05  Jim Meyering  <meyering@lucent.com>
37875
37876         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
37877         hash-pjw.h.
37878         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
37879         * lib/hash-pjw.h: New file.
37880
37881 2001-09-30  Jim Meyering  <meyering@lucent.com>
37882
37883         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
37884         `struct fsstat' has the `f_fstypename' member.
37885         Use that to define FS_TYPE, which is now used to make
37886         the getfsstat link test tighter.
37887
37888 2001-09-30  Jim Meyering  <meyering@lucent.com>
37889
37890         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
37891         Include <sys/ucred.h>, for Apple Darwin.
37892         Include sys/mount.h and sys/fs_types.h only if available.
37893         (FS_TYPE): Define.
37894         (read_filesystem_list): Use FS_TYPE.
37895
37896 2001-09-29  Paul Eggert  <eggert@twinsun.com>
37897
37898         * lib/exclude.c (excluded_filename): 0 -> false, since it's
37899         a boolean context.
37900
37901 2001-09-29  Jim Meyering  <meyering@lucent.com>
37902
37903         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
37904         [one-argument getmntent function]): Include stdio.h before mntent.h.
37905         SunOS 4.1.x needs it for the declaration of `FILE'.
37906         Patch by Volker Borchert.
37907
37908         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
37909         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
37910         sys/fs_types.h, and make the link-test for getfsstat guard #include
37911         directives with appropriate #if HAVE_*_H tests so that we can
37912         detect getfsstat on Apple Darwin1.3.7 systems.
37913         Reported by Nelson Beebe.
37914         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
37915
37916 2001-09-28  Paul Eggert  <eggert@twinsun.com>
37917
37918         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
37919         #defines strtoimax.  Also treat the other strto* functions
37920         like strtoimax.
37921
37922         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
37923         Check for strtoul and strtoumax,
37924         as those declarations are made even in the signed case.
37925         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
37926         Likewise, for strtol and strtoimax.
37927
37928 2001-09-28  Paul Eggert  <eggert@twinsun.com>
37929
37930         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
37931         #defines strtoimax.  Also treat the other strto* functions
37932         like strtoimax.
37933
37934         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
37935         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
37936         (strtoimax, strtoumax): Do not declare if already defined as a macro.
37937
37938 2001-09-26  Jim Meyering  <meyering@lucent.com>
37939
37940         Most macros in unlocked-io.h had the wrong number of arguments.
37941         * lib/gen-uio: New script.
37942         (USE_UNLOCKED_IO): Define to 1 if not already defined.
37943         * lib/unlocked-io.hin: Remove file.
37944         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
37945         rather than trying to embed it here.
37946         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
37947         Reported by Padraig Brady.
37948
37949 2001-09-25  Volker Borchert  <bt@teknon.de>
37950
37951         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
37952         `result'.
37953
37954 2001-09-24  Jim Meyering  <meyering@lucent.com>
37955
37956         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
37957
37958 2001-09-23  Jim Meyering  <meyering@lucent.com>
37959
37960         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
37961         instead of the mere test for existence of mntent.h.  The latter
37962         would get a false-positive on AIX 3.4 systems.
37963         In the outer getmntent if-block, don't die if neither of the getmntent
37964         tests succeeds.  Instead, just fall through and continue with the
37965         remaining tests.
37966
37967 2001-09-23  Jim Meyering  <meyering@lucent.com>
37968
37969         * lib/mountlist.c: Remove useless parentheses in #if directives.
37970         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
37971         the deprecated MOUNTED symbol is no longer defined in mntent.h.
37972
37973 2001-09-22  Jim Meyering  <meyering@lucent.com>
37974
37975         * m4/gettext.m4: New file.  From gettext.
37976         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
37977         * m4/progtest.m4: Likewise
37978         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
37979         * m4/glibc21.m4: Likewise.
37980
37981         * m4/libintl.m4: Remove.  No longer used.
37982
37983 2001-09-22  Jim Meyering  <meyering@lucent.com>
37984
37985         * lib/localcharset.c: Update from latest gettext.
37986         * lib/config.charset: Likewise.
37987
37988 2001-09-20  Jim Meyering  <meyering@lucent.com>
37989
37990         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
37991         strtoimax.
37992         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
37993         strtoumax.
37994
37995 2001-09-20  Jim Meyering  <meyering@lucent.com>
37996
37997         * lib/xstrtol.c (strtoimax): Guard declaration with
37998         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
37999         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
38000         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
38001         (strtoumax): Likewise, for completeness (it wasn't necessary).
38002
38003 2001-09-17  Paul Eggert  <eggert@twinsun.com>
38004
38005         * lib/strtoimax.c (HAVE_LONG_LONG):
38006         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
38007         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
38008         to work around bug in IBM C compiler.
38009
38010 2001-09-17  Jim Meyering  <meyering@lucent.com>
38011
38012         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
38013         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
38014         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
38015         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
38016         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
38017         whenever the right hand side need not be expanded by the shell.
38018
38019 2001-09-16  Paul Eggert  <eggert@twinsun.com>
38020
38021         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
38022         library.  It's not correct, as some older glibcs are buggy.
38023         fnmatch wasn't fixed until glibc 2.2.
38024
38025         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
38026         special shell magic here.
38027
38028 2001-09-16  Jim Meyering  <meyering@lucent.com>
38029
38030         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
38031         * m4/jm-macros.m4: Require it.
38032
38033 2001-09-16  Jim Meyering  <meyering@lucent.com>
38034
38035         * lib/mkdir.c: New file.
38036
38037 2001-09-15  Jim Meyering  <meyering@lucent.com>
38038
38039         * m4/jm-macros.m4: Check for help2man.
38040
38041 2001-09-11  Jim Meyering  <meyering@lucent.com>
38042
38043         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
38044         The body, by Paul Eggert, was moved here from configure.in.
38045         * m4/jm-macros.m4: Require UTILS_HOST_OS.
38046
38047 2001-09-04  Paul Eggert  <eggert@twinsun.com>
38048
38049         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
38050         (jm_PREREQ): Use it.
38051
38052 2001-09-04  Paul Eggert  <eggert@twinsun.com>
38053
38054         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
38055         Use ssize_t, not int, to store result of readlink.
38056         Check for ssize_t overflow as well as size_t overflow,
38057         as POSIX says the result of readlink is implementation-defined
38058         when ssize_t overflows.
38059         Remove unnecessary cast to char*.
38060         Use free+malloc instead of realloc, as the storage doesn't need
38061         to be preserved and it's clearer and can be more efficient that way.
38062         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
38063         * lib/xreadlink.h (xreadlink): Update prototype.
38064
38065 2001-09-04  Paul Eggert  <eggert@twinsun.com>
38066
38067         * lib/xgetcwd.c: Revert some of the previous change; intead,
38068         fix the HAVE_GETCWD_NULL code to behave more like the
38069         !HAVE_GETCWD_NULL code used to.
38070
38071         Include "xalloc.h".
38072         (xgetcwd): Do not return NULL when memory is exhausted; instead,
38073         invoke xalloc_die.
38074
38075 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38076
38077         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
38078         sys/param.h, as pathmax.h includes them.
38079
38080 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38081
38082         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
38083         (jm_PREREQ_XGETCWD): New macro.
38084
38085         * m4/getcwd.m4: New file.
38086
38087 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38088
38089         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
38090         like the HAVE_GETCWD_NULL code.
38091         Include pathmax.h if not HAVE_GETCWD.
38092         Do not include xalloc.h.
38093         (INITIAL_BUFFER_SIZE): New symbol.
38094         Do not use xmalloc / xrealloc, since the caller is responsible for
38095         handling errors.  Preserve errno around `free' during failure.
38096         Do not overrun buffer when using getwd.
38097
38098 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38099
38100         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
38101         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
38102         getcwd (NULL, 0).
38103
38104 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38105
38106         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
38107         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
38108         spotted by Jim Meyering.
38109
38110 2001-09-03  Jim Meyering  <meyering@lucent.com>
38111
38112         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
38113         failure.
38114
38115 2001-09-02  Jim Meyering  <meyering@lucent.com>
38116
38117         * lib/error.c: Update from GNU libc.
38118
38119 2001-09-01  Jim Meyering  <meyering@lucent.com>
38120
38121         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
38122         Used by df.
38123
38124 2001-09-01  Jim Meyering  <meyering@lucent.com>
38125
38126         * lib/xreadlink.c: New file.
38127         * lib/xreadlink.h: New file.
38128         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
38129         xreadlink.h.
38130
38131         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
38132         doesn't conflict with sparc Solaris 7's definition in
38133         /usr/include/sys/int_types.h.
38134
38135         * lib/exclude.c: Use `""', not `<>' to #include non-system header
38136         files.
38137         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
38138         and strncasecmp as r-values.  Unixware didn't have declarations.
38139
38140 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38141
38142         * lib/xstrtol.h: Add copyright notice.
38143         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
38144         LONGINT_INVALID_SUFFIX_CHAR.
38145
38146 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38147
38148         * lib/xstrtol.c (strtoimax): New decl.
38149
38150 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38151
38152         * lib/xgetcwd.c: Don't include pathmax.h.
38153         Include stdlib.h and unistd.h if available.
38154         Include xalloc.h.
38155         (xmalloc, xstrdup, free): Remove decls.
38156         (xgetcwd): Don't assume sizes fit in unsigned.
38157         Check for overflow when computing sizes.
38158         Simplify reallocation code.
38159
38160 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38161
38162         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
38163         a directory's st_size can have an arbitrary value, so the old
38164         usage could waste an arbitrary amount of memory.  All uses
38165         changed.
38166         * lib/savedir.h: Update prototype.
38167
38168 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38169
38170         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
38171
38172         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
38173         old strtoimax.c.
38174
38175         Also, make the following further changes to make this file's
38176         configuration more similar to that of strtol.c:
38177         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
38178         (strtoumax, uintmax_t, strtoull, strtol): Remove.
38179         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
38180         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
38181         changed to signed values.
38182
38183         And make the following changes as well:
38184         Fix copyright notice, as 1999 was missing.
38185         (verify): New macro.
38186         (strtoimax): Check sizes at compile-time, not run-time.
38187         Prefer strtol to strtoll if both work.
38188         (main): Remove; it was not that useful and was a pain to maintain.
38189
38190         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
38191
38192 2001-08-31  Jim Meyering  <meyering@lucent.com>
38193
38194         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
38195         Use an initial, malloc'd, buffer of length 128 rather than
38196         a statically allocated one of length 1024.
38197
38198 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38199
38200         Simplify code, partly by assuming autoconf 2.52 semantics.
38201
38202         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
38203
38204         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
38205         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
38206         All uses removed.
38207         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
38208         Move AC_REQUIRE to next-to-top level, to avoid confusion.
38209         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
38210         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
38211         jm_AC_HEADER_INTTYPES_H.
38212         * m4/jm-macros.m4 (jm_MACROS): Likewise.
38213
38214         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
38215
38216         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
38217         Quote first arg of AC_DEFUN.
38218         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
38219         since they are needed to parse the include file even if we need
38220         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
38221         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
38222         but with opposite signedness.
38223
38224 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38225
38226         Merge 'exclude' changes from tar 1.13.22.
38227         This fixes one or two unlikely storage allocation overflow bugs,
38228         but doesn't change user-visible behavior otherwise.
38229
38230 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38231
38232         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
38233         (jm_PREREQ_EXCLUDE): New macro.
38234
38235 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38236
38237         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
38238         tm to be declared.
38239
38240 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38241
38242         * lib/hash.c: Remove '2001' from copyright notice.
38243
38244 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38245
38246         * lib/full-write.h: New file.
38247         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
38248         * lib/full-write.c: Correct credits, as cccp.c no longer
38249         exists and anyway it was so heavily changed from the old cccp
38250         code as to be unrecognizable.  Include full-write.h.
38251         (full_write) Return size_t, with short writes meaning failure.
38252         All callers changed.  This fixes a bug with large buffers
38253         on 64-bit hosts.
38254         * lib/utime.c: Include full-write.h.
38255
38256 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38257
38258         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
38259         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
38260         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
38261         Include if available.
38262         (<xalloc.h>): Include
38263         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
38264         (verify): New macro.  Use it to verify that EXCLUDE macros do not
38265         collide with FNM macros.
38266         (struct patopts): New struct.
38267         (struct exclude): Use it, as exclude patterns now come with options.
38268         (new_exclude): Support above changes.
38269         (new_exclude, add_exclude_file):
38270         Initial size must now be a power of two to simplify overflow checking.
38271         (free_exclude, fnmatch_no_wildcards): New function.
38272         (excluded_filename): No longer requires options arg, as the options
38273         are determined by add_exclude.  Now returns bool, not int.
38274         (excluded_filename, add_exclude):
38275         Add support for the fancy new exclusion options.
38276         (add_exclude, add_exclude_file): Now takes int options arg.
38277         Check for arithmetic overflow when computing sizes.
38278         (add_exclude_file): xrealloc might modify errno, so don't
38279         realloc until after errno might be used.
38280
38281         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
38282         New macros.
38283         (free_exclude): New decl.
38284         (add_exclude, add_exclude_file): Now takes int options arg.
38285         (excluded_filename): No longer requires options arg, as the options
38286         are determined by add_exclude.  Now returns bool, not int.
38287
38288 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38289
38290         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
38291
38292 2001-08-27  Jim Meyering  <meyering@lucent.com>
38293
38294         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
38295
38296         * lib/version-etc.c (N_): Remove definition.
38297         Revert most of last change.
38298         Instead, simply don't mark the `Copyright...' string for translation.
38299         Based on advice from Paul Eggert.
38300
38301         * lib/strtoxmax.c: Tweak comment.
38302
38303 2001-08-26  Jim Meyering  <meyering@lucent.com>
38304
38305         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
38306
38307         * m4/xstrtoimax.m4: New file.
38308         * m4/xstrtoumax.m4: Add comments explaining why we
38309         AC_REPLACE_FUNCS(strtol).
38310
38311 2001-08-26  Jim Meyering  <meyering@lucent.com>
38312
38313         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
38314         of copyright with `%s' so translators don't get an untranslated
38315         message in 2002.
38316         (COPYRIGHT_YEAR): Define.
38317         (version_etc): Use fprintf rather than fputs.
38318         Suggestion from Ulrich Drepper.
38319
38320         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
38321
38322         * lib/strtoll.c: New file, from GNU libc.
38323         * lib/xstrtoimax.c: New file.
38324
38325         * lib/xstrtol.h: Add xstrtoimax.
38326         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
38327         * lib/strtoimax.c: New file.  Likewise, but first define
38328         STRTOUXMAX_SIGNED.
38329
38330         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
38331         ...
38332         * lib/strtoxmax.c: ... then renamed to this.
38333
38334 2001-08-18  Paul Eggert  <eggert@twinsun.com>
38335
38336         * m4/inttypes.m4: Add AC_PREREQ(2.13).
38337         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
38338         (jm_AC_TYPE_INTMAX_T): New macro.
38339         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
38340
38341         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
38342
38343         * m4/longlong.m4: Renamed from ulonglong.m4.
38344         * m4/inttypes.m4: Renamed from inttypes_h.m4.
38345         * m4/uintmax_t.m4: Removed.
38346
38347 2001-08-13  Paul Eggert  <eggert@twinsun.com>
38348
38349         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
38350         Port to Solaris 8, where 'sed' requires a space after the 'r'
38351         command, and where sh dislikes "$/".  Clean up the spacing a bit.
38352         Redirect output to $tmp just once.
38353
38354 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
38355
38356         * lib/addext.c (<errno.h>): Include.
38357         (errno): Declare if not defined.
38358         (addext): Work correctly when pathconf returns -1 and leaves
38359         errno alone because there is no limit.  Also, work even if
38360         pathconf returns a value greater than SIZE_MAX.
38361
38362 2001-08-12  Jim Meyering  <meyering@lucent.com>
38363
38364         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
38365         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
38366         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
38367         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
38368         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
38369         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
38370         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
38371         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
38372         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
38373         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
38374         utime.m4, utimes.m4, xstrtoumax.m4:
38375         Quote the first argument in each use of AC_DEFUN.
38376
38377 2001-08-12  Jim Meyering  <meyering@lucent.com>
38378
38379         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
38380         Simply `return getcwd (NULL, 0);'.
38381         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
38382         Use 1300 as initial value for length, not PATH_MAX.
38383
38384         * lib/pathmax.h: Clean up cpp syntax.
38385
38386 2001-08-12  Jim Meyering  <meyering@lucent.com>
38387
38388         * lib/gettimeofday.c: New file.
38389         * lib/gtod.h: New file.
38390         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
38391
38392 2001-08-05  Jim Meyering  <meyering@lucent.com>
38393
38394         * m4/jm-macros.m4: Require autoconf-2.52.
38395
38396 2001-08-04  Jim Meyering  <meyering@lucent.com>
38397
38398         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
38399         stmt, to get in sync with glibc.
38400
38401 2001-08-03  Paul Eggert  <eggert@twinsun.com>
38402
38403         The following changes are from gettext 0.10.39 as maintained by
38404         Bruno Haible.
38405
38406         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
38407         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
38408         with inverted sense.  All uses changed.
38409
38410         * lib/mbswidth.c: Don't include <limits.h>.
38411         Include <stdlib.h> and <string.h> unconditionally.
38412         (iswcntrl, mbsinit, ISCNTRL): New macros.
38413         (mbsnwidth): Use K&R style function declarations.
38414         Don't bother checking for MB_LEN_MAX == 1, since the compiler
38415         can optimize it when MB_CUR_MAX == 1.
38416         The width of control characters is zero, not 1.
38417
38418 2001-08-03  Paul Eggert  <eggert@twinsun.com>
38419
38420         The following changes are from gettext 0.10.39 as maintained by
38421         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
38422
38423         * m4/codeset.m4: Upgrade to serial AM1.
38424         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
38425         all uses changed.  Quote first arg of AC_DEFUN.
38426         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
38427
38428         * m4/iconv.m4: Upgrade to serial AM2.
38429         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
38430         Add --with-libconv-prefix.
38431         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
38432         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
38433         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
38434         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
38435         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
38436
38437         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
38438         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
38439         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
38440         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
38441         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
38442         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
38443         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
38444         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
38445         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
38446
38447         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
38448         string.h any more.
38449
38450         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
38451         not the default value.
38452
38453         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
38454         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
38455         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
38456         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
38457         Also check for iswcntrl, used for wcwidth fallback.
38458         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
38459         to Autoconf 2.13.
38460
38461 2001-08-03  Jim Meyering  <meyering@lucent.com>
38462
38463         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
38464         as it was in the original.  Reported by Paul Eggert.
38465
38466 2001-07-16  Jim Meyering  <meyering@lucent.com>
38467
38468         * m4/gettimeofday.m4: New file.
38469         Prompted by a report from Bernhard Baehr.
38470
38471 2001-07-15  Jim Meyering  <meyering@lucent.com>
38472
38473         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
38474         stuff. Now it's in ../Makefile.cfg.
38475
38476 2001-07-15  Jim Meyering  <meyering@lucent.com>
38477
38478         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
38479         (BUILT_SOURCES): Add unlocked-io.h.
38480         (io_functions): Define.
38481         (unlocked-io.h): New rule.
38482         (DISTCLEANFILES): Add unlocked-io.h.
38483         (all-local): Depend on unlocked-io.h, to ensure it is created.
38484
38485         * lib/unlocked-io.hin: New file
38486
38487         * lib/regex.c: Update from glibc.
38488
38489 2001-07-05  Jim Meyering  <meyering@lucent.com>
38490
38491         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
38492         recommendation.
38493         (libfetish_a_SOURCES): Put all .h files here instead.
38494         Remove a thus-exposed (better checks in automake) duplicate and
38495         two unnecessary .h files.
38496
38497 2001-07-04  Jim Meyering  <meyering@lucent.com>
38498
38499         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
38500         that generates jm-glibc-io.m4 so that it doesn't trigger any make
38501         distcheck failure.
38502
38503 2001-07-02  Jim Meyering  <meyering@lucent.com>
38504
38505         The following changes were prompted by suggestions from Bruno Haible.
38506
38507         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
38508         is now generated.
38509         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
38510         definition of EXTRA_DIST.
38511         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
38512         ensure that the generated file is created/updated whenever the list
38513         of $(unlocked_functions) is changed.
38514         (jm-glibc-io.m4): New rule.
38515         (unlocked-io.h): New rule -- currently unused.
38516
38517 2001-06-24  Jim Meyering  <meyering@lucent.com>
38518
38519         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
38520         unmatched right bracket, rather than kludging it with an extra,
38521         falsely-matching quote in a comment.  Patch by Akim Demaille.
38522
38523 2001-06-11  Jim Meyering  <meyering@lucent.com>
38524
38525         * lib/regex.c: Update from GNU libc.
38526
38527 2001-05-27  Jim Meyering  <meyering@lucent.com>
38528
38529         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
38530         Check for ut_type in struct utmp.
38531
38532 2001-05-27  Jim Meyering  <meyering@lucent.com>
38533
38534         * lib/readutmp.h (UT_TYPE): Define.
38535
38536 2001-05-24  Jim Meyering  <meyering@lucent.com>
38537
38538         * lib/argmatch.c: Include "quote.h".
38539         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
38540         quote function.  Reported by Göran Uddeborg.
38541
38542 2001-05-22  Jim Meyering  <meyering@lucent.com>
38543
38544         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
38545         now that we use the package-supplied version unconditionally.
38546         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
38547
38548 2001-05-21  Jim Meyering  <meyering@lucent.com>
38549
38550         * m4/regex.m4: Change a couple backticks to single quotes to avoid
38551         shell syntax errors.
38552
38553 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
38554
38555         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
38556
38557 2001-05-20  Paul Eggert  <eggert@twinsun.com>
38558
38559         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
38560         Don't bother to check library strftime, since
38561         we'll be using our own my_strftime function anyway.
38562         Define my_strftime instead of strftime.
38563
38564 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
38565
38566         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
38567         which is not yet declared.
38568
38569 2001-05-15  Jim Meyering  <meyering@lucent.com>
38570
38571         * m4/regex.m4: Use proper quoting so brackets appear in the test
38572         program.
38573         Reported by, and with help from, Bruno Haible.
38574
38575 2001-05-13  Jim Meyering  <meyering@lucent.com>
38576
38577         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
38578         undefined.
38579
38580 2001-05-11  Paul Eggert  <eggert@twinsun.com>
38581
38582         dirname code cleanup.  base_name now behaves more compatibly
38583         with POSIX basename when given file names that have trailing
38584         slashes, and similarly for dir_name.  Add new primitives
38585         base_len and dir_len.  Put the directory-name-related decls
38586         into dirname.h.
38587
38588         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
38589         * lib/backupfile.c (base_name): Likewise.
38590         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
38591         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
38592         * lib/makepath.c (strip_trailing_slashes): Likewise.
38593         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
38594         ISSLASH): Likewise.
38595         * lib/rename.c (strip_trailing_slashes): Likewise.
38596         * lib/same.c (base_name): Likewise.
38597         * lib/stripslash.c (ISSLASH): Likewise.
38598
38599         * lib/addext.c: Include <dirname.h> after size_t is defined.
38600         * lib/backupfile.c: Likewise.
38601
38602         * lib/addext.c (addext): Use base_len to trim redundant
38603         trailing slashes instead of doing it ourselves.
38604         But do not trim the last slash if it is not redundant.
38605
38606         * lib/backupfile.c (find_backup_file_name,
38607         max_backup_version): Use base_len instead of rolling it ourselves.
38608         Handle the case of "" and (on DOS) "C:" correctly.
38609
38610         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
38611         needed. Include <string.h>, <dirname.h>.
38612         (base_name): Allow file names ending in slashes, other than names
38613         that are all slashes.  In this case, return the basename followed
38614         by the slashes.  This is more general, and can be used in places
38615         where the original base_name purposely had an assertion failure.
38616         (base_len): New function.
38617
38618         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
38619         Do not include <assert.h>; no longer needed.
38620         Include xalloc.h.
38621         (memrchr): Remove decl.
38622         (dir_name_r): Remove.
38623         (dir_len): Renamed from dirlen.  All callers changed.
38624         Rewrite in terms of base_name, for simplicity and consistency.
38625         (dir_name): Never return NULL.  All callers changed.
38626         Do not include <stdlib.h> in test program; no longer needed.
38627         return 0; is fine for test program.
38628
38629         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
38630         New macros.
38631         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
38632
38633         * lib/path-concat.c (path_concat): Use base_len to compute
38634         base length, not strlen; this means we cannot rely on memcpy
38635         to null-terminate.
38636
38637         * lib/same.c (STREQ): Remove.
38638         (same_name): Handle the case where the basename ends in trailing '/'.
38639
38640         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
38641         a slash was stripped.  Do not strip the last slash after a
38642         file system prefix.
38643
38644 2001-05-11  Paul Eggert  <eggert@twinsun.com>
38645
38646         * lib/Makefile.am (libfetish_a_SOURCES):
38647         Add strftime.c, since we now compile it on all hosts.
38648
38649         * lib/strftime.c (my_strftime):
38650         Define to nstrftime if emacs, but only if my_strftime is not defined.
38651         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
38652         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
38653         Add one more extra argument: a nanoseconds value.
38654         All uses changed.
38655         (ns): New macro.
38656         (my_strftime function): Add %N format.
38657         (emacs_strftimeu): Renamed from emacs_strftime,
38658         with extra ut argument.
38659
38660 2001-05-09  Paul Eggert  <eggert@twinsun.com>
38661
38662         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
38663
38664 2001-04-21  Jim Meyering  <meyering@lucent.com>
38665
38666         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
38667         doesn't interfere.
38668
38669 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
38670
38671         * m4/ftruncate.m4: Check for chsize.
38672         Link with ftruncate.o unconditionally if ftruncate is missing.
38673         This was required when cross-compiling to i586-mingw32msvc.
38674
38675 2001-04-08  Jim Meyering  <meyering@lucent.com>
38676
38677         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
38678         recomputed; that's necessary when the offset spans a DST transition.
38679         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
38680
38681 2001-04-02  Jim Meyering  <meyering@lucent.com>
38682
38683         * lib/regex.h, regex.c: Update from GNU libc.
38684
38685 2001-03-24  Jim Meyering  <meyering@lucent.com>
38686
38687         * m4/jm-macros.m4: Require autoconf-2.49d.
38688
38689 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
38690
38691         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
38692
38693 2001-03-19  Paul Eggert  <eggert@twinsun.com>
38694
38695         * lib/version-etc.c (version_etc_copyright): Update to 2001.
38696
38697 2001-03-17  Jim Meyering  <meyering@lucent.com>
38698
38699         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
38700         now that the version in autoconf is equivalent.
38701         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
38702
38703         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
38704         Suggestion from Akim Demaille.
38705
38706         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
38707         (jm_PREREQ_TEMPNAME): New function.
38708
38709 2001-03-16  Paul Eggert  <eggert@twinsun.com>
38710
38711         * lib/tempname.c (uint64_t): Define to uintmax_t if
38712         not defined, and if UINT64_MAX is not defined.
38713         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
38714         Reported by John David Anglin.
38715
38716 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
38717
38718         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
38719         resolve alias if codeset is empty.
38720         * lib/config.charset (BeOS): Use wildcard syntax.
38721
38722 2001-03-13  Jim Meyering  <meyering@lucent.com>
38723
38724         * lib/path-concat.c (path_concat)
38725         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
38726         concatenating e.g., `C:' and `foo'.
38727         From Bruno Haible.
38728
38729 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
38730
38731         * lib/localcharset.c (locale_charset): Don't use
38732         setlocale(LC_CTYPE,NULL). Don't return NULL.
38733         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
38734
38735 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
38736
38737         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
38738         support for DOS/DJGPP.
38739
38740 2001-03-01  Paul Eggert  <eggert@twinsun.com>
38741
38742         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
38743         lacks mkstemp.  Compile our own tempname.c if we compile our own
38744         mkstemp.c, as mkstemp relies on tempname.
38745
38746 2001-03-01  Jim Meyering  <meyering@lucent.com>
38747
38748         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
38749         AH_VERBATIM really does output its argument verbatim.
38750
38751 2001-02-28  Paul Eggert  <eggert@twinsun.com>
38752
38753         * lib/Makefile.am (libfetish_a_SOURCES):
38754         Add dup-safer.c, fopen-safer.c.
38755         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
38756
38757         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
38758         * lib/unistd-safer.h: New files.
38759
38760 2001-02-25  Paul Eggert  <eggert@twinsun.com>
38761
38762         The mkstemp replacement is taken from glibc 2.2.2, with some
38763         portability fixes for use outside glibc, as follows:
38764
38765         * lib/tempname.c (struct_stat64): New macro.
38766         (direxists, __gen_tempname): Use it.
38767         This avoids a portability problem with Solaris 8.
38768
38769         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
38770         (<stddef.h>, <stdint.h>, <string.h>):
38771         Include only if STDC_HEADERS || _LIBC.
38772         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
38773         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
38774         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
38775         (__set_errno): Define this macro if <errno.h> doesn't.
38776         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
38777         Define these macros if <stdio.h> doesn't.
38778         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
38779         Define these macros if <sys/stat.h>
38780         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
38781         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
38782         __xstat64): Define if not _LIBC.
38783         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
38784         (__gen_tempname): Invoke gettimeofday only if
38785         HAVE_GETTIMEOFDAY || _LIBC;
38786         otherwise, fall back on plain "time".
38787         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
38788
38789         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
38790
38791         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
38792
38793 2001-02-18  Paul Eggert  <eggert@twinsun.com>
38794
38795         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
38796
38797 2001-02-17  Paul Eggert  <eggert@twinsun.com>
38798
38799         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
38800         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
38801         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
38802         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
38803
38804 2001-02-17  Paul Eggert  <eggert@twinsun.com>
38805
38806         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
38807         Remove workaround macros for hosts that have mbrtowc but not
38808         mbstate_t, as we now insist on proper declarations for both
38809         before using mbrtowc.
38810
38811 2001-02-17  Jim Meyering  <meyering@lucent.com>
38812
38813         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
38814         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
38815         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
38816         UnixWare 7.1.1.
38817
38818         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
38819         rather than AC_CACHE_VAL.
38820
38821 2001-02-17  Jim Meyering  <meyering@lucent.com>
38822
38823         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
38824         around included file name.
38825
38826         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
38827
38828         * lib/strftime.c: Update from GNU libc (the only changes were to
38829         comments).
38830
38831 2001-02-17  Jim Meyering  <meyering@lucent.com>
38832
38833         * lib/regex.c: Update from libc.
38834
38835 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
38836
38837         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
38838         clash.
38839
38840 2001-02-16  Paul Eggert  <eggert@twinsun.com>
38841
38842         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
38843         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
38844         Reported by Mark Hounschell via Paul Eggert.
38845
38846 2001-02-07  Jim Meyering  <meyering@lucent.com>
38847
38848         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
38849
38850 2001-02-05  Jim Meyering  <meyering@lucent.com>
38851
38852         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
38853         it includes the patch required for `large file' support with at least
38854         HP-UX's 10.20 /bin/cc.
38855
38856 2001-02-03  Jim Meyering  <meyering@lucent.com>
38857
38858         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
38859         AS_IF, now that it works once again (mysteriously).
38860         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
38861
38862 2001-01-30  Jim Meyering  <meyering@lucent.com>
38863
38864         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
38865         * m4/chown.m4: Rename conftestchown to conftest.chown.
38866         * m4/rename.m4: s/conftestdir/conftest.d1/ and
38867         s/conftestdir2/conftest.d2/.
38868         * m4/utimes.m4: s/conftestdata/conftest.data/
38869         Inspired by Pavel Roskin's change in autoconf.
38870
38871 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
38872
38873         * lib/config.charset: Update for FreeBSD 4.2.
38874
38875 2001-01-27  Jim Meyering  <meyering@lucent.com>
38876
38877         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
38878         a use of AS_IF.
38879         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
38880
38881 2001-01-26  Jim Meyering  <meyering@lucent.com>
38882
38883         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
38884         quotearg.c includes it.
38885
38886 2001-01-26  Jim Meyering  <meyering@lucent.com>
38887
38888         * lib/quotearg.c: Include stddef.h.
38889         * lib/quote.c: Include stddef.h.
38890         Reported by Axel Kittenberger.
38891
38892         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
38893         line in double quotes so that it evokes a better diagnostic.
38894         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
38895         Reported by Axel Kittenberger.
38896
38897 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
38898
38899         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
38900         as if it was a `charset'.
38901
38902 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
38903
38904         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
38905         has const.
38906
38907 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
38908
38909         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
38910         to avoid a warning.  Add back 'const' to inptr.
38911
38912 2001-01-20  Jim Meyering  <meyering@lucent.com>
38913
38914         Be sure that headers are checked before used in code compiled
38915         for the type checks.
38916         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
38917         In place of that, invoke jm_CHECK_ALL_TYPES.
38918         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
38919         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
38920         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
38921         The check for ssize_t was mistakenly run before the test for unistd.h.
38922
38923         The configure-time check for stdbool.h was missing.
38924         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
38925         (jm_PREREQ_HASH): New function.
38926
38927 2001-01-17  Jim Meyering  <meyering@lucent.com>
38928
38929         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
38930         for autoconf-2.49c.
38931         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
38932
38933 2001-01-16  Jim Meyering  <meyering@lucent.com>
38934
38935         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
38936         From Bruno Haible.
38937
38938 2001-01-14  Jim Meyering  <meyering@lucent.com>
38939
38940         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
38941         foo and bar.  Create conftestdir/ in the script, not in the C code.
38942         Remove directories in the script, not in the C code.
38943         Remove conftestdir{,2} before trying to create the directory.
38944         Make the entire configure script fail if the mkdir fails.
38945
38946 2001-01-14  Jim Meyering  <meyering@lucent.com>
38947
38948         * lib/rename.c: New file.  From Volker Borchert.
38949         Include stdlib.h, string.h or strings.h, and xalloc.h.
38950         Use strip_trailing_slashes rather than open-coding it.
38951
38952 2001-01-03  Paul Eggert  <eggert@twinsun.com>
38953
38954         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
38955
38956 2001-01-03  Jim Meyering  <meyering@lucent.com>
38957
38958         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
38959         of local `inptr' to avoid warning with some system declarations of
38960         iconv.
38961
38962 2001-01-02  Volker Borchert  <bt@teknon.de>
38963
38964         * m4/rename.m4: New file.
38965         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
38966
38967 2001-01-01  Jim Meyering  <meyering@lucent.com>
38968
38969         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
38970         even on systems with utmpx.h.  It's necessary for the declaration of
38971         utmp's ut_user member.  Reported by Andreas Jaeger.
38972
38973         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
38974         available. They are required for the declarations of getgrgid and
38975         getpwuid resp.
38976         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
38977         Reported by Andreas Jaeger.
38978
38979 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
38980
38981         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
38982         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
38983         so `make install' also works in VPATH builds.
38984
38985 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
38986
38987         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
38988         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
38989         can be used in subdirectories.
38990
38991 2000-12-29  Paul Eggert  <eggert@twinsun.com>
38992
38993         * lib/modechange.c: Do not assume that mode_t uses the
38994         traditional octal encoding.  E.g. "chmod 1 FOO" should set
38995         the other-execute bit of FOO even if S_IXOTH != 1.
38996
38997         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
38998         WOTH, XOTH, ALLM): New macros.
38999         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
39000          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
39001         Use them.
39002         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
39003         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
39004         (mode_compile):
39005         No need to use uintmax_t; unsigned long is long enough.
39006         Don't bother to get suffix since we don't use it.
39007
39008 2000-12-26  Jim Meyering  <meyering@lucent.com>
39009
39010         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
39011         better with autoheader.
39012
39013 2000-12-24  Jim Meyering  <meyering@lucent.com>
39014
39015         * lib/hash.c (is_prime): Return explicit boolean values.
39016         (hash_get_first): Return NULL to appease Irix5.6's 89.
39017         Reported by Nelson Beebe.
39018
39019 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
39020
39021         * lib/localcharset.c (locale_charset): Add support for Win32.
39022
39023 2000-12-18  Paul Eggert  <eggert@twinsun.com>
39024
39025         * lib/physmem.h, lib/physmem.c: New files.
39026
39027         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
39028         (noinst_HEADERS): Add physmem.h.
39029
39030         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
39031         't' for compatibility with Solaris 8 sort.
39032
39033 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
39034
39035         * lib/config.charset: Add support for BeOS.
39036
39037 2000-12-17  Jim Meyering  <meyering@lucent.com>
39038
39039         * m4/dos.m4 (jm_AC_DOS): New file and macro.
39040         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
39041
39042 2000-12-16  Jim Meyering  <meyering@lucent.com>
39043
39044         This bug had a serious impact on chown: `chown N:M FILE' (for integer
39045         N and M) would have treated it like `chown N:N FILE'.
39046
39047         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
39048
39049 2000-12-16  Jim Meyering  <meyering@lucent.com>
39050
39051         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
39052         SHELLS_FILE to a file name that's useful on djgpp systems.
39053         Include stdlib.h.
39054         (ADDITIONAL_DEFAULT_SHELLS): Define.
39055         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
39056         Based mostly on a patch from Prashant TR.
39057
39058 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
39059
39060         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
39061         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
39062         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
39063
39064 2000-12-08  Andreas Schwab  <schwab@suse.de>
39065
39066         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
39067         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
39068
39069 2000-12-07  Jim Meyering  <meyering@lucent.com>
39070
39071         * lib/stripslash.c (ISSLASH): Define.
39072         (strip_trailing_slashes): Use ISSLASH rather than comparing against
39073         `/'.
39074         From Prashant TR.
39075
39076         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
39077         (dir_name_r): Declare this function as static.
39078         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
39079         manifest itself on a name containing a mix of slashes and
39080         backslashes.
39081         Make this function work with names starting with a DOS-style
39082         drive letter and colon prefix.
39083         (dir_name): Append `.' if necessary.
39084         Based mostly on patches from Prashant TR and Eli Zaretskii.
39085
39086         * lib/dirname.h (dir_name_r): Remove prototype.
39087
39088 2000-12-06  Paul Eggert  <eggert@twinsun.com>
39089
39090         * m4/off_t-format.m4: Remove this file.
39091         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
39092
39093 2000-12-06  Jim Meyering  <meyering@lucent.com>
39094
39095         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
39096         replacement strtoull, we may well need the replacement strtoul, too.
39097         Check for declarations of strtoul and strtoull.
39098         Check for strtol.  Mainly as a cue to cause automake to include
39099         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
39100         Check for limits.h -- strtol.c needs it.
39101
39102 2000-12-05  Jim Meyering  <meyering@lucent.com>
39103
39104         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
39105
39106 2000-12-04  Jim Meyering  <meyering@lucent.com>
39107
39108         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
39109         Also include memory.h, stdlib.h, unistd.h if appropriate.
39110         Reported by Andreas Jaeger (conflicting declaration of malloc).
39111
39112 2000-12-02  Jim Meyering  <meyering@lucent.com>
39113
39114         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
39115         * m4/jm-macros.m4 (jm_MACROS): require it.
39116
39117 2000-12-02  Jim Meyering  <meyering@lucent.com>
39118
39119         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
39120
39121 2000-12-01  Paul Eggert  <eggert@twinsun.com>
39122
39123         * lib/memrchr.c: Include <config.h> before any system include file.
39124
39125 2000-11-30  Jim Meyering  <meyering@lucent.com>
39126
39127         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
39128
39129 2000-11-30  Jim Meyering  <meyering@lucent.com>
39130
39131         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
39132
39133 2000-11-29  Paul Eggert  <eggert@twinsun.com>
39134
39135         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
39136
39137 2000-11-26  Jim Meyering  <meyering@lucent.com>
39138
39139         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
39140
39141 2000-11-22  Paul Eggert  <eggert@twinsun.com>
39142
39143         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
39144         size of (size_t) -1; it's not portable.
39145
39146 2000-11-17  Jim Meyering  <meyering@lucent.com>
39147
39148         * lib/strstr.c: Update from GNU libc.
39149
39150 2000-11-17  Akim Demaille  <akim@epita.fr>
39151
39152         * lib/obstack.h: Formatting changes.
39153         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
39154         prevent type checking.
39155         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
39156         cast the value to (void *): assigning a `foo *' to a `void *'
39157         variable is valid.
39158         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
39159
39160 2000-11-16  Jim Meyering  <meyering@lucent.com>
39161
39162         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
39163
39164 2000-11-11  Jim Meyering  <meyering@lucent.com>
39165
39166         * lib/error.c: Add a couple #includes, merging from GNU libc version.
39167
39168 2000-11-10  Jim Meyering  <meyering@lucent.com>
39169
39170         * lib/obstack.h: Update from GNU libc.
39171         * lib/obstack.c: Likewise.
39172
39173 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
39174
39175         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
39176
39177 2000-11-06  Paul Eggert  <eggert@twinsun.com>
39178
39179         * lib/getusershell.c (setusershell): Use rewind rather than
39180         fseek/fseeko, to avoid configuration hassles with fseeko.
39181         Don't bother opening SHELLS_FILE if shellstream is NULL;
39182         it's not necessary.
39183
39184 2000-11-05  Jim Meyering  <meyering@lucent.com>
39185
39186         * lib/makepath.h (make_dir): Declare.
39187         * lib/makepath.c (make_dir): Remove `static' attribute.
39188         Tweak a comment.
39189
39190 2000-11-04  Jim Meyering  <meyering@lucent.com>
39191
39192         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
39193
39194 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
39195
39196         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
39197         last one in a bucket, advance to the next bucket.
39198
39199 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
39200
39201         * lib/fnmatch.c: Do not comment out all the code if we are using
39202         the GNU C library, because in some cases we are replacing buggy
39203         code in the GNU C library itself.
39204
39205 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
39206
39207         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
39208         (regex_compile): Catch bogus \(\1\).
39209
39210 2000-10-30  Paul Eggert  <eggert@twinsun.com>
39211
39212         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
39213         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
39214         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
39215
39216 2000-10-30  Paul Eggert  <eggert@twinsun.com>
39217
39218         * lib/error.h, getline.h, modechange.h:
39219         Remove "2000" from Copyright line, as the file hasn't been
39220         changed this year other than in the copyright notice.
39221
39222         * lib/xalloc.h: Add "2000" to Copyright line, as this file
39223         was changed this year.
39224
39225 2000-10-29  Jim Meyering  <meyering@lucent.com>
39226
39227         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
39228         renaming.
39229         * m4/ls-mntd-fs.m4: Likewise
39230
39231 2000-10-29  Jim Meyering  <meyering@lucent.com>
39232
39233         * lib/xstat.in: Fix grammar in comment.
39234
39235 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
39236
39237         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
39238         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
39239         doesn't define __restrict_arr.
39240
39241 2000-10-28  Jim Meyering  <meyering@lucent.com>
39242
39243         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
39244         (jm_PREREQ_MEMCHR): New function.
39245
39246 2000-10-28  Jim Meyering  <meyering@lucent.com>
39247
39248         * lib/memchr.c: Update from libc.
39249         Adjust for portability:
39250         [HAVE_STDLIB_H]: Include stdlib.h.
39251         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
39252         Undef __memchr, too.
39253         [!weak_alias]: Define __memchr to memchr.
39254
39255         * lib/regex.c: Update from libc.
39256         * lib/regex.h: Likewise.
39257         * lib/getopt1.c: Likewise.
39258         * lib/memcmp.c: Likewise.
39259
39260         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
39261         Avoid using fseek, when possible -- it's broken by design.
39262         Patch by Ulrich Drepper.
39263
39264 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
39265
39266         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
39267         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
39268         Giving in to popular pressure to shut up the compiler with casts.
39269
39270 2000-10-26  Jim Meyering  <meyering@lucent.com>
39271
39272         * lib/strftime.c: Update from libc.
39273
39274 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
39275
39276         * regex.c: More `unsigned char' -> `re_char' changes.
39277         Also change several `int' into `re_wchar_t'.
39278         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
39279         (PUSH_FAILURE_POINTER): Don't cast any more.
39280         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
39281         We want GCC to complain, since this piece of code makes
39282         re_match non-reentrant, which *should* be fixed.
39283         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
39284         (EXTEND_BUFFER): Use RETALLOC.
39285         (SET_LIST_BIT): Don't cast.
39286         (re_wchar_t): New type.
39287         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
39288         that those two functions will always properly return.
39289         (IMMEDIATE_QUIT_CHECK): Cast to void.
39290         (analyse_first): Use recursion rather than an explicit stack.
39291         (re_compile_fastmap): Can't fail anymore.
39292         (re_search_2): Don't check re_compile_fastmap for failure.
39293         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
39294         Now also sets the new value (passed in a new argument).
39295         (re_match_2_internal): Use it.
39296         Also, use a new var `reg' of type size_t when looping through regs
39297         rather than reuse the inappropriate `mcnt'.
39298
39299 2000-10-25  Jim Meyering  <meyering@lucent.com>
39300
39301         * lib/obstack.c: Update from libc.
39302
39303 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
39304
39305         * regex.c (regex_compile): Change the way of handling a range from
39306         a char less than 256 to a char not less than 256.
39307
39308 2000-10-24  Andrew Innes  <andrewi@gnu.org>
39309
39310         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
39311         NT-Emacs only.
39312         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
39313         so that re_search functions only quit when callers expect them to.
39314
39315 2000-10-23  Jim Meyering  <meyering@lucent.com>
39316
39317         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
39318         wrong.  That set_locale call must not have any side effects.
39319         From Paul Eggert.
39320
39321 2000-10-22  Jim Meyering  <meyering@lucent.com>
39322
39323         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
39324         [CYCLIC]: Remove now-unused definition.
39325
39326         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
39327         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
39328         Suggestion from Ulrich Drepper.
39329
39330 2000-10-21  Jim Meyering  <meyering@lucent.com>
39331
39332         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
39333         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
39334         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
39335
39336 2000-10-21  Jim Meyering  <meyering@lucent.com>
39337
39338         * lib/dirname.c (memrchr): Declare if necessary.
39339         (dir_name): Remove the restriction that there be no
39340         trailing slashes.  Now, this code skips past them, effectively
39341         ignoring them.
39342         [TEST_DIRNAME] (main): New unit tests.
39343
39344         * lib/memrchr.c: New file from GNU libc.
39345         Undef __memrchr, too.
39346         [!weak_alias]: Define __memrchr to memrchr.
39347         Guard weak_alias use with `#ifdef weak_alias'.
39348
39349 2000-10-21  Jim Meyering  <meyering@lucent.com>
39350
39351         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
39352         (dir_name): Use dir_name_r.
39353         * lib/dirname.h (dir_name_r): Declare it.
39354
39355 2000-10-17  Jim Meyering  <meyering@lucent.com>
39356
39357         * lib/quote.h (PARAMS): Define and use.
39358         Reported by Akim Demaille.
39359
39360         * lib/getopt.c: Update from libc.
39361
39362 2000-10-16  Jim Meyering  <meyering@lucent.com>
39363
39364         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
39365         setlocale.
39366         From Jan Fedak.
39367
39368 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
39369
39370         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
39371
39372 2000-09-25  Jim Meyering  <meyering@lucent.com>
39373
39374         * lib/md5.h (rol): Define (from GnuPG).
39375
39376         * lib/sha.c: Give credit (GnuPG) where due.
39377         (M): Use rol rather than open-coding it.
39378         Add a FIXME comment.
39379
39380 2000-09-21  Jim Meyering  <meyering@lucent.com>
39381
39382         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
39383         Reported by Michael Stone.
39384
39385 2000-09-20  Jim Meyering  <meyering@lucent.com>
39386
39387         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
39388         (noinst_HEADERS): Add sha.h.
39389         Based on code from Scott G. Miller and from GnuPG.
39390
39391 2000-09-18  Jim Meyering  <meyering@lucent.com>
39392
39393         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
39394         LIBS. Otherwise, everyone ends up linking with -lelf for some
39395         configurations.
39396         Reported by Mike Stone.
39397
39398 2000-09-15  Jim Meyering  <meyering@lucent.com>
39399
39400         * lib/regex.c: Update from libc.
39401
39402 2000-09-10  Jim Meyering  <meyering@lucent.com>
39403
39404         * lib/getopt.c (_getopt_internal): Update from glibc.
39405
39406 2000-09-09  Jim Meyering  <meyering@lucent.com>
39407
39408         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
39409         think it should be used as a general replacement for isascii.
39410         * lib/fnmatch.c: Likewise.
39411         * lib/mbswidth.c: Likewise
39412         * lib/regex.c: Likewise.
39413
39414         Don't use atoi.
39415         * lib/userspec.c: Include sys/param.h and limits.h.
39416         Include xstrtol.h.
39417         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
39418         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
39419         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
39420         UID, GID.  Check range.
39421
39422 2000-09-06  Jim Meyering  <meyering@lucent.com>
39423
39424         * lib/getopt.c (_getopt_internal): Update from glibc.
39425
39426 2000-08-30  Jim Meyering  <meyering@lucent.com>
39427
39428         * lib/strftime.c: Merge in changes from GNU libc.
39429
39430 2000-08-26  Jim Meyering  <meyering@lucent.com>
39431
39432         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
39433         * m4/fpending.m4: New file.
39434
39435 2000-08-26  Jim Meyering  <meyering@lucent.com>
39436
39437         * lib/closeout.c: Include "__fpending.h".
39438         (close_stdout_status): Return right away if there's nothing to flush.
39439
39440         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
39441         * lib/__fpending.c: New file.
39442         * lib/__fpending.h: New file.
39443
39444 2000-08-20  Jim Meyering  <meyering@lucent.com>
39445
39446         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
39447         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
39448         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
39449
39450 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
39451
39452         Improve fileutils installation on systems where running
39453         programs (like install) can't be unlinked.
39454         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
39455         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
39456
39457 2000-08-07  Paul Eggert  <eggert@twinsun.com>
39458
39459         Standardize on "memory exhausted" instead of "Memory exhausted"
39460         or "virtual memory exhausted".
39461         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
39462         "virtual memory exhausted".
39463         * lib/same.c (same_name): Invoke xalloc_die instead of printing
39464         our own message.
39465         * lib/userspec.c (parse_user_spec): Likewise.
39466         * lib/bumpalloc.h: comment fix
39467         * lib/same.c, userspec.c: Include xalloc.h.
39468
39469         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
39470         not char *const and pointing to a constant array.
39471         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
39472         (xrealloc): Comment fix.
39473
39474         * lib/userspec.c (parse_user_spec):
39475         Don't translate a message until just before returning,
39476         to avoid unnecessary translation.
39477
39478 2000-08-07  Jim Meyering  <meyering@lucent.com>
39479
39480         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
39481         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
39482         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
39483         getgroups.c, gethostname.c, getopt.h, group-member.c,
39484         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
39485         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
39486         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
39487         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
39488         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
39489         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
39490         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
39491         yesno.c: Back out Copyright date changes for each file with no change
39492         this year.  This eases coordination with other programs using the same
39493         source code modules.  From Paul Eggert.
39494
39495 2000-08-06  Paul Eggert  <eggert@twinsun.com>
39496
39497         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
39498         not char, for compatibility with glibc 2.1.3 strftime.c.
39499
39500 2000-08-03  Greg McGary  <greg@mcgary.org>
39501
39502         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
39503         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
39504         (EXTEND_BUFFER): Use them.
39505
39506 2000-08-01  Jim Meyering  <meyering@lucent.com>
39507
39508         * lib/dirname.c (ISSLASH): Define.
39509         (BACKSLASH_IS_PATH_SEPARATOR): Define.
39510         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
39511         both `\' and `/' may be use as path separators.
39512         Based on a patch from Prashant TR.
39513
39514 2000-07-31  Paul Eggert  <eggert@twinsun.com>
39515
39516         * lib/quotearg.c (quotearg_n_options): Don't make the initial
39517         slot vector a constant, since it might get modified.
39518
39519 2000-07-31  Jim Meyering  <meyering@lucent.com>
39520
39521         * lib/xmalloc.c: Use `virtual memory exhausted', not
39522         `Memory exhausted'.
39523         * lib/obstack.c (print_and_abort): Likewise.
39524
39525 2000-07-30  Paul Eggert  <eggert@twinsun.com>
39526
39527         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
39528         buffer, so that the caller can always quote one small
39529         component of a "memory exhausted" message in slot 0.
39530         From a suggestion by Jim Meyering.
39531
39532 2000-07-30  Jim Meyering  <meyering@lucent.com>
39533
39534         * lib/makepath.c (make_path): Quote the other instance, too.
39535
39536         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
39537         (STATIC_BUF_SIZE): Define.
39538         (quotearg_n_options): Use only statically allocated storage when
39539         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
39540         than STATIC_BUF_SIZE.
39541
39542 2000-07-29  Jim Meyering  <meyering@lucent.com>
39543
39544         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
39545         * lib/dirname.c (dir_name): Likewise.
39546
39547         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
39548         `/'.
39549
39550         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
39551         (dir_name): Assert that there are no trailing slashes.
39552
39553 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
39554
39555         * lib/mbswidth.h (mbswidth): Add a flags argument.
39556         (mbswidth): New declaration.
39557         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
39558         * lib/mbswidth.c (mbswidth): Add a flags argument.
39559         (mbsnwidth): New function.
39560
39561 2000-07-24  Jim Meyering  <meyering@lucent.com>
39562
39563         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
39564
39565 2000-07-23  Paul Eggert  <eggert@twinsun.com>
39566
39567         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
39568
39569 2000-07-23  Paul Eggert  <eggert@twinsun.com>
39570
39571         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
39572         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
39573         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
39574         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
39575         invoke multibyte primitives.
39576
39577 2000-07-23  Paul Eggert  <eggert@twinsun.com>
39578
39579         * lib/quotearg.c:
39580         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
39581         so that mbstate_t is always defined.
39582
39583         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
39584         be 1 in at least one GCC installation, and this configuration
39585         error is likely to be common.  Ignoring MB_LEN_MAX hurts
39586         performance on hosts that have mbrtowc but have only unibyte
39587         locales, but I assume these hosts are rare.
39588
39589 2000-07-23  Paul Eggert  <eggert@twinsun.com>
39590
39591         * lib/mbswidth.c (_XOPEN_SOURCE):
39592         Don't define; this causes problems on Solaris 7.
39593         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
39594
39595 2000-07-23  Jim Meyering  <meyering@lucent.com>
39596
39597         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
39598         too: getgrgid, getpwuid, getuid.
39599
39600 2000-07-23  Jim Meyering  <meyering@lucent.com>
39601
39602         * lib/basename.c (base_name): Add an assertion.
39603
39604 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
39605
39606         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
39607         shadow its mbsinit function.
39608
39609 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
39610
39611         * lib/mbswidth.h: New file.
39612         * lib/mbswidth.c: New file.
39613         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
39614         (noinst_HEADERS): Add mbswidth.h.
39615
39616 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
39617
39618         * lib/config.charset: Add support for FreeBSD. Improve support for
39619         HP-UX and IRIX 6.
39620
39621 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
39622
39623         * m4/mbswidth.m4: New file.
39624         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
39625
39626 2000-07-15  Jim Meyering  <meyering@lucent.com>
39627
39628         * lib/makepath.c: Include quote.h.
39629         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
39630         corresponding argument in a `quote (...)' call.
39631         Give better diagnostics.
39632
39633         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
39634         (noinst_HEADERS): Add quote.h.
39635
39636         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
39637         from tar's src/misc.c.
39638         * lib/quote.h: New file.  Prototypes for same.
39639
39640 2000-07-14  Paul Eggert  <eggert@twinsun.com>
39641
39642         From a suggestion by Bruno Haible.
39643         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
39644         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
39645         to decide whether to define the BeOS workaround macro;
39646         this adjusts to the change to AC_MBSTATE_T.
39647
39648 2000-07-14  Jim Meyering  <meyering@lucent.com>
39649
39650         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
39651         jm_AC_TYPE_UINTMAX_T.
39652
39653 2000-07-13  Paul Eggert  <eggert@twinsun.com>
39654
39655         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
39656
39657         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
39658         quotearg_buffer_restyled): Add support for
39659         clocale_quoting_style.  Undo previous change to
39660         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
39661         and "{RIGHT QUOTATION MARK}" msgids.
39662
39663 2000-07-10  Paul Eggert  <eggert@twinsun.com>
39664
39665         From a suggestion by Bruno Haible.
39666         * m4/mbstate_t.m4 (AC_MBSTATE_T):
39667         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
39668         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
39669         and mbstate_t, to a single-part test that simply defines mbstate_t.
39670         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
39671         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
39672
39673 2000-07-10  Jim Meyering  <meyering@lucent.com>
39674
39675         * m4/strerror_r.m4: Mirror the correction made in autoconf.
39676
39677         * m4/gnu-source.m4: Output to confdefs.h directly.
39678         Suggestion from Akim Demaille.
39679
39680 2000-07-09  Paul Eggert  <eggert@twinsun.com>
39681
39682         The old behavior of quoting `like this' doesn't look good with
39683         newer, ISO-style fonts.  See:
39684         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
39685
39686         Instead, quote "like this" by default.  Let the translator
39687         tailor the locale-specific quoting behavior by providing
39688         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
39689
39690         * lib/quotearg.c (N_): New macro.
39691         (gettext_default): New function.
39692         (quotearg_buffer_restyled): Use
39693         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
39694         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
39695
39696 2000-07-09  Jim Meyering  <meyering@lucent.com>
39697
39698         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
39699         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
39700
39701         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
39702         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
39703
39704 2000-07-09  Jim Meyering  <meyering@lucent.com>
39705
39706         * lib/Most files: Update copyright dates to include 2000.
39707
39708 2000-07-08  Jim Meyering  <meyering@lucent.com>
39709
39710         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
39711         if not defined.
39712         (xgethostname): Remove now-unnecessary #ifdef.
39713         Move declaration of `err' into loop where it's used.
39714
39715 2000-07-05  Paul Eggert  <eggert@twinsun.com>
39716         and Bruno Haible  <haible@clisp.cons.org>
39717
39718         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
39719         only if the test for an object-type mbstate_t fails.  This
39720         prevents us from mistakenly reporting that mbstate_t is a
39721         system object type after we "#define mbstate_t int" to work
39722         around its lack.
39723
39724 2000-07-05  Paul Eggert  <eggert@twinsun.com>
39725         and Bruno Haible  <haible@clisp.cons.org>
39726
39727         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
39728
39729 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
39730
39731         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
39732         to strerror_r.
39733         Include <ctype.h> for use of isalpha.
39734
39735 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
39736
39737         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
39738         by allocating a larger buffer. Test the gethostname return value for
39739         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
39740         returns an error and ENAMETOOLONG isn't defined.
39741
39742 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
39743
39744         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
39745         dimension.
39746
39747 2000-07-04  Jim Meyering  <meyering@lucent.com>
39748
39749         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
39750         of the deprecated AC_CHECKING.
39751
39752 2000-07-04  Jim Meyering  <meyering@lucent.com>
39753
39754         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
39755         Reported by Bruno Haible.
39756
39757 2000-07-04  Jim Meyering  <meyering@lucent.com>
39758
39759         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
39760         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
39761         lacks mbrtowc.
39762
39763 2000-07-03  Paul Eggert  <eggert@twinsun.com>
39764
39765         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
39766         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
39767
39768 2000-07-03  Paul Eggert  <eggert@twinsun.com>
39769         and Bruno Haible  <haible@clisp.cons.org>
39770
39771         * lib/quotearg.c (mbrtowc):
39772         Assign to *pwc, and return 1 only if result is nonzero.
39773         (iswprint): Use ISPRINT when substituting our own mbrtowc.
39774
39775 2000-07-03  Jim Meyering  <meyering@lucent.com>
39776
39777         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
39778
39779 2000-07-03  Jim Meyering  <meyering@lucent.com>
39780
39781         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
39782         This is necessary to get a definition of e.g., UTMP_FILE on
39783         HP-UX 10.20.
39784         From Bob Proulx.
39785
39786 2000-07-02  Jim Meyering  <meyering@lucent.com>
39787
39788         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
39789
39790         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
39791         AC_LIBOBJ(function_name).
39792         * m4/chown.m4: Likewise.
39793         * m4/fnmatch.m4: Likewise.
39794         * m4/ftruncate.m4: Likewise.
39795         * m4/getgroups.m4: Likewise.
39796         * m4/getline.m4: Likewise.
39797         * m4/group-member.m4: Likewise.
39798         * m4/jm-macros.m4: Likewise.
39799         * m4/lstat.m4: Likewise.
39800         * m4/malloc.m4: Likewise.
39801         * m4/memcmp.m4: Likewise.
39802         * m4/nanosleep.m4: Likewise.
39803         * m4/putenv.m4: Likewise.
39804         * m4/realloc.m4: Likewise.
39805         * m4/regex.m4: Likewise.
39806         * m4/stat.m4: Likewise.
39807         * m4/strftime.m4: Likewise.
39808
39809 2000-07-02  Jim Meyering  <meyering@lucent.com>
39810
39811         * lib/quotearg.c (mbstate_t): Don't define here.
39812
39813 2000-07-02  Jim Meyering  <meyering@lucent.com>
39814
39815         * lib/nanosleep.c (SIGCONT): Define if not already defined.
39816
39817 2000-07-01  Jim Meyering  <meyering@lucent.com>
39818
39819         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
39820
39821 2000-07-01  Jim Meyering  <meyering@lucent.com>
39822
39823         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
39824         problem.
39825
39826 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
39827
39828         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
39829         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
39830
39831 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
39832
39833         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
39834         per change in ../m4/ls-mntd-fs.m4.
39835         (read_filesystem_list): Ignore symbolic links.
39836
39837 2000-06-29  Jim Meyering  <meyering@lucent.com>
39838
39839         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
39840         for declaration of strcmp.
39841
39842         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
39843
39844         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
39845         Avoid warning by casting result to `char *' to remove `const'.
39846
39847 2000-06-28  Jim Meyering  <meyering@lucent.com>
39848
39849         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
39850         included by quotearg.c, for which we perform this test.  From
39851         Bruno Haible.
39852
39853 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
39854
39855         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
39856         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
39857         <utmpx.h> exists, put readutmp.o into LIBOBJS.
39858
39859 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
39860
39861         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
39862
39863 2000-06-26  Paul Eggert  <eggert@twinsun.com>
39864
39865         savedir now sets errno on failure and invokes xmalloc to get memory.
39866         Fix a couple of other minor bugs while we're at it.
39867
39868         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
39869         (NAMLEN): Remove macro.
39870         (malloc, realloc): Remove decls.
39871         (stpcpy): Likewise.
39872         ("xalloc.h"): Include.
39873         (NAME_SIZE_DEFAULT): New macro.
39874         (savedir): Use xmalloc / xrealloc to allocate memory.
39875         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
39876         Skip "" directory entries.
39877         Use strlen to calculate directory entry length, since the old method
39878         is rarely used these days and isn't worth supporting.
39879         Don't use a pointer after freeing it.
39880         Check for integer overflow when calculating allocation size.
39881         Use memcpy to copy entries, instead of stpcpy.
39882         Set errno properly when returning NULL.
39883         Check for readdir error.
39884
39885 2000-06-26  Jim Meyering  <meyering@lucent.com>
39886
39887         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
39888
39889 2000-06-25  Jim Meyering  <meyering@lucent.com>
39890
39891         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
39892         Linux header bug when _XOPEN_SOURCE is defined to 500.
39893
39894 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
39895
39896         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
39897         deficiency.
39898
39899 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
39900
39901         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
39902         Include xalloc.h.
39903         Don't include <stdlib.h>.  Don't declare malloc, realloc.
39904
39905 2000-06-24  Jim Meyering  <meyering@lucent.com>
39906
39907         * m4/strerror_r.m4: Revive this file -- to try out an experimental
39908         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
39909         for which strerror does return char*, but which lacks a conveniently
39910         accessible declaration of the function.  If the compile-test says
39911         strerror_r doesn't work, then resort to a `run'-test that works on
39912         BeOS and segfaults on DEC Unix.
39913
39914 2000-06-24  Jim Meyering  <meyering@lucent.com>
39915
39916         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
39917
39918 2000-06-23  Paul Eggert  <eggert@twinsun.com>
39919
39920         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
39921         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
39922
39923 2000-06-23  Paul Eggert  <eggert@twinsun.com>
39924
39925         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
39926         (mbrtowc, mbstate_t): Define substitutes if
39927         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
39928         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
39929         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
39930
39931 2000-06-23  Jim Meyering  <meyering@lucent.com>
39932
39933         * m4/afs.m4: Add missing AC_MSG_RESULT.
39934         Reported by Bruno Haible.
39935
39936         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
39937         Suggestion from Bruno Haible.
39938
39939 2000-06-23  Jim Meyering  <meyering@lucent.com>
39940
39941         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
39942
39943 2000-06-21  Jim Meyering  <meyering@lucent.com>
39944
39945         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
39946
39947 2000-06-21  Jim Meyering  <meyering@lucent.com>
39948
39949         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
39950         (noinst_HEADERS): Add getstr.h.
39951
39952         * lib/getline.c (getstr): Move into a separate file.
39953         * lib/getstr.c (getstr): New file, extracted from getline.c, with
39954         the following changes: new parameter, delim2; both delim[12]
39955         parameters have type `int', not `char'.  The latter would lose
39956         with 8-bit delimiters.
39957         * lib/getstr.h: New file.
39958
39959 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
39960
39961         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
39962         than 1024, return a memory chunk of least possible size, instead
39963         of size PATH_MAX + 2. In the loop, increment the size proportionally.
39964         Use free/xmalloc instead of xrealloc to avoid copying for very long
39965         paths.
39966
39967 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
39968
39969         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
39970         the empty string.
39971
39972 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
39973
39974         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
39975         address, not strdup.  Include <stdlib.h> and don't declare free().
39976
39977 2000-06-19  Jim Meyering  <meyering@lucent.com>
39978
39979         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
39980
39981 2000-06-18  Jim Meyering  <meyering@lucent.com>
39982
39983         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
39984
39985         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
39986         `checking whether...' message to be consistent with that of the
39987         lstat test.
39988
39989 2000-06-18  Jim Meyering  <meyering@lucent.com>
39990
39991         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
39992         Besides, these days every porting target provides a mkdir function.
39993
39994         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
39995         needed. (this snippet comes from src/system.h).
39996
39997 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
39998
39999         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
40000
40001 2000-06-15  Paul Eggert  <eggert@twinsun.com>
40002
40003         * lib/human.c (adjust_value): New function.
40004         (human_readable_inexact): Apply rounding style even when
40005         printing approximate values.
40006
40007 2000-06-14  Paul Eggert  <eggert@twinsun.com>
40008
40009         * lib/human.c (human_readable_inexact): Allow an input block
40010         size that is not a multiple of the output block size, and vice versa.
40011         Reported by Piergiorgio Sartor.
40012
40013 2000-06-14  Paul Eggert  <eggert@twinsun.com>
40014
40015         * lib/getdate.y (get_date): Apply relative times after time
40016         zone indicator, not before.  Reported by Todd A. Jacobs.
40017
40018 2000-06-13  Jim Meyering  <meyering@lucent.com>
40019
40020         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
40021
40022         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
40023
40024 2000-06-12  Paul Eggert  <eggert@twinsun.com>
40025
40026         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
40027
40028 2000-06-12  Jim Meyering  <meyering@lucent.com>
40029
40030         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
40031         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
40032         optional argument.
40033         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
40034         the optional argument, `lib'.
40035
40036 2000-06-08  Jim Meyering  <meyering@lucent.com>
40037
40038         * m4/largefile.m4: Remove file (now that it's part of autoconf).
40039
40040 2000-06-04  Paul Eggert  <eggert@twinsun.com>
40041
40042         Rewrite largefile configuration so that we don't need to run
40043         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
40044         AC_CANONICAL_HOST in configure.in -- jmm]
40045
40046         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
40047         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
40048         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
40049         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
40050         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
40051         All uses changed.
40052         Instead of inspecting the output of getconf, try to compile the
40053         test program without and with the macro definition.
40054         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
40055         for getconf.  Instead, check for the needed flags by compiling
40056         test programs.
40057
40058 2000-06-04  Paul Eggert  <eggert@twinsun.com>
40059
40060         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
40061
40062 2000-06-04  Jim Meyering  <meyering@lucent.com>
40063
40064         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
40065         SunOS 4.1.4 for which gid_t is an unsigned type.
40066
40067 2000-06-03  Jim Meyering  <meyering@lucent.com>
40068
40069         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
40070         now that autoconf requires that.
40071
40072         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
40073         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
40074         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
40075
40076 2000-06-03  Jim Meyering  <meyering@lucent.com>
40077
40078         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
40079
40080 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
40081
40082         * m4/glibc21.m4: New file.
40083         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
40084
40085 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
40086
40087         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
40088         newer, don't install charset.alias.
40089         * lib/config.charset: Change the Linux/glibc rules so they become empty
40090         on glibc-2.1 or newer.
40091
40092 2000-06-02  Jim Meyering  <meyering@lucent.com>
40093
40094         * lib/mountlist.c: Back out last change.  Instead, do this...
40095         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
40096         me_dummy member using the same `ignore'-testing code.
40097         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
40098         fs_type strings.
40099         From Mark D. Roth.
40100
40101 2000-05-29  Jim Meyering  <meyering@lucent.com>
40102
40103         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
40104         mounts with the `ignore' attribute.  Based on a patch from
40105         Mark D. Roth.
40106
40107 2000-05-28  Jim Meyering  <meyering@lucent.com>
40108
40109         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
40110         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
40111         * m4/stat.m4: Likewise.
40112         * m4/lstat.m4: Likewise.
40113         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
40114
40115         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
40116         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
40117
40118 2000-05-26  Jim Meyering  <meyering@lucent.com>
40119
40120         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
40121
40122 2000-05-24  Jim Meyering  <meyering@lucent.com>
40123
40124         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
40125         autoconf requires that.
40126         * m4/lib-check.m4: Likewise.
40127         * m4/jm-macros.m4: Likewise.
40128         * m4/strftime.m4: Likewise.
40129
40130         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
40131         AC_CHECK_DECLS, now that autoconf requires that.
40132
40133 2000-05-22  Jim Meyering  <meyering@lucent.com>
40134
40135         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
40136         * m4/lstat.m4: Likewise.
40137
40138 2000-05-22  Jim Meyering  <meyering@lucent.com>
40139
40140         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
40141
40142 2000-05-20  Jim Meyering  <meyering@lucent.com>
40143
40144         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
40145         (jm_PREREQ): Use it.
40146
40147 2000-05-18  Jim Meyering  <meyering@lucent.com>
40148
40149         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
40150         back, too, since it may have been modified by allocate_entry.
40151         (hash_delete): Rewrite to use neither the assignment operator
40152         nor the comma operator in an if-expression.
40153
40154 2000-05-15  Paul Eggert  <eggert@twinsun.com>
40155
40156         * lib/closeout.c:
40157         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
40158         Remove; no longer needed.
40159         "quotearg.h": Add include.
40160         (file_name): Do not bother to explicitly initialize to NULL; it's less
40161         efficient on some hosts.
40162         (close_stdout_status): Remove test as to whether stdout was already
40163         closed; it breaks for the case "echo x | sort >&-".
40164         Quote file name colons.
40165         Do not assume that _("write error") lacks format strings.
40166
40167 2000-05-15  Jim Meyering  <meyering@lucent.com>
40168
40169         * lib/version-etc.c (version_etc_copyright): Update the copyright
40170         string used in all --version output.
40171
40172 2000-05-14  Jim Meyering  <meyering@lucent.com>
40173
40174         * lib/closeout.c (close_stdout_set_file_name): New function.
40175         (close_stdout_status): Use new file-scoped global.
40176         Return right away if fstat says the stdout file descriptor is invalid.
40177         * lib/closeout.h (close_stdout_set_file_name): Declare.
40178
40179 2000-05-10  Jim Meyering  <meyering@lucent.com>
40180
40181         * lib/closeout.c [default_exit_status]: New file-scoped variable.
40182         (close_stdout_set_status): New function.
40183         * lib/closeout.h (close_stdout_set_status): Declare.
40184
40185 2000-05-09  Jim Meyering  <meyering@lucent.com>
40186
40187         * m4/gettext.m4: Rename this...
40188         * m4/libintl.m4: ...to this.
40189
40190 2000-05-08  Jim Meyering  <meyering@lucent.com>
40191
40192         * lib/long-options.c: Don't include closeout.h.
40193         (parse_long_options): Don't call close_stdout for --version.
40194
40195 2000-05-06  Paul Eggert  <eggert@twinsun.com>
40196
40197         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
40198         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
40199         2.1.3 bug.  This avoids a clash when files like regex.c define
40200         _GNU_SOURCE.
40201
40202 2000-05-06  Jim Meyering  <meyering@lucent.com>
40203
40204         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
40205         (AC_REPLACE_FUNCS): Add strnlen.
40206
40207         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
40208         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
40209
40210         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
40211         AC_SEARCH_LIBS call for nanosleep.
40212         (LIB_NANOSLEEP): Set and AC_SUBST.
40213
40214 2000-05-06  Jim Meyering  <meyering@lucent.com>
40215
40216         * lib/strnlen.c: Undefine __strnlen and strnlen.
40217         [!weak_alias]: Define __strnlen to strnlen.
40218
40219         * lib/atexit.c: New file, from libiberty.
40220
40221 2000-05-06  Jim Meyering  <meyering@lucent.com>
40222
40223         * lib/closeout.c (close_stdout_status): Also check for errors on the
40224         stderr stream.
40225
40226 2000-05-05  Jim Meyering  <meyering@lucent.com>
40227
40228         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
40229         AC_SEARCH_LIBS call for clock_gettime.
40230         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
40231
40232         * m4/search-libs.m4: Update from autoconf.
40233
40234         su doesn't work on Solaris 2.6.
40235         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
40236         <shadow.h>.  Reported by Dragos Harabor.
40237
40238 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
40239
40240         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
40241         memcpy instead of xmalloc, xrealloc, path_concat.
40242         (locale_charset): Treat empty environment variables as absent.
40243         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
40244
40245 2000-05-04  Jim Meyering  <meyering@lucent.com>
40246
40247         * lib/getopt.c: Update from glibc.
40248         * lib/obstack.c: Likewise.
40249         * lib/obstack.h: Likewise.
40250         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
40251         file
40252
40253         * lib/regex.h: Likewise.
40254         * lib/strndup.c: Likewise.
40255         * lib/strnlen.c: New file, from glibc.
40256
40257 2000-05-03  Jim Meyering  <meyering@lucent.com>
40258
40259         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
40260
40261 2000-05-02  Paul Eggert  <eggert@twinsun.com>
40262
40263         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
40264         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
40265         compile-time test, rather than inspecting host and OS, to
40266         decide whether to define _LARGEFILE_SOURCE.
40267
40268 2000-05-01  Jim Meyering  <meyering@lucent.com>
40269
40270         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
40271
40272         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
40273         Based on a patch from Bruno Haible.
40274
40275 2000-05-01  Jim Meyering  <meyering@lucent.com>
40276
40277         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
40278
40279 2000-04-29  Jim Meyering  <meyering@lucent.com>
40280
40281         * lib/path-concat.c: Declare strdup only if it's not defined.
40282         * lib/canon-host.c: Likewise.
40283
40284 2000-04-28  Jim Meyering  <meyering@lucent.com>
40285
40286         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
40287         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
40288         is included first, then limits.h is included by locale.h by libintl.h.
40289         From John David Anglin.
40290
40291 2000-04-25  Jim Meyering  <meyering@lucent.com>
40292
40293         * lib/makepath.c (S_IRWXUGO): Define.
40294         (make_path): Always perform explicit chmod if MODE specifies any
40295         of the `special' permission bits.  Prompted by a bug report against
40296         install from Mate Wierdl and Joost van Baal.
40297
40298 2000-04-18  Jim Meyering  <meyering@lucent.com>
40299
40300         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
40301         (jm_PREREQ): Use it.
40302
40303 2000-04-18  Jim Meyering  <meyering@lucent.com>
40304
40305         * lib/README: New file.
40306
40307         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
40308         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
40309
40310 2000-04-17  Jim Meyering  <meyering@lucent.com>
40311
40312         Get it right :-)
40313         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
40314         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
40315         Suggestion from Akim Demaille.
40316
40317 2000-04-17  Jim Meyering  <meyering@lucent.com>
40318
40319         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
40320         the definition of it to rpl_strftime also defined-away the system's
40321         declaration.
40322
40323 2000-04-15  Jim Meyering  <meyering@lucent.com>
40324
40325         Use `C' to denote so-called `contiguous' files, the same way
40326         that tar does.
40327         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
40328         (ftypelet): Use S_ISCTG.
40329         From Michael Deutschmann.
40330
40331 2000-04-14  Jim Meyering  <meyering@lucent.com>
40332
40333         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
40334         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
40335         clobbered.
40336
40337 2000-04-14  Jim Meyering  <meyering@lucent.com>
40338
40339         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
40340
40341 2000-04-13  Jim Meyering  <meyering@lucent.com>
40342
40343         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
40344         AH_VERBATIM to insert required #ifndef into config.h.in.
40345         Suggestion from Akim Demaille.
40346
40347 2000-04-12  Jim Meyering  <meyering@lucent.com>
40348
40349         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
40350         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
40351         Christian Krackowizer.
40352
40353         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
40354         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
40355         (AC_SYS_LARGEFILE): Require.
40356         (AM_C_PROTOTYPES): Require.
40357
40358 2000-04-08  Jim Meyering  <meyering@lucent.com>
40359
40360         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
40361         names don't conflict.  Reported by Eli Zaretskii.
40362
40363 2000-04-07  Jim Meyering  <meyering@lucent.com>
40364
40365         * lib/putenv.c: Move inclusion of errno.h so it follows that of
40366         sys/types.h, to work around system header problems on AIX 3.2.5.
40367         From Bruno Haible.
40368
40369 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
40370
40371         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
40372         bug.  Deal with the different error behavior of Irix iconv.
40373
40374 2000-04-05  Paul Eggert  <eggert@twinsun.com>
40375
40376         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
40377         IRIX if the installer said otherwise.
40378
40379 2000-04-05  Jim Meyering  <meyering@lucent.com>
40380
40381         Portability tweaks required for ultrix4.3.
40382         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
40383         (jm_CHECK_DECLS): Add getutent to the list of functions.
40384         (_jm_DECL_HEADERS): Add utmpx.h.
40385         From John David Anglin.
40386
40387         * m4/strftime.m4: Back out the 2000-04-02 change.
40388         Instead of that change, simply undefine putenv in the test program.
40389
40390 2000-04-05  Jim Meyering  <meyering@lucent.com>
40391
40392         Portability tweaks required for ultrix4.3.
40393         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
40394         getutent.
40395         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
40396         * lib/canon-host.c: Declare strdup.
40397         * lib/path-concat.c: Likewise.
40398         From John David Anglin.
40399
40400 2000-04-04  Jim Meyering  <meyering@lucent.com>
40401
40402         Be more DOS 8.3-friendly.
40403         * lib/ref-add.sin: Renamed from ref-add.sed.in.
40404         * lib/ref-del.sin: Renamed from ref-del.sed.in.
40405         * lib/Makefile.am: Reflect renaming.
40406         Reported by Eli Zaretskii.
40407
40408         Use a temporary file name that won't clash with `charset.alias'
40409         in the DOS 8.3 name space.
40410         * lib/Makefile.am (charset_tmp): Define.
40411         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
40412         (uninstall-local): Likewise.
40413         Reported by Eli Zaretskii.
40414
40415 2000-04-03  Jim Meyering  <meyering@lucent.com>
40416
40417         * m4/gettext.m4: Fix typo in comment.
40418
40419         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
40420         textutils/configure.in).  Suggestion from Paul Eggert.
40421         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
40422
40423 2000-04-02  Paul Eggert  <eggert@twinsun.com>
40424
40425         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
40426         variable in the shell rather than using putenv, which isn't
40427         portable.  This avoids the configure-time inter-test dependency
40428         on the potentially-renamed putenv function.
40429
40430 2000-03-30  Paul Eggert  <eggert@twinsun.com>
40431
40432         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
40433         before checking struct stat.st_blksize, so that
40434         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
40435
40436 2000-03-29  Paul Eggert  <eggert@twinsun.com>
40437
40438         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
40439         since strftime.c uses HAVE_STRFTIME to decide whether to use
40440         the underlying strftime.
40441
40442 2000-03-29  Paul Eggert  <eggert@twinsun.com>
40443
40444         * lib/time/strftime.c (my_strftime): Make sure we call the system
40445         strftime, not ourselves, when invoking the underlying strftime.
40446
40447 2000-03-24  Jim Meyering  <meyering@lucent.com>
40448
40449         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
40450         (charset_alias): Define.
40451         (install-exec-local): Factor out common code.
40452         (uninstall-local): Split lines longer than 80.
40453         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
40454         (SUFFIXES): Define.
40455         (.sed.in.sed): New rule.  Don't redirect directly to $@.
40456         (CLEANFILES): Add ref-add.sed and ref-del.sed.
40457
40458 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
40459
40460         * lib/config.charset: Output a line containing "Packages using this
40461         file".
40462         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
40463         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
40464         ref-del.sed): New rules.
40465
40466 2000-03-17  Jim Meyering  <meyering@lucent.com>
40467
40468         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
40469         Otherwise, include <strings.h>
40470
40471 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
40472
40473         * lib/unicodeio.c (utf8_wctomb): New function.
40474         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
40475         format instead of in UCS-4 with platform dependent endianness.
40476
40477 2000-03-10  Jim Meyering  <meyering@lucent.com>
40478
40479         * m4/lib-check.m4: Look for getspnam in -lgen, too.
40480         From Marco Franzen.
40481
40482 2000-03-07  Paul Eggert  <eggert@twinsun.com>
40483
40484         * lib/savedir.c (savedir): Work even if directory size is
40485         negative; this can happen with some screwy NFS configurations.
40486
40487 2000-03-06  Jim Meyering  <meyering@lucent.com>
40488
40489         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
40490         if it's NULL (because we ran out of memory).  From Bruno Haible.
40491
40492 2000-03-05  Jim Meyering  <meyering@lucent.com>
40493
40494         * lib/localcharset.c ("path-concat.h"): Include.
40495         (get_charset_aliases): Use path_concat instead of ANSI string
40496         concatenation.
40497
40498         * lib/unicodeio.h (PARAMS): Define.
40499         Use it to guard prototype.
40500
40501 2000-03-04  Jim Meyering  <meyering@lucent.com>
40502
40503         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
40504         for lib/localcharset.c.
40505
40506 2000-03-04  Jim Meyering  <meyering@lucent.com>
40507
40508         * lib/Makefile.am (install-exec-local): Create $(libdir) before
40509         installing into it.
40510         (uninstall-local): Uncomment this rule so `make distcheck' works
40511         once again.
40512
40513         * lib/unicodeio.c (<errno.h>): Include it.
40514         (errno): Declare if not defined.
40515
40516         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
40517
40518         * lib/config.charset: New version, incorporating remarks from a linux
40519         i18n mailing list.  From Bruno Haible.
40520
40521 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
40522
40523         * m4/codeset.m4: New file.
40524         * m4/iconv.m4: New file.
40525         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
40526
40527 2000-03-03  Jim Meyering  <meyering@lucent.com>
40528
40529         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
40530
40531 2000-03-02  Jim Meyering  <meyering@lucent.com>
40532
40533         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
40534         the messages come out on separate lines.
40535
40536         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
40537         rather than jm_CHECK_DECLARATIONS.
40538         * m4/decl.m4: Remove now-unused file.
40539
40540         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
40541         geteuid.
40542
40543 2000-03-02  Jim Meyering  <meyering@lucent.com>
40544
40545         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
40546
40547 2000-03-01  Jim Meyering  <meyering@lucent.com>
40548
40549         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
40550         * lib/unicodeio.c: Likewise.
40551
40552 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
40553
40554         * lib/config.charset: New file.
40555         * lib/localcharset.c: New file.
40556         * lib/unicodeio.h, lib/unicodeio.c: New files.
40557         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
40558         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
40559         (noinst_HEADERS): Add unicodeio.h.
40560         (all-local, install-exec-local, charset.alias): New targets.
40561
40562 2000-02-28  Paul Eggert  <eggert@twinsun.com>
40563
40564         * lib/quotearg.c (ALERT_CHAR): New macro.
40565         (quotearg_buffer_restyled): Use it.
40566
40567 2000-02-27  Jim Meyering  <meyering@lucent.com>
40568
40569         * m4/check-decl.m4: Add getenv to the list.
40570
40571 2000-02-27  Jim Meyering  <meyering@lucent.com>
40572
40573         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
40574         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
40575
40576         * lib/backupfile.c: Guard inclusion of stdlib.h with
40577         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
40578         Declare malloc if needed.
40579
40580         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
40581         `#ifndef HAVE_DECL..'
40582         now that autoconf always defines the HAVE_DECL_ symbols.
40583         * lib/human.c: Likewise.
40584         * lib/same.c: Likewise.
40585         * lib/strtoumax.c: Likewise.
40586
40587         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
40588         declaration check was not run.
40589         * lib/hash.c: Likewise.
40590         * lib/human.c: Likewise.
40591         * lib/same.c: Likewise.
40592         * lib/strtoumax.c: Likewise.
40593
40594         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
40595         `.', then first look up the entire `.'-containing string as a login
40596         name.
40597
40598 2000-02-23  Jim Meyering  <meyering@lucent.com>
40599
40600         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
40601         in place of my hack.
40602
40603 2000-02-18  Paul Eggert  <eggert@twinsun.com>
40604
40605         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
40606         (textint): New typedef.
40607         (parser_control): Member year changed from int to textint.
40608         All uses changed.
40609         (YYSTYPE): Removed; replaced by %union with int and textint members.
40610         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
40611         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
40612         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
40613         (tSNUMBER, tUNUMBER): Now of type <textintval>.
40614         (date, number, to_year): Use width of number in digits, not its value,
40615         to determine whether it's a 2-digit year, or a 2-digit time.
40616         (yylex): Store number of digits of numeric tokens.
40617         Reported by John Kendall.
40618
40619         (parser_control): Changed from struct parser_control to typedef (for
40620         consistency).  All uses changed.
40621
40622         (tID): Removed; not used.
40623         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
40624
40625 2000-02-14  Paul Eggert  <eggert@twinsun.com>
40626
40627         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
40628         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
40629
40630 2000-02-12  Jim Meyering  <meyering@lucent.com>
40631
40632         * lib/userspec.c (ISDIGIT): Define it.
40633         (isdigit): Remove definition.
40634         (is_number): Use ISDIGIT, not isdigit.
40635         <libintl.h>: Include.
40636         (_ and N_): Define.
40637         (parse_user_spec): Mark translatable strings.
40638
40639 2000-02-10  Jim Meyering  <meyering@lucent.com>
40640
40641         With these changes, nanosleep.[ch] are finally enough like the other
40642         lib/* replacement files to compile on a few more losing systems.
40643
40644         * lib/nanosleep.h: Don't include config.h.
40645         Remove prototype from declaration of nanosleep.
40646         (PARAMS): Remove now-unneeded definition.
40647         * lib/nanosleep.c: #undef nanosleep.
40648         (rpl_nanosleep): Rename from nanosleep.
40649
40650 2000-02-10  Jim Meyering  <meyering@lucent.com>
40651
40652         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
40653         gnu_nanosleep to rpl_nanosleep.
40654
40655 2000-02-09  Jim Meyering  <meyering@lucent.com>
40656
40657         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
40658         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
40659
40660 2000-02-08  Akim Demaille  <akim@epita.fr>
40661
40662         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
40663         `[' and `]' and remove uses of `changequote'.
40664         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
40665         (AC_SYS_LARGEFILE): Likewise.
40666         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
40667         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
40668         of changequote.
40669         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
40670         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
40671         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
40672         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
40673
40674 2000-02-05  Jim Meyering  <meyering@lucent.com>
40675
40676         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
40677         Remove explicit use of AC_HEADER_TIME.  It is required by
40678         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
40679         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
40680         in autoconf whereby the expansion of the latter ended up preceding
40681         the expansion of its prerequisite, AC_HEADER_TIME.
40682         Reported by Volker Borchert.
40683
40684 2000-02-03  Jim Meyering  <meyering@lucent.com>
40685
40686         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
40687
40688 2000-02-03  Jim Meyering  <meyering@lucent.com>
40689
40690         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
40691         rather than with `#if HAVE_UTMPNAME'.
40692
40693 2000-02-02  Jim Meyering  <meyering@lucent.com>
40694
40695         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
40696         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
40697         Reported by Eli Zaretskii.
40698
40699 2000-02-01  Jim Meyering  <meyering@lucent.com>
40700
40701         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
40702
40703 2000-01-31  Jim Meyering  <meyering@lucent.com>
40704
40705         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
40706         functions.  Add the time.h and sys/time.h headers along with the
40707         AC_REQUIRE'ment of AC_HEADER_TIME.
40708
40709 2000-01-31  Jim Meyering  <meyering@lucent.com>
40710
40711         * lib/nanosleep.h (nanosleep): Guard declaration with
40712         `#if ! HAVE_DECL_NANOSLEEP'.
40713         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
40714         the declaration in that vendor's sys/timers.h.
40715         Reported by Christian Krackowizer.
40716
40717         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
40718         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
40719         (ISPRINT): Likewise.
40720         Reported by Tom Tromey.
40721
40722 2000-01-30  Jim Meyering  <meyering@lucent.com>
40723
40724         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
40725
40726         * m4/prereq.m4 (utmp_includes): Define.
40727         Check for ut_user and ut_name members in both struct utmpx
40728         and struct utmp.
40729
40730 2000-01-30  Jim Meyering  <meyering@lucent.com>
40731
40732         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
40733         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
40734         header files where only utmpx.ut_user is declared.
40735
40736         * lib/readutmp.h (UT_USER): Define.
40737
40738 2000-01-29  Jim Meyering  <meyering@lucent.com>
40739
40740         * m4/lib-check.m4: New file containing library-related checks from
40741         fileutils and sh-utils (textutils had none).
40742
40743 2000-01-28  Jim Meyering  <meyering@lucent.com>
40744
40745         * m4/perl.m4: Change format of warning message to look more like that
40746         from the missing script.  Suggestion from François Pinard.
40747
40748 2000-01-25  Jim Meyering  <meyering@lucent.com>
40749
40750         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
40751         well as time.h in the compile check.
40752         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
40753         Fix typo in cross-compiling case: s/yes/no/.
40754
40755 2000-01-23  Jim Meyering  <meyering@lucent.com>
40756
40757         * m4/jm-macros.m4: Move df-related tests here from
40758         fileutils/configure.in
40759
40760         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
40761         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
40762
40763         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
40764         s/space/ac_fsusage_space/.
40765         (jm_FILE_SYSTEM_USAGE): Take two parameters.
40766
40767         * m4/ftruncate.m4: New file (derived from part of
40768         fileutils/configure.in).
40769         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
40770         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
40771
40772         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
40773         AC_SUBST these here, rather than just in sh-util/configure.in, so
40774         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
40775         all the same.
40776         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
40777         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
40778         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
40779         (AC_SUBST(POW_LIBM)): Likewise.
40780         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
40781
40782 2000-01-23  Jim Meyering  <meyering@lucent.com>
40783
40784         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
40785         obstack.c.
40786
40787 2000-01-22  Jim Meyering  <meyering@lucent.com>
40788
40789         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
40790
40791         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
40792
40793         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
40794         configure.in
40795         (AC_CHECK_HEADERS): Likewise for sh-utils.
40796         (AC_CHECK_HEADERS): Likewise for textutils.
40797         Merge the three lists of headers.
40798
40799         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
40800         from fileutils' configure.in.
40801
40802         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
40803         code. Moved tests into their own function (_jm_DECL_HEADERS) in
40804         check-decl.m4.
40805
40806         * m4/check-decl.m4: Use #if rather than #ifdef.
40807         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
40808         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
40809         (_jm_DECL_HEADERS): Define new function.
40810         (jm_CHECK_DECLARATIONS): Require it.
40811
40812 2000-01-22  Jim Meyering  <meyering@lucent.com>
40813
40814         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
40815         [! HAVE_DECL_STRTOULL]: Declare strtoull.
40816         Required for some AIX systems.  Reported by Christian Krackowizer.
40817         [TESTING] (main): New function.
40818
40819         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
40820         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
40821         letters.
40822
40823         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
40824         iswprint.
40825
40826         * lib/strverscmp.c (ISDIGIT): Define.
40827         (strverscmp): Use ISDIGIT, not isdigit.
40828
40829 2000-01-19  Jim Meyering  <meyering@lucent.com>
40830
40831         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
40832         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
40833         defines `struct timespec' in <sys/time.h>
40834
40835         * m4/c-bs-a.m4: Remove uses of changequote altogether.
40836         Thanks to Akim for explaining.
40837
40838 2000-01-17  Paul Eggert  <eggert@twinsun.com>
40839
40840         * lib/nanosleep.c (nanosleep):
40841         Don't use SA_INTERRUPT to decide whether to call sigaction, as
40842         POSIX.1 doesn't require SA_INTERRUPT and some systems
40843         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
40844         it's been part of POSIX.1 since day 1 (in 1988).
40845
40846 2000-01-17  Jim Meyering  <meyering@lucent.com>
40847
40848         * lib/interlock: Remove unused file.  Reported by François Pinard.
40849
40850 2000-01-16  Paul Eggert  <eggert@twinsun.com>
40851
40852         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
40853         alert, backslash, formfeed, and vertical tab unnecessarily in
40854         shell quoting style.
40855
40856 2000-01-16  Jim Meyering  <meyering@lucent.com>
40857
40858         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
40859         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
40860         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
40861         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
40862
40863 2000-01-16  Jim Meyering  <meyering@lucent.com>
40864
40865         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
40866         because the latter didn't work.
40867
40868 2000-01-15  Jim Meyering  <meyering@lucent.com>
40869
40870         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
40871         (AC_REPLACE_FUNCS): Add memcpy and memset.
40872         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
40873         Add strpbrk.
40874         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
40875
40876 2000-01-12  Jim Meyering  <meyering@lucent.com>
40877
40878         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
40879         (jm_PREREQ): Use it.
40880         (jm_PREREQ_READUTMP): New macro.
40881         (jm_PREREQ): Use it.
40882
40883 2000-01-11  Paul Eggert  <eggert@twinsun.com>
40884
40885         Quote multibyte characters correctly.
40886         * m4/c-bs-a.m4: New file.
40887         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
40888         (jm_PREREQ): Use it.
40889
40890 2000-01-11  Paul Eggert  <eggert@twinsun.com>
40891
40892         * m4/uintmax_t.m4: Port to autoconf 2.13.
40893
40894 2000-01-08  Jim Meyering  <meyering@ascend.com>
40895
40896         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
40897         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
40898
40899 2000-01-04  Jim Meyering  <meyering@ascend.com>
40900
40901         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
40902         jm_STRUCT_DIRENT_D_TYPE.
40903         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
40904         jm_STRUCT_DIRENT_D_INO.
40905         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
40906         jm_STRUCT_UTIMBUF.
40907         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
40908         renamings.
40909         * m4/utime.m4: Likewise.
40910
40911         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
40912         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
40913
40914 2000-01-03  Paul Eggert  <eggert@twinsun.com>
40915
40916         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
40917         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
40918
40919 2000-01-02  Jim Meyering  <meyering@ascend.com>
40920
40921         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
40922         remember if this is necessary.
40923
40924 1999-12-26  Jim Meyering  <meyering@ascend.com>
40925
40926         * m4/jm-macros.m4: Use it here.
40927         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
40928
40929 1999-12-23  Jim Meyering  <meyering@ascend.com>
40930
40931         * m4/jm-macros.m4: Check for clock_gettime (moved from
40932         fileutils/configure.in)
40933         Check for gettimeofday.
40934
40935 1999-12-20  Jim Meyering  <meyering@ascend.com>
40936
40937         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
40938         autoconf-2.14a-1999-12-20.
40939
40940 1999-12-19  Jim Meyering  <meyering@ascend.com>
40941
40942         * m4/lstat-slash.m4: New file.
40943         * m4/jm-macros.m4: Use the new macro:
40944         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
40945
40946 1999-12-07  Jim Meyering  <meyering@ascend.com>
40947
40948         * m4/perl.m4: Require that File::Compare be available, too.
40949         Too many systems seem to lack it.
40950
40951         * m4/strftime.m4: Add checks for most of the cpp macros tested in
40952         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
40953
40954 1999-11-18  Paul Eggert  <eggert@twinsun.com>
40955
40956         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
40957         problem with the QNX 4.25 shell, which doesn't propagate exit
40958         status of failed commands inside shell assignments.
40959
40960 1999-11-17  Jim Meyering  <meyering@ascend.com>
40961
40962         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
40963
40964 1999-11-07  Jim Meyering  <meyering@ascend.com>
40965
40966         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
40967
40968 1999-11-06  Jim Meyering  <meyering@ascend.com>
40969
40970         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
40971         * m4/jm-macros.m4 (jm_MACROS): Use it here.
40972
40973 1999-11-05  Jim Meyering  <meyering@ascend.com>
40974
40975         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
40976         configure.in of textutils, fileutils, and sh-utils into this one
40977         (shared between those packages) file.
40978         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
40979         AC_STRUCT_ST_BLKSIZE.
40980
40981 1999-11-03  Jim Meyering  <meyering@ascend.com>
40982
40983         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
40984         of AC_CHECK_TYPE checks includes unistd.h.
40985         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
40986         Suggestion from Akim Demaille.
40987
40988 1999-10-30  Jim Meyering  <meyering@ascend.com>
40989
40990         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
40991         m4-quoted string.
40992         * m4/ls-mntd-fs.m4: Likewise.
40993         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
40994         * m4/jm-winsz1.m4: Likewise.
40995
40996         * m4/const.m4: Remove file, since the fix made it into the experimental
40997         version of autoconf.
40998         * m4/mktime.m4: Likewise.
40999
41000         * m4/check-type.m4: Remove file, now that the latest version of
41001         AC_CHECK_TYPE takes a third arg to specify additional #includes.
41002
41003         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
41004         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
41005         AC_CHECK_TYPE.
41006
41007 1999-10-04  Jim Meyering  <meyering@ascend.com>
41008
41009         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
41010
41011 1999-09-22  Paul Eggert  <eggert@twinsun.com>
41012
41013         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
41014         2.95.1 bug with HP-UX 10.20.
41015
41016 1999-09-17  Jim Meyering  <meyering@ascend.com>
41017
41018         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
41019         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
41020         due to missing strdup (against sh-utils-2.0).
41021
41022 1999-08-29  Jim Meyering  <meyering@ascend.com>
41023
41024         * m4/jm-macros.m4: Require jm_BISON.
41025         * m4/bison.m4: New file.
41026
41027 1999-08-17  Paul Eggert  <eggert@twinsun.com>
41028
41029         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
41030         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
41031
41032 1999-08-05  Jim Meyering  <meyering@ascend.com>
41033
41034         * m4/getline.m4: Rename test file from conftestdata to conftest.data
41035         to avoid conflicts with `conftest' on 8+3 filesystems.
41036         Suggestion from Eli Zaretskii.
41037
41038 1999-08-04  Jim Meyering  <meyering@ascend.com>
41039
41040         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
41041         fileutils and sh-utils (textutils's getline test was inadequate).
41042         (AM_FUNC_GETLINE): Run this test.
41043         (AC_CHECK_FUNCS): Check for getdelim.
41044         Reported by Bob Proulx.
41045
41046 1999-08-02  Jim Meyering  <meyering@ascend.com>
41047
41048         * m4/jm-macros.m4: Add a comment.
41049
41050 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41051
41052         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
41053         <inttypes.h> defines strtoumax as a macro (and not as a
41054         function).
41055
41056 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41057
41058         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
41059         that we can shift, multiply and divide unsigned long long
41060         values; Ultrix cc can't do it.
41061
41062 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41063
41064         * m4/mktime.m4: New file, which is a preview of what should appear
41065         in the next public autoconf release.
41066
41067 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41068
41069         * m4/lfs.m4: Remove this file.
41070         * m4/largefile.m4: New file.  It contains the old contents of
41071         lfs.m4, except that all names with prefix AC_LFS have been
41072         changed to use the prefix AC_SYS_LARGEFILE instead, to be
41073         compatible with future autoconf versions.  Also, some minor m4
41074         quoting problems have been fixed.
41075
41076 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41077
41078         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
41079         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
41080         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
41081         and simplify the shell code.
41082
41083 1999-08-01  Jim Meyering  <meyering@ascend.com>
41084
41085         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
41086         m4.
41087
41088 1999-07-20  Jim Meyering  <meyering@ascend.com>
41089
41090         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
41091
41092 1999-07-15  Jim Meyering  <meyering@ascend.com>
41093
41094         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
41095
41096 1999-05-22  Jim Meyering  <meyering@ascend.com>
41097
41098         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
41099
41100 1999-05-20  Jim Meyering  <meyering@ascend.com>
41101
41102         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
41103         Add a colon after each `then' in case $4 is empty.
41104
41105 1999-05-16  Jim Meyering  <meyering@ascend.com>
41106
41107         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
41108
41109 1999-05-10  Jim Meyering  <meyering@ascend.com>
41110
41111         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
41112
41113         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
41114         AC_FUNC_MKTIME.
41115
41116 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
41117
41118         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
41119
41120 1999-05-04  Paul Eggert  <eggert@twinsun.com>
41121
41122         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
41123         not CPPFLAGS, so that linking works correctly in IRIX.
41124
41125 1999-04-30  Paul Eggert  <eggert@twinsun.com>
41126
41127         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
41128
41129 1999-04-20  Paul Eggert  <eggert@twinsun.com>
41130
41131         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
41132         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
41133         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
41134         jm_AC_TYPE_UNSIGNED_LONG_LONG.
41135         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
41136
41137         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
41138
41139 1999-04-20  Jim Meyering  <meyering@ascend.com>
41140
41141         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
41142         AC_REPLACE xstroull if necessary.  From Paul Eggert.
41143         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
41144
41145 1999-04-18  Jim Meyering  <meyering@ascend.com>
41146
41147         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
41148         * m4/jm-macros.m4: Use it.
41149
41150 1999-04-06  Jim Meyering  <meyering@ascend.com>
41151
41152         * m4/strftime.m4: Remove test for %f.
41153
41154 1999-03-29  Jim Meyering  <meyering@ascend.com>
41155
41156         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
41157         superset of the AC_TYPE_* checks in the textutils, fileutils,
41158         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
41159         AC_TYPE_PID_T.
41160
41161 1999-03-28  Jim Meyering  <meyering@ascend.com>
41162
41163         * m4/jm-macros.m4: Define GNU_PACKAGE here.
41164         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
41165         replaced e.g., in the *.sh files of the sh-utils.
41166
41167 1999-03-20  Jim Meyering  <meyering@ascend.com>
41168
41169         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
41170         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
41171         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
41172
41173 1999-03-19  Jim Meyering  <meyering@ascend.com>
41174
41175         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
41176
41177 1999-03-12  Jim Meyering  <meyering@ascend.com>
41178
41179         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
41180
41181 1999-03-07  Jim Meyering  <meyering@ascend.com>
41182
41183         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
41184         declared.
41185
41186 1999-02-17  Jim Meyering  <meyering@ascend.com>
41187
41188         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
41189         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
41190
41191 1999-02-07  Jim Meyering  <meyering@ascend.com>
41192
41193         * m4/group-member.m4: New file -- extracted from sh-utils'
41194         configure.in.
41195
41196         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
41197         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
41198
41199 1999-02-06  Jim Meyering  <meyering@ascend.com>
41200
41201         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
41202         * m4/fnmatch.m4: Likewise.
41203         * m4/getgroups.m4: Likewise.
41204         * m4/lstat.m4: Likewise.
41205         * m4/malloc.m4: Likewise.
41206         * m4/putenv.m4: Likewise.
41207         * m4/realloc.m4: Likewise.
41208         * m4/regex.m4: Likewise.
41209         * m4/stat.m4: Likewise.
41210         * m4/strftime.m4: Likewise.
41211         Suggestion from Alain Magloire.
41212
41213         * m4/chown.m4: Use `.$ac_objext', not `.o'.
41214         * m4/fnmatch.m4: Likewise.
41215         * m4/getgroups.m4: Likewise.
41216         * m4/getline.m4: Likewise.
41217         * m4/lstat.m4: Likewise.
41218         * m4/malloc.m4: Likewise.
41219         * m4/memcmp.m4: Likewise.
41220         * m4/putenv.m4: Likewise.
41221         * m4/realloc.m4: Likewise.
41222         * m4/regex.m4: Likewise.
41223         * m4/stat.m4: Likewise.
41224         * m4/strftime.m4: Likewise.
41225         Suggestion from Alain Magloire.
41226
41227         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
41228         an argument.
41229
41230         * m4/regex.m4: Add a run-time Test for proper operation of
41231         re_compile_pattern.
41232
41233 1999-01-31  Jim Meyering  <meyering@ascend.com>
41234
41235         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
41236
41237 1999-01-30  Jim Meyering  <meyering@ascend.com>
41238
41239         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
41240
41241         * m4/jm-mktime.m4: Make this a wrapper around the official
41242         AM_FUNC_MKTIME rather than my private copy, now that the official one
41243         is up to date.
41244         * m4/mktime.m4: Remove file.
41245
41246         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
41247         * m4/uptime.m4: Likewise.
41248         * m4/uintmax_t.m4: Likewise.
41249
41250 1999-01-28  Jim Meyering  <meyering@ascend.com>
41251
41252         * m4/jm-macros.m4: Use jm_AFS.
41253         * m4/afs.m4: New file (from fileutils' configure.in).
41254
41255         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
41256         * m4/chown.m4: Likewise.
41257         * m4/d-ino.m4: Likewise.
41258         * m4/d-type.m4: Likewise.
41259         * m4/fnmatch.m4: Likewise.
41260         * m4/getgroups.m4: Likewise.
41261         * m4/gettext.m4: Likewise.
41262         * m4/jm-mktime.m4: Likewise.
41263         * m4/jm-winsz2.m4: Likewise.
41264         * m4/lcmessage.m4: Likewise.
41265         * m4/ls-mntd-fs.m4: Likewise.
41266         * m4/malloc.m4: Likewise.
41267         * m4/memcmp.m4: Likewise.
41268         * m4/putenv.m4: Likewise.
41269         * m4/realloc.m4: Likewise.
41270         * m4/st_mtim.m4: Likewise.
41271         * m4/strftime.m4: Likewise.
41272
41273 1999-01-16  Jim Meyering  <meyering@ascend.com>
41274
41275         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
41276         (ARGMATCH_DIE_DECL): Define.
41277
41278 1999-01-12  Jim Meyering  <meyering@ascend.com>
41279
41280         * m4/Makefile.am.in: Rewrite to avoid using fmt.
41281         Reported by Lars Hecking.
41282
41283 1999-01-10  Jim Meyering  <meyering@ascend.com>
41284
41285         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
41286         gross kludge.
41287         * m4/inttypes_h.m4: Likewise.
41288         * m4/lstat.m4: Likewise.
41289         * m4/malloc.m4: Likewise.
41290         * m4/readdir.m4: Likewise.
41291         * m4/realloc.m4: Likewise.
41292         * m4/st_dm_mode.m4: Likewise.
41293         * m4/stat.m4: Likewise.
41294         * m4/utimbuf.m4: Likewise.
41295         * m4/utimes.m4: Likewise.
41296
41297         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
41298         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
41299         comments in config.h.in are meaningful.
41300
41301         * m4/jm-macros.m4: Require autoconf-2.13 here.
41302
41303         * m4/regex.m4: By default, don't use the included regex.c on systems
41304         with glibc 2.  Suggestion from Uli Drepper.
41305
41306 1999-01-02  Jim Meyering  <meyering@ascend.com>
41307
41308         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
41309
41310 1998-12-18  Jim Meyering  <meyering@ascend.com>
41311
41312         * m4/Makefile.am.in (Makefile.am): Simplify rule.
41313         Based on a suggestion from Lars Hecking.
41314
41315 1998-11-16  Paul Eggert  <eggert@twinsun.com>
41316
41317         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
41318
41319 1998-11-16  Jim Meyering  <meyering@ascend.com>
41320
41321         * m4/lfs.m4: Double-quote the `uname...` expression.
41322
41323 1998-11-14  Jim Meyering  <meyering@ascend.com>
41324
41325         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
41326         * m4/stat.m4: Likewise.
41327
41328 1998-11-03  Jim Meyering  <meyering@ascend.com>
41329
41330         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
41331         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
41332
41333 1998-10-18  Jim Meyering  <meyering@ascend.com>
41334
41335         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
41336
41337 1998-10-17  Jim Meyering  <meyering@ascend.com>
41338
41339         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
41340         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
41341         calls for those previously hard-coded headers.  Instead, take a new
41342         parameter.
41343         (jm_CHECK_DECLARATIONS): Reflect interface change.
41344         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
41345         (jm_CHECK_DECL_LOCALTIME_R): New macro.
41346
41347         * m4/mktime.m4: Test for spring-forward gap before long-running test.
41348
41349 1998-10-14  Jim Meyering  <meyering@ascend.com>
41350
41351         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
41352         instead of "TZ=America/Vancouver".  From Paul Eggert.
41353
41354 1998-10-11  Jim Meyering  <meyering@ascend.com>
41355
41356         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
41357         This adds a test for a recently added compatibility fix for mktime.c.
41358         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
41359
41360 1998-09-27  Jim Meyering  <meyering@ascend.com>
41361
41362         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
41363
41364         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
41365         ../configure.in, including a change from Gordon Matzigkeit to allow
41366         cross-compiling for the Hurd.
41367
41368         * m4/glibc.m4: New file/macro to test for the GNU C Library
41369         versions 1 and 2.  From Gordon Matzigkeit.
41370         Indent.
41371
41372 1998-09-21  Jim Meyering  <meyering@ascend.com>
41373
41374         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
41375
41376 1998-08-18  Paul Eggert  <eggert@twinsun.com>
41377
41378         Port nanosecond-resolution times to UnixWare 2.1.2 and
41379         pedantic Solaris 2.6.
41380
41381         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
41382         AC_STRUCT_ST_MTIM.
41383         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
41384         Generate name of ns member, instead of just 1 or undef.
41385         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
41386
41387 1998-08-15  Jim Meyering  <meyering@ascend.com>
41388
41389         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
41390         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
41391         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
41392         instead of jm_TYPE_SSIZE_T.
41393
41394 1998-08-12  Jim Meyering  <meyering@ascend.com>
41395
41396         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
41397
41398 1998-08-02  Jim Meyering  <meyering@ascend.com>
41399
41400         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
41401         in acconfig.h manually.
41402
41403 1998-07-31  Paul Eggert  <eggert@twinsun.com>
41404
41405         * m4/st_mtim.m4: New file.
41406
41407 1998-07-28  Jim Meyering  <meyering@ascend.com>
41408
41409         * m4/utimes.m4: Undef stat.
41410
41411 1998-07-25  Jim Meyering  <meyering@ascend.com>
41412
41413         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
41414         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
41415
41416 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
41417
41418         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
41419         uid and gid actually remain unchanged.
41420
41421 1998-07-07  Jim Meyering  <meyering@ascend.com>
41422
41423         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
41424
41425 1998-07-04  Jim Meyering  <meyering@ascend.com>
41426
41427         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
41428         to prove that this macro can be used in packages without regex.c.
41429
41430 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
41431
41432         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
41433         is to be used.
41434
41435 1998-07-03  Jim Meyering  <meyering@ascend.com>
41436
41437         * m4/gettext.m4: Add -lintl if it's found to be necessary.
41438
41439         * m4/gettext.m4: New file -- from gettext-0.10.35.
41440         * m4/lcmessage.m4: Likewise.
41441         * m4/progtest.m4: Likewise.
41442
41443         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
41444         * m4/jm-macros.m4: Require the new macro.
41445
41446 1998-06-29  Jim Meyering  <meyering@ascend.com>
41447
41448         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
41449         for the definition of NGROUPS (used in a system header included
41450         by sys/mount.h).
41451
41452 1998-06-28  Jim Meyering  <meyering@ascend.com>
41453
41454         * m4/ls-mntd-fs.m4: New file.
41455         * m4/fstypename.m4: New file.
41456
41457         * m4/jm-macros.m4: Require the new macro.
41458         * m4/jm-glibc-io.m4: New file.
41459
41460 1998-05-19  Jim Meyering  <meyering@ascend.com>
41461
41462         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
41463         * m4/lchown.m4: New file.
41464
41465         * m4/Makefile.am.in: New file.
41466         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
41467
41468 1998-05-14  Jim Meyering  <meyering@ascend.com>
41469
41470         * m4/Makefile.am (EXTRA_DIST): Add them.
41471         * m4/jm-macros.m4: New file.
41472         * m4/utimbuf.m4: New file.
41473
41474 1998-05-12  Jim Meyering  <meyering@ascend.com>
41475
41476         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
41477
41478 1998-05-11  Jim Meyering  <meyering@ascend.com>
41479
41480         * m4/isc-posix.m4: New file.
41481
41482 1998-05-10  Jim Meyering  <meyering@ascend.com>
41483
41484         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
41485
41486 1998-05-09  Jim Meyering  <meyering@ascend.com>
41487
41488         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
41489         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
41490         with automake.
41491
41492         * m4/ssize_t.m4: New file.
41493         * m4/mktime.m4: Remove file -- the new automake has this now.
41494
41495 1998-04-26  Jim Meyering  <meyering@ascend.com>
41496
41497         * m4/assert.m4: New file.
41498         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
41499
41500 1998-04-05  Jim Meyering  <meyering@ascend.com>
41501
41502         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
41503         (jm_PREREQ): Use it here.
41504
41505 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
41506
41507         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
41508         in acconfig.h.
41509
41510 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
41511
41512         * m4/prereq.m4: New file.
41513         * m4/error.m4: New file.
41514         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
41515
41516 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
41517
41518         * m4/getline.m4: Don't set am_cv_func_working_getline before the
41519         cache-check for the same variable -- that defeated the purpose of
41520         the test; the test program was never run.  This was a problem only
41521         on systems with losing getline functions -- HP-UX 10.20 is one.
41522         Reported by Bjorn Helgaas.
41523
41524 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
41525
41526         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
41527
41528 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
41529
41530         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
41531
41532         * m4/const.m4: New file.  Use an initializer in this declaration
41533         typedef int charset[2]; const charset x;
41534         Reported by Bob Glickstein.
41535
41536 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
41537
41538         * m4/chown.m4: Fix reversed types on -1 args to chown.
41539         From Kaveh Ghazi.
41540
41541 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
41542
41543         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
41544         Add lseek and memchr.
41545
41546         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
41547         T.E.Dickey <dickey@clark.net> said that some older preprocessors
41548         have a 20-character limit on names.
41549
41550 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
41551
41552         * m4/inttypes_h.m4: New file.
41553         * m4/uintmax_t.m4: New file.
41554         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
41555
41556
41557         -----
41558
41559         Local Variables:
41560         coding: utf-8
41561         End:
41562
41563         Copyright (C) 1997-2008 Free Software Foundation, Inc.
41564
41565         Copying and distribution of this file, with or without
41566         modification, are permitted provided the copyright notice
41567         and this notice are preserved.