Work around bug with trailing slash on Solaris 9 and HP-UX 11.00.
[gnulib.git] / ChangeLog
1 2008-08-30  Bruno Haible  <bruno@clisp.org>
2
3         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
4         Code copied from m4/open.m4.
5         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
6         access and the filename ends in a slash. Code copied from lib/open.c.
7         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
8         * tests/test-fopen.c (main): Check against bug with trailing slash.
9
10 2008-08-29  Bruno Haible  <bruno@clisp.org>
11
12         Avoid some "gcc -pedantic" warnings.
13         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
14         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
15         * lib/dirent.in.h: Likewise.
16         * lib/fcntl.in.h: Likewise.
17         * lib/float.in.h: Likewise.
18         * lib/iconv.in.h: Likewise.
19         * lib/inttypes.in.h: Likewise.
20         * lib/locale.in.h: Likewise.
21         * lib/math.in.h: Likewise.
22         * lib/netinet_in.in.h: Likewise.
23         * lib/search.in.h: Likewise.
24         * lib/signal.in.h: Likewise.
25         * lib/stdarg.in.h: Likewise.
26         * lib/stdint.in.h: Likewise.
27         * lib/stdio.in.h: Likewise.
28         * lib/stdlib.in.h: Likewise.
29         * lib/string.in.h: Likewise.
30         * lib/strings.in.h: Likewise.
31         * lib/sys_select.in.h: Likewise.
32         * lib/sys_socket.in.h: Likewise.
33         * lib/sys_stat.in.h: Likewise.
34         * lib/sys_time.in.h: Likewise.
35         * lib/sysexits.in.h: Likewise.
36         * lib/time.in.h: Likewise.
37         * lib/unistd.in.h: Likewise.
38         * lib/wchar.in.h: Likewise.
39         * lib/wctype.in.h: Likewise.
40         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
41         * modules/fchdir (Makefile.am): Likewise.
42         * modules/fcntl (Makefile.am): Likewise.
43         * modules/float (Makefile.am): Likewise.
44         * modules/iconv_open (Makefile.am): Likewise.
45         * modules/inttypes (Makefile.am): Likewise.
46         * modules/locale (Makefile.am): Likewise.
47         * modules/math (Makefile.am): Likewise.
48         * modules/netinet_in (Makefile.am): Likewise.
49         * modules/search (Makefile.am): Likewise.
50         * modules/signal (Makefile.am): Likewise.
51         * modules/stdarg (Makefile.am): Likewise.
52         * modules/stdint (Makefile.am): Likewise.
53         * modules/stdio (Makefile.am): Likewise.
54         * modules/stdlib (Makefile.am): Likewise.
55         * modules/string (Makefile.am): Likewise.
56         * modules/strings (Makefile.am): Likewise.
57         * modules/sys_select (Makefile.am): Likewise.
58         * modules/sys_socket (Makefile.am): Likewise.
59         * modules/sys_stat (Makefile.am): Likewise.
60         * modules/sys_time (Makefile.am): Likewise.
61         * modules/sysexits (Makefile.am): Likewise.
62         * modules/time (Makefile.am): Likewise.
63         * modules/unistd (Makefile.am): Likewise.
64         * modules/wchar (Makefile.am): Likewise.
65         * modules/wctype (Makefile.am): Likewise.
66         Reported by Reuben Thomas <rrt@sc3d.org>.
67
68 2008-08-29  Bruno Haible  <bruno@clisp.org>
69
70         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
71         any more.
72
73 2008-08-29  Simon Josefsson  <simon@josefsson.org>
74
75         * MODULES.html.sh (Misc): Add bitrotate.
76
77         * modules/bitrotate: New file.
78
79         * lib/bitrotate.h: New file.
80
81         * modules/bitrotate-tests: New file.
82
83         * tests/test-bitrotate.c: New file.
84
85         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
86         on the bitrotate module.
87
88         * lib/arctwo.c: Use new bitrotate module.
89
90 2008-08-29  Jim Meyering  <meyering@redhat.com>
91
92         bootstrap: merge changes from coreutils
93         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
94         of copied files.  Remove a kludge, now that this is fixed.
95         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
96         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
97         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
98
99 2008-08-29  Bruno Haible  <bruno@clisp.org>
100
101         * MODULES.html.sh: Remove --cvs-urls option.
102
103 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
104
105         maint.mk: adjust to file name change
106         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
107
108 2008-08-28  Jim Meyering  <meyering@redhat.com>
109
110         * modules/getndelim2 (License): Relicense to LGPLv2+.
111
112 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
113
114         * lib/getdelim.c (flockfile, funlockfile): Make all of them
115         dummy if one is not available.  Do not touch them if
116         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
117         (getc_maybe_unlocked): New.
118         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
119
120 2008-08-26  Eric Blake  <ebb9@byu.net>
121
122         doc/INSTALL: resync from autoconf
123         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
124         (INSTALL_PRELUDE): Delete; this is done more efficiently by
125         moving...
126         * install.texi [!autoconf]: ...here.  Resync from autoconf.
127         * INSTALL: Regenerate.
128         * INSTALL.ISO: New file.
129         * INSTALL.UTF-8: Likewise.
130
131 2008-08-26  Jim Meyering  <meyering@redhat.com>
132
133         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
134         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
135         these definitions conditional, so that they may be overridden, too.
136
137 2008-08-26  Bruno Haible  <bruno@clisp.org>
138
139         Generate INSTALL file variants with prettier quotes.
140         * doc/Makefile (INSTALL_PRELUDE): New macro.
141         (INSTALL): Use it.
142         (INSTALL.ISO, INSTALL.UTF-8): New rules.
143
144 2008-08-26  Bruno Haible  <bruno@clisp.org>
145
146         Run makeinfo in an English locale.
147         * doc/Makefile (MAKEINFO): New variable.
148
149 2008-08-26  Bruno Haible  <bruno@clisp.org>
150
151         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
152         Suggested by Eric Blake.
153
154 2008-08-25  Bruno Haible  <bruno@clisp.org>
155
156         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
157
158 2008-08-25  Eric Blake  <ebb9@byu.net>
159
160         c-stack: test that stack overflow can be caught
161         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
162         that platform allows handling stack overflow; at least OS/2 EMX
163         has sigaltstack, but crashes before transferring control to
164         handler on stack overflow.
165         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
166         check for HAVE_STACK_OVERFLOW_HANDLING.
167         Reported by Elbert Pol.
168
169 2008-08-25  Bruno Haible  <bruno@clisp.org>
170
171         * doc/posix-functions/strftime.texi: Fix description of strftime
172         module.
173
174 2008-08-24  Bruno Haible  <bruno@clisp.org>
175
176         * tests/uniwidth/test-uc_width2.c: New file.
177         * tests/uniwidth/test-uc_width2.sh: New file.
178         * modules/uniwidth/width-tests (Files): Add the new files.
179         (TESTS): Add uniwidth/test-uc_width2.sh.
180         (TESTS_ENVIRONMENT): New variable.
181         (check_PROGRAMS): Add test-uc_width2.
182         (test_uc_width2_SOURCES): New variable.
183
184         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
185         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
186         not 0x00AB.
187         Reported by Alexander V. Lukyanov <lav@netis.ru>.
188
189 2008-08-22  Eric Blake  <ebb9@byu.net>
190
191         test-lock, test-tls: mention why a test is skipped
192         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
193         skipped.
194         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
195
196         count-one-bits: relax license
197         * modules/count-one-bits (License): Relicense to LGPLv2+.
198         Suggested by Ludovic Courtès, approved by Ben Pfaff.
199
200 2008-08-22  Andreas Schwab  <schwab@suse.de>
201
202         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
203         Remove spurious space in assignment.
204
205 2008-08-21  Simon Josefsson  <simon@josefsson.org>
206
207         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
208         Paul Eggert <eggert@CS.UCLA.EDU>.
209
210 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
211
212         * modules/gettext: Add m4/threadlib.m4.
213
214 2008-08-19  Eric Blake  <ebb9@byu.net>
215
216         test-c-stack: fix compilation failure on FreeBSD 5.0
217         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
218         headers before <sys/resource.h>.
219         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
220         the bug.
221         Reported by Nelson H. F. Beebe.
222
223         strverscmp: migrate from "strverscmp.h" to <string.h>
224         * modules/string (Makefile.am): Add new hooks.
225         * modules/strverscmp (Files): Remove strverscmp.h.
226         (Depends-on): Add string.
227         (configure.ac): Add indicator.
228         (Include): Mention new header.
229         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
230         defaults.
231         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
232         results.
233         * lib/strverscmp.h: Delete.
234         * lib/string.in.h (strverscmp): Provide declaration, when needed.
235         * tests/test-strverscmp.c (includes): Adjust client.
236         * lib/check-version.c (includes): Likewise.
237         * NEWS: Document the change.
238
239         strverscmp: add unit test
240         * modules/strverscmp-tests: New file.
241         * tests/test-strverscmp.c: Likewise.
242
243 2008-08-19  Simon Josefsson  <simon@josefsson.org>
244
245         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
246         regarding Windows crypto stuff, from Mono.
247
248 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
249
250         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
251         if present, for intel RND.  Return error on failures.
252
253 2008-08-18  Ben Pfaff  <blp@gnu.org>
254
255         gitlog-to-changelog: give better diagnostic for failed pipe-open
256         * build-aux/gitlog-to-changelog: Improve error message: suggest
257         that the version of Git may be too old.
258
259 2008-08-18  Simon Josefsson  <simon@josefsson.org>
260
261         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
262         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
263
264 2008-08-18  Bruno Haible  <bruno@clisp.org>
265
266         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
267         pthread_in_use().
268
269 2008-08-18  Bruno Haible  <bruno@clisp.org>
270
271         * lib/glthread/threadlib.c: Include <pthread.h>.
272
273 2008-08-18  Bruno Haible  <bruno@clisp.org>
274
275         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
276         glthread_recursive_lock_* macros.
277         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
278         Fix syntax error.
279
280 2008-08-18  Bruno Haible  <bruno@clisp.org>
281
282         * lib/glthread/thread.c: Avoid forcing a context switch right after
283         thread creation.
284
285 2008-08-17  Bruno Haible  <bruno@clisp.org>
286
287         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
288         * lib/glthread/thread.h: Provide Win32 specific implementation.
289         * modules/thread (Files): Add lib/glthread/thread.c.
290         (Depends-on): Add lock.
291         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
292
293 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
294
295         New module 'yield'.
296         * modules/yield: New file.
297         * lib/glthread/yield.h: New file.
298         * m4/yield.m4: New file.
299         * MODULES.html.sh (Multithreading): Add yield.
300
301 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
302
303         New module 'thread'.
304         * modules/thread: New file.
305         * lib/glthread/thread.h: New file.
306         * m4/thread.m4: New file.
307         * MODULES.html.sh (Multithreading): Add thread.
308
309 2008-08-17  Bruno Haible  <bruno@clisp.org>
310
311         * lib/glthread/lock.h: Include <stdlib.h> always.
312         * lib/glthread/tls.h: Likewise.
313         * lib/glthread/cond.h: Likewise.
314
315 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
316
317         New module 'cond'.
318         * modules/cond: New file.
319         * lib/glthread/cond.h: New file.
320         * lib/glthread/cond.c: New file.
321         * m4/cond.m4: New file.
322         * MODULES.html.sh (Multithreading): Add cond.
323
324 2008-08-16  Eric Blake  <ebb9@byu.net>
325
326         c-stack: fix regression on Irix 5.3 from 2008-06-21
327         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
328         sa_sigaction...
329         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
330         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
331         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
332         * modules/signal (Makefile.am): Use the value.
333         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
334         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
335         * doc/posix-headers/signal.texi (signal.h): Document this
336         portability issue.
337         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
338         Reported by Tom G. Christensen.
339
340 2008-08-17  Bruno Haible  <bruno@clisp.org>
341
342         New module 'threadlib'.
343         * modules/threadlib: New file.
344         * lib/glthread/threadlib.c: New file, extracted from
345         lib/glthread/lock.c.
346         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
347         functions.
348         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
349         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
350         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
351         macros.
352         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
353         (gl_DISABLE_THREADS): Remove macro.
354         * modules/lock (Files): Remove build-aux/config.rpath.
355         (Depends-on): Remove havelib. Add threadlib.
356         (configure.ac-early): Remove section.
357         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
358         * modules/tls (Depends-on): Remove lock. Add threadlib.
359         (Link): New section, copied from threadlib.
360         * MODULES.html.sh (Multithreading): Add threadlib.
361
362 2008-08-14  Bruno Haible  <bruno@clisp.org>
363
364         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
365         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
366         glthread_rwlock_unlock, glthread_rwlock_destroy,
367         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
368         glthread_recursive_lock_destroy): Define as macros always.
369         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
370         glthread_lock_lock.
371         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
372         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
373         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
374         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
375         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
376         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
377         (glthread_recursive_lock_lock_func): Renamed from
378         glthread_recursive_lock_lock.
379         (glthread_recursive_lock_unlock_func): Renamed from
380         glthread_recursive_lock_unlock.
381         (glthread_recursive_lock_destroy_func): Renamed from
382         glthread_recursive_lock_destroy.
383
384 2008-08-14  Bruno Haible  <bruno@clisp.org>
385
386         * lib/glthread/lock.h: Renamed from lib/lock.h.
387         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
388         * lib/glthread/tls.h: Renamed from lib/tls.h.
389         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
390         * lib/fstrcmp.c: Update includes.
391         * lib/strsignal.c: Update includes.
392         * modules/lock (Files, Makefile.am): Update.
393         (Include): Change to "glthread/lock.h".
394         * modules/tls (Files, Makefile.am): Update.
395         (Include): Change to "glthread/tls.h".
396         * tests/test-lock.c: Update includes.
397         * tests/test-tls.c: Update includes.
398         * NEWS: Mention the renamed header files.
399
400 2008-08-11  Jim Meyering  <meyering@redhat.com>
401
402         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
403
404 2008-08-11  Eric Blake  <ebb9@byu.net>
405
406         test-c-stack: avoid C99-ism
407         * tests/test-c-stack.c (main): Fix whitespace, move declaration
408         before statement.
409         Reported by Alain Guibert.
410
411 2008-08-10  Jim Meyering  <meyering@redhat.com>
412
413         ensure that return value of uinttostr et al are not ignored
414         * lib/inttostr.h (__GNUC_PREREQ): Define.
415         (__attribute_warn_unused_result__): Define.
416         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
417
418 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
419
420         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
421         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
422
423 2008-08-07  Jim Meyering  <meyering@redhat.com>
424
425         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
426
427         * modules/mkstemp (License): Relicense under LGPLv2+.
428         * modules/tempname (License): Likewise.
429
430 2008-08-06  Bruno Haible  <bruno@clisp.org>
431
432         * lib/poll.c (poll): Further micro-optimization.
433
434 2008-08-06  Jim Meyering  <meyering@redhat.com>
435
436         inet_pton.c: use locale-independent tolower
437         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
438         (inet_pton6): Use c_tolower rather than tolower.
439         * modules/inet_pton (Depends-on): Add c-ctype.
440
441 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
442
443         * lib/poll.c (poll): Avoid division when timeout is 0, cache
444         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
445
446 2008-08-06  Jim Meyering  <meyering@redhat.com>
447
448         * modules/inet_pton (License): Relicense under LGPLv2+.
449
450 2008-08-03  Bruno Haible  <bruno@clisp.org>
451
452         Additional non-aborting API for lock and tls.
453         * lib/lock.h: Include <errno.h>.
454         (glthread_lock_init): New macro/function.
455         (gl_lock_init): Define as wrapper around glthread_lock_init.
456         (glthread_lock_lock): New macro/function.
457         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
458         (glthread_lock_unlock): New macro/function.
459         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
460         (glthread_lock_destroy): New macro/function.
461         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
462         (glthread_rwlock_init): New macro/function.
463         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
464         (glthread_rwlock_rdlock): New macro/function.
465         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
466         (glthread_rwlock_wrlock): New macro/function.
467         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
468         (glthread_rwlock_unlock): New macro/function.
469         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
470         (glthread_rwlock_destroy): New macro/function.
471         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
472         (glthread_recursive_lock_init): New macro/function.
473         (gl_recursive_lock_init): Define as wrapper around
474         glthread_recursive_lock_init.
475         (glthread_recursive_lock_lock): New macro/function.
476         (gl_recursive_lock_lock): Define as wrapper around
477         glthread_recursive_lock_lock.
478         (glthread_recursive_lock_unlock): New macro/function.
479         (gl_recursive_lock_unlock): Define as wrapper around
480         glthread_recursive_lock_unlock.
481         (glthread_recursive_lock_destroy): New macro/function.
482         (gl_recursive_lock_destroy): Define as wrapper around
483         glthread_recursive_lock_destroy.
484         (glthread_once): New macro/function.
485         (gl_once): Define as wrapper around glthread_once.
486         Update function declarations.
487         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
488         glthread_rwlock_init. Return error code.
489         (glthread_rwlock_rdlock_multithreaded): Renamed from
490         glthread_rwlock_rdlock. Return error code.
491         (glthread_rwlock_wrlock_multithreaded): Renamed from
492         glthread_rwlock_wrlock. Return error code.
493         (glthread_rwlock_unlock_multithreaded): Renamed from
494         glthread_rwlock_unlock. Return error code.
495         (glthread_rwlock_destroy_multithreaded): Renamed from
496         glthread_rwlock_destroy. Return error code.
497         (glthread_recursive_lock_init_multithreaded): Renamed from
498         glthread_recursive_lock_init. Return error code.
499         (glthread_recursive_lock_lock_multithreaded): Renamed from
500         glthread_recursive_lock_lock. Return error code.
501         (glthread_recursive_lock_unlock_multithreaded): Renamed from
502         glthread_recursive_lock_unlock. Return error code.
503         (glthread_recursive_lock_destroy_multithreaded): Renamed from
504         glthread_recursive_lock_destroy. Return error code.
505         (glthread_once_call): Make static.
506         (glthread_once_multithreaded): Renamed from glthread_once.
507         * lib/tls.h: Include <errno.h>.
508         (glthread_tls_key_init): New macro/function.
509         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
510         (glthread_tls_set): New macro/function.
511         (gl_tls_set): Define as wrapper around glthread_tls_set.
512         (glthread_tls_key_destroy): New macro/function.
513         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
514         Update function declarations.
515         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
516         glthread_tls_get.
517         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
518
519 2008-08-04  Eric Blake  <ebb9@byu.net>
520
521         gnumakefile: use space, not TAB, outside of targets
522         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
523
524 2008-08-02  Jim Meyering  <meyering@redhat.com>
525
526         getdate.y: avoid locale-dependent date parsing failure
527         In Turkish locales, getdate would fail to recognize keywords
528         containing a lowercase "i".  The solution is not to rely on
529         locale-sensitive case-conversion.
530         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
531         (lookup_word): Use c_toupper in place of toupper.
532         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
533         Reported by Vefa Bicakci <bicave@superonline.com> in
534         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
535         * modules/getdate (Depends-on): Add c-ctype.
536
537 2008-08-02  Bruno Haible  <bruno@clisp.org>
538
539         * gnulib-tool (func_import): When updating or creating a .gitignore
540         file, prepend each added line with a slash, and ignore leading slashes
541         from the existing lines.
542         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
543
544 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
545
546         Portability fix for GNU make 3.79.1.
547         * top/GNUmakefile: Avoid 'else COND', which older GNU make
548         versions do not understand.
549
550 2008-08-01  Bruno Haible  <bruno@clisp.org>
551
552         Work around bug of HP-UX 10.20 cc with -0.0 literal.
553         * tests/test-isnanf.h (zero): New variable.
554         (main): Avoid literal -0.0f.
555         * tests/test-isnand.h (zero): New variable.
556         (main): Avoid literal -0.0.
557         * tests/test-isnanl.h (zero): New variable.
558         (main): Avoid literal -0.0L.
559         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
560         (test_float, test_double, test_long_double): Avoid literals -0.0f,
561         -0.0, -0.0L.
562         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
563         (test_signbitd): Avoid literal -0.0.
564         (test_signbitl): Avoid literal -0.0L.
565         * tests/test-ceilf1.c (zero): New variable.
566         (main): Avoid literal -0.0f.
567         * tests/test-ceill.c (zero): New variable.
568         (main): Avoid literal -0.0L.
569         * tests/test-floorf1.c (zero): New variable.
570         (main): Avoid literal -0.0f.
571         * tests/test-floorl.c (zero): New variable.
572         (main): Avoid literal -0.0L.
573         * tests/test-roundf1.c (zero): New variable.
574         (main): Avoid literal -0.0f.
575         * tests/test-round1.c (zero): New variable.
576         (main): Avoid literal -0.0.
577         * tests/test-roundl.c (zero): New variable.
578         (main): Avoid literal -0.0L.
579         * tests/test-truncf1.c (zero): New variable.
580         (main): Avoid literal -0.0f.
581         * tests/test-trunc1.c (zero): New variable.
582         (main): Avoid literal -0.0.
583         * tests/test-truncl.c (zero): New variable.
584         (main): Avoid literal -0.0L.
585         * tests/test-frexp.c (zero): New variable.
586         (main): Avoid literal -0.0.
587         * tests/test-frexpl.c (zero): New variable.
588         (main): Avoid literal -0.0L.
589         * tests/test-ldexpl.c (zero): New variable.
590         (main): Avoid literal -0.0L.
591         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
592         (zerod, zerol): New variables.
593         (test_function): Avoid literals -0.0, -0.0L.
594         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
595         (zerod, zerol): New variables.
596         (test_function): Avoid literals -0.0, -0.0L.
597         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
598         (zerod, zerol): New variables.
599         (test_function): Avoid literals -0.0, -0.0L.
600         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
601         (zerod, zerol): New variables.
602         (test_function): Avoid literals -0.0, -0.0L.
603         * tests/test-strtod.c (zero): New variable.
604         (main): Avoid literal -0.0.
605         Reported by Jonathan C. Patschke <jp@centtech.com>.
606
607 2008-07-31  Jim Meyering  <meyering@redhat.com>
608
609         sha256.h: correct definition of SHA224_DIGEST_SIZE
610         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
611         Reported by Paulie Pena IV <paulie4@gmail.com>.
612         Define as 224 / 8, rather than as a literal.
613         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
614         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
615         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
616
617 2008-07-31  Bruno Haible  <bruno@clisp.org>
618
619         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
620         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
621         Reported by Jonathan Patschke <jp@centtech.com>.
622
623 2008-07-31  Bruno Haible  <bruno@clisp.org>
624
625         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
626         Reported by Paolo Bonzini <bonzini@gnu.org>.
627
628 2008-07-30  Eric Blake  <ebb9@byu.net>
629
630         test-strtod: allow compilation without -lm
631         * tests/test-strtod.c (main): Avoid link dependence on fabs.
632         Reported by Dennis Clarke <blastwave@gmail.com>.
633
634 2008-07-28  Jim Meyering  <meyering@redhat.com>
635
636         bootstrap: work also when there are no .po files in po/
637         * build-aux/bootstrap (update_po_files): Complete the change
638         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
639
640 2008-07-27  Jim Meyering  <meyering@redhat.com>
641
642         * users.txt: Add zile.
643
644 2008-07-26  Ben Pfaff  <blp@gnu.org>
645
646         Add missing dependencies on new m4/exponent[fdl].m4 files.
647         * modules/isnanf-nolibm: Add m4/exponentf.m4.
648         * modules/isnand-nolibm: Add m4/exponentd.m4.
649         * modules/isnanl-nolibm: Add m4/exponentl.m4.
650         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
651         m4/isnan[fdl].m4, because the macros actually used moved.
652         Reported by Jim Meyering.
653
654 2008-07-14  Ben Pfaff  <blp@gnu.org>
655
656         Add isinf module.
657         * lib/isinf.c: New file.
658         * lib/math.in.h: Define isinf macro if we have decided to replace
659         it.
660         * m4/isinf.m4: New file.
661         * m4/math_h.m4: Initialize and substitute variables for isinf
662         module.
663         * modules/isinf: New file.
664         * modules/isinf-tests: New file.
665         * modules/math: Add substitutions for new module.
666         * tests/test-isinf.c: New file.
667         * doc/posix-functions/isinf.texi: Mention new module.
668         * MODULES.html.sh: Mention new module.
669
670 2008-07-14  Ben Pfaff  <blp@gnu.org>
671
672         Factor out some macros for use by additional modules.
673         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
674         exponentf.m4.
675         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
676         exponentd.m4.
677         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
678         file exponentl.m4.
679         * m4/exponentf.m4: New file.
680         * m4/exponentd.m4: New file.
681         * m4/exponentl.m4: New file.
682         * modules/isnanf: Use new file m4/exponentf.m4.
683         * modules/isnand: Use new file m4/exponentd.m4.
684         * modules/isnanl: Use new file m4/exponentl.m4.
685
686 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
687
688         mktime.c: normalize tp->tm_isdst value to -1/0/1.
689         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
690         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
691         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
692
693         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
694         readlink on platforms without PATH_MAX.
695
696 2008-07-21  Eric Blake  <ebb9@byu.net>
697
698         Warn, not fail, on stale version.
699         * top/GNUmakefile (_curr-ver): Tone down previous patch.
700
701         Don't allow installation with stale devel version number.
702         * top/GNUmakefile (_is-install-target): New macro.
703         (_curr-ver): Forbid installation with stale version number.
704
705 2008-07-20  Bruno Haible  <bruno@clisp.org>
706
707         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
708         TESTS_ENVIRONMENT.
709         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
710
711 2008-07-20  Bruno Haible  <bruno@clisp.org>
712
713         * lib/c-stack.h (c_stack_action): Add documentation.
714         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
715
716 2008-07-20  Bruno Haible  <bruno@clisp.org>
717
718         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
719         * modules/readlink (License): Likewise.
720
721 2008-07-17  Eric Blake  <ebb9@byu.net>
722
723         * modules/c-stack (Link): Fix typo.
724
725         Make c-stack use libsigsegv, when available.
726         * modules/c-stack (Depends-on): Add libsigsegv.
727         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
728         needed.
729         * lib/c-stack.c (SIGSTKSZ): Define fallback.
730         (segv_handler, overflow_handler, c_stack_action)
731         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
732         implementation when libsigsegv is available, but only when using
733         the library is necessary.
734         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
735         comment, explaining why XSI check fails on Linux.
736         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
737         * tests/test-c-stack2.sh: Tweak skip message.
738         * NEWS: Document new link-time requirements.
739
740 2008-07-16  Eric Blake  <ebb9@byu.net>
741
742         c-stack: Expose false positives when not using libsigsegv.
743         * modules/c-stack-tests (Files): Expand test.
744         * tests/test-c-stack.c (main): Add means to conditionally trigger
745         non-overflow SIGSEGV.
746         * tests/test-c-stack2.sh: New file.
747
748 2008-07-14  Bruno Haible  <bruno@clisp.org>
749
750         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
751         Reported by Eric Blake.
752
753 2008-07-14  Sam Steingold  <sds@gnu.org>
754             Bruno Haible  <bruno@clisp.org>
755
756         New module libsigsegv.
757         * modules/libsigsegv: New file.
758         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
759         modifications.
760         * MODULES.html.sh (Signal handling): New section.
761
762 2008-07-14  Bruno Haible  <bruno@clisp.org>
763
764         * modules/unictype/ctype-* (Description): Add the word "function".
765         Improves the resulting doc in MODULES.html.
766
767 2008-07-12  Ben Pfaff  <blp@gnu.org>
768
769         Add longlong module.
770         * modules/longlong: New file.
771
772 2008-07-12  Bruno Haible  <bruno@clisp.org>
773
774         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
775         to empty.
776
777 2008-07-10  Ben Pfaff  <blp@gnu.org>
778
779         Add isnan module.
780         * doc/posix-functions/isnan.texi: Mention new module.
781         * lib/math.in.h: Define isnan macro if we have decided to replace
782         it.
783         * m4/isnan.m4: New file.
784         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
785         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
786         also.
787         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
788         redundancy.
789         * m4/math_h.m4: Initialize and substitute variables for isnan
790         module.
791         * modules/isnan: New file.
792         * modules/isnan-tests: New file.
793         * modules/math: Add substitutions for new module.
794         * tests/test-isnan.c: New file.
795         * MODULES.html.sh: Mention new module.
796
797 2008-07-10  Ben Pfaff  <blp@gnu.org>
798
799         Add isnanf module.
800         * lib/isnanf.m4: New file.
801         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
802         (gl_HAVE_ISNANF_IN_LIBM): New macro.
803         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
804         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
805         * modules/isnanf: New file.
806         * modules/isnanf-tests: New file.
807         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
808         files.
809         * tests/test-isnanf-nolibm.c: factored most of its contents into
810         new file tests/test-isnanf.h.
811         * tests/test-isnanf.h: New file.
812         * tests/test-isnanf.c: New file.
813         * MODULES.html.sh: Mention new module.
814         * doc/glibc-functions/isnanf.texi: Mention new module.
815
816 2008-07-10  Ben Pfaff  <blp@gnu.org>
817
818         Add isnand module.
819         * lib/isnand.h: New file.
820         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
821         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
822         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
823         functionality also.
824         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
825         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
826         (gl_HAVE_ISNAND_IN_LIBM): New macro.
827         * modules/isnand: New file.
828         * modules/isnand-tests: New file.
829         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
830         files.
831         * tests/test-isnand-nolibm.c: factored most of its contents into
832         new file tests/test-isnand.h.
833         * tests/test-isnand.h: New file.
834         * tests/test-isnand.c: New file.
835         * MODULES.html.sh: Mention new module.
836
837 2008-07-10  Ben Pfaff  <blp@gnu.org>
838
839         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
840         * lib/isnand.h: Rename lib/isnand-nolibm.h.
841         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
842         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
843         * modules/isnanf-nolibm: Update references to renamed files.
844         * modules/isnand-nolibm: Likewise.
845         * modules/isnanf-nolibm-tests: Likewise.
846         * modules/isnand-nolibm-tests: Likewise.
847         * lib/frexp.c: Likewise.
848         * lib/isfinite.c: Likewise.
849         * lib/signbitd.c: Likewise.
850         * lib/signbitf.c: Likewise.
851         * lib/vasnprintf.c: Likewise.
852         * tests/test-ceilf1.c: Likewise.
853         * tests/test-ceilf2.c: Likewise.
854         * tests/test-floorf1.c: Likewise.
855         * tests/test-floorf2.c: Likewise.
856         * tests/test-frexp.c: Likewise.
857         * tests/test-round1.c: Likewise.
858         * tests/test-round2.c: Likewise.
859         * tests/test-roundf1.c: Likewise.
860         * tests/test-strtod.c: Likewise.
861         * tests/test-trunc1.c: Likewise.
862         * tests/test-trunc2.c: Likewise.
863         * tests/test-truncf1.c: Likewise.
864         * tests/test-truncf2.c: Likewise.
865         * NEWS: Mention the renamed header files.
866
867 2008-07-11  Jim Meyering  <meyering@redhat.com>
868
869         vc-list-files: make the last-resort awk code more portable
870         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
871         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
872         does not support it.
873
874 2008-07-10  Eric Blake  <ebb9@byu.net>
875
876         Work with tar's bootstrap.
877         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
878         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
879         an m4 comment.
880
881 2008-07-09  Jim Meyering  <meyering@redhat.com>
882
883         posix-shell.m4: fix typo that made this test malfunction
884         * m4/posix-shell.m4: Remove capitalization in variable name.
885
886 2008-07-08  Bruno Haible  <bruno@clisp.org>
887
888         * m4/onceonly.m4: Update comments.
889         Reported by Ben Pfaff <blp@cs.stanford.edu>.
890
891 2008-07-04  Jim Meyering  <meyering@redhat.com>
892
893         * users.txt: Add vc-dwim.
894         (bison, coreutils): Use the gitweb URL.
895
896 2008-07-03  Jim Meyering  <meyering@redhat.com>
897
898         * users.txt: Add libffcall.  From Sam Steingold.
899
900 2008-07-03  Ondřej Vašík  <ovasik@redhat.com>
901
902         getdate.y: do not ignore TZ with relative day, month or year offset
903         * lib/getdate.y (get_date): Move the tz-handling block to follow the
904         relative-date-handling, since otherwise, the latter would clobber the
905         sole output (an updated Start value) of the tz-handling block.
906         * tests/test-getdate.c: Tests for the fix
907
908 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
909
910         Recognize 'foo_LIBRARIES += libgnu.a'.
911         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
912         makefile snippet has already specified an installation location,
913         also using '+='.
914
915 2008-07-02  Ondřej Vašík  <ovasik@redhat.com>
916
917         getdate.y: factor out common actions
918         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
919         Use them in place of open-coded actions.
920
921 2008-07-01  Simon Josefsson  <simon@josefsson.org>
922
923         Add self-test for getdate module.
924         * modules/getdate-tests: New file.
925         * tests/test-getdate.c: New file.
926
927 2008-06-29  Bruno Haible  <bruno@clisp.org>
928
929         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
930         .gitignore.
931         Reported by Sylvain Beucler <beuc@beuc.net>.
932
933 2008-06-29  Bruno Haible  <bruno@clisp.org>
934
935         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
936         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
937
938 2008-06-29  Bruno Haible  <bruno@clisp.org>
939
940         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
941         EXTRA_DIST.
942         Reported by Sylvain Beucler <beuc@beuc.net>.
943
944 2008-06-26  Jim Meyering  <meyering@redhat.com>
945
946         make several modules depend on the "open" module
947         This provides slightly increased consistency when opening-for-write
948         the name of a non-directory spelled with a trailing slash.
949         * modules/chdir-safer: Likewise.
950         * modules/chown: Likewise.
951         * modules/clean-temp: Likewise.
952         * modules/copy-file: Likewise.
953         * modules/fchdir: Likewise.
954         * modules/fcntl-safer: Likewise.
955         * modules/pipe: Likewise.
956         * modules/utime: Likewise.
957         Prompted by Eric Blake and Bruno Haible.
958
959 2008-06-24  Andreas Schwab  <schwab@suse.de>
960
961         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
962         literals can be used as initializers for global variables.
963
964 2008-06-23  Eric Blake  <ebb9@byu.net>
965
966         Make gnulib-cache.m4 easier to diff.
967         * gnulib-tool (func_import): Allow newlines when reading cached
968         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
969
970 2008-06-23  Bruno Haible  <bruno@clisp.org>
971
972         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
973         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
974         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
975         m4/signalblocking.m4.
976         (gl_PREREQ_SIGACTION): Don't invoke it.
977         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
978         gl_PREREQ_SIG_HANDLER_H.
979         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
980         Don't check for sigaction here.
981
982 2008-06-23  Bruno Haible  <bruno@clisp.org>
983
984         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
985         (install_handlers): Don't set the SA_RESETHAND flag.
986
987 2008-06-23  Bruno Haible  <bruno@clisp.org>
988
989         * m4/sigaction.m4: Comment fixes.
990         * lib/signal.in.h: Likewise.
991
992 2008-06-23  Eric Blake  <ebb9@byu.net>
993
994         Fix typo.
995         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
996
997         Avoid SA_ namespace.
998         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
999         Reported by Ralf Wildenhues.
1000
1001         Avoid test failure due to SA_RESTORER.
1002         * tests/test-sigaction.c (SA_MASK): New macro.
1003         (main): Avoid failing due to extension flags being set.
1004         Reported by Jim Meyering.
1005
1006         Revert use of sig-handler.h in sigprocmask.c.
1007         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
1008         it requires the existence of struct sigaction.
1009         * lib/sigprocmask.c (handler_t): Restore typedef.
1010         (rpl_signal, old_handlers): Use local type.
1011
1012 2008-06-22  Bruno Haible  <bruno@clisp.org>
1013
1014         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
1015         conditionally.
1016         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1017
1018 2008-06-22  Bruno Haible  <bruno@clisp.org>
1019
1020         * doc/posix-functions/siginterrupt.texi: Move note.
1021
1022         * lib/signal.in.h (SA_RESTART): New macro.
1023         * lib/sigaction.c: Update comment.
1024
1025         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
1026
1027         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
1028         (gl_PREREQ_SIGPROCMASK): Invoke it.
1029         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
1030
1031         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
1032
1033         * lib/sigprocmask.c: Update a comment.
1034
1035 2008-06-21  Eric Blake  <ebb9@byu.net>
1036
1037         Use sigaction module rather than signal().
1038         * modules/c-stack (Depends-on): Add sigaction.
1039         * modules/fatal-signal (Depends-on): Likewise.
1040         * modules/nanosleep (Depends-on): Likewise.
1041         * modules/sigprocmask (Files): Add sig-handler.h.
1042         * modules/sigaction (Files): Likewise.
1043         * lib/sig-handler.h (get_handler): New file, suggested by Paul
1044         Eggert.
1045         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
1046         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
1047         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
1048         (init_fatal_signals): Likewise.
1049         * lib/nanosleep.c (rpl_nanosleep): Likewise.
1050         (siginterrupt): Delete fallback.
1051         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
1052         instead.
1053         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
1054         siginterrupt.
1055
1056         New module sigaction, for mingw.
1057         * modules/sigaction: New module...
1058         * modules/sigaction-tests: ...and its test.
1059         * m4/sigaction.m4: New file.
1060         * lib/sigaction.c: Likewise.
1061         * tests/test-sigaction.c: Likewise.
1062         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
1063         * modules/signal (Makefile.am): Likewise.
1064         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
1065         needed.
1066         * doc/posix-headers/signal.texi (signal.h): Mention provided
1067         types.
1068         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
1069         that sigaction is preferable.
1070         * doc/posix-functions/sigaction.texi (sigaction): Mention new
1071         module.
1072         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
1073         sigaction.
1074
1075         Improve robustness of sigprocmask by overriding signal.
1076         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
1077         is in use.
1078         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
1079         (SIGKILL, SIGSTOP): Provide fallbacks.
1080         (rpl_signal): Implement.
1081         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
1082         signal can be called inside handlers.
1083
1084         Fix nanosleep module on mingw.
1085         * modules/nanosleep (Depends-on): Add sys_select.
1086         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
1087
1088         Fix licensing of sigprocmask.
1089         * modules/raise (License): Relicense as LGPL.
1090
1091 2008-06-21  Bruno Haible  <bruno@clisp.org>
1092
1093         * lib/propername.c (proper_name_utf8): Don't use the transliterated
1094         result if it contains question marks.
1095         Reported by Michael Geng <linux@michaelgeng.de>.
1096
1097 2008-06-19  Bruno Haible  <bruno@clisp.org>
1098
1099         Fix CVS-ism.
1100         * doc/gnulib.texi: Include updated-stamp.texi.
1101         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
1102         (updated-stamp.texi): New rule.
1103         (gnulib.info): Depend on it.
1104         * doc/.gitignore: Add updated-stamp.texi.
1105         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
1106
1107 2008-06-19  Bruno Haible  <bruno@clisp.org>
1108
1109         * doc/Makefile (gnulib.info): Update and simplify dependencies.
1110         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
1111
1112 2008-06-19  Eric Blake  <ebb9@byu.net>
1113
1114         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
1115         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
1116         Reported by Stepan Kasal.
1117
1118 2008-06-18  Bruno Haible  <bruno@clisp.org>
1119
1120         * lib/fatal-signal.c (init_fatal_signals): Add comment.
1121         Reported by Eric Blake.
1122
1123 2008-06-18  Eric Blake  <ebb9@byu.net>
1124
1125         Work around cygwin 1.5.25 strsignal bug.
1126         * tests/test-strsignal.c: Allow for const char *.
1127         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
1128
1129 2008-06-18  Simon Josefsson  <simon@josefsson.org>
1130
1131         * users.txt: Update URL to article and add author/date
1132         information.
1133
1134 2008-06-17  Bruno Haible  <bruno@clisp.org>
1135
1136         New macro gl_DISABLE_THREADS.
1137         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
1138         if the user did not pass --enable-threads or --disable-threads option.
1139         (gl_DISABLE_THREADS): New macro.
1140         Reported by Eric Blake <ebb9@byu.net>.
1141
1142 2008-06-17  Bruno Haible  <bruno@clisp.org>
1143
1144         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
1145         when the macro ignores it.
1146         Based on a patch by Eric Blake <ebb9@byu.net>.
1147
1148 2008-06-17  Bruno Haible  <bruno@clisp.org>
1149
1150         * modules/tls (License): Change to LGPLv2+.
1151         Reported by Eric Blake.
1152
1153 2008-06-17  Eric Blake  <ebb9@byu.net>
1154
1155         Simplify c-stack prerequisites.
1156         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
1157         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
1158         no longer requires <ucontext.h> to exist.  Optimize setrlimit
1159         check.
1160         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
1161         <sys/resource.h>.
1162
1163         Move c-stack test into testsuite.
1164         * modules/c-stack-tests: New file.
1165         * lib/c-stack.c [DEBUG]: Move test program...
1166         * tests/test-c-stack.c: ...into this new file.  Skip rather than
1167         fail test if sigaltstack is lacking.
1168         * tests/test-c-stack.sh: New driver file.
1169
1170 2008-06-16  Eric Blake  <ebb9@byu.net>
1171
1172         Use raise module consistently.
1173         * modules/fatal-signal (Depends-on): Add raise.
1174         * modules/sigprocmask (Depends-on): Likewise.
1175         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
1176         * lib/sigprocmask.c (sigprocmask): Likewise.
1177         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
1178         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
1179
1180         Fix compliance bug in sigpending.
1181         * lib/sigprocmask.c (sigpending): Return pending array via
1182         parameter, not return value.
1183
1184 2008-06-14  Eric Blake  <ebb9@byu.net>
1185
1186         Improve obstack-printf test code.
1187         * tests/test-obstack-printf.c (test_function): Fix comment, and
1188         simplify usage of obstack_* in macros.  Add a test for coverage.
1189         Reported by Bruno Haible.
1190
1191 2008-06-14  Bruno Haible  <bruno@clisp.org>
1192
1193         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
1194         array size as a constant, not as a const variable.
1195         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
1196         AC_USE_SYSTEM_EXTENSIONS.
1197         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
1198         Test whether the obstack_printf function actually exists.
1199         * modules/obstack-printf (Depends-on): Add extensions.
1200         (Include): Remove obstack.h.
1201         * modules/obstack-printf-posix (Depends-on): Add extensions.
1202         (Include): Remove obstack.h.
1203
1204 2008-06-13  Eric Blake  <ebb9@byu.net>
1205
1206         Add obstack-printf and obstack-printf-posix modules.
1207         * modules/obstack-printf: New file.
1208         * modules/obstack-printf-posix: Likewise.
1209         * MODULES.html.sh (Misc): Mention them.
1210         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
1211         Likewise.
1212         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
1213         Likewise.
1214         * modules/stdio (Makefile.am): Accomodate new modules.
1215         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
1216         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
1217         Declare.
1218         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
1219         functions.
1220         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
1221         (gl_REPLACE_OBSTACK_PRINTF): New macros
1222         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
1223         * tests/test-obstack-printf.c: New file.
1224         * modules/obstack-printf-tests: Likewise.
1225         * modules/obstack-printf-posix-tests: Likewise.
1226
1227 2008-06-11  Bruno Haible  <bruno@clisp.org>
1228
1229         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
1230         * lib/open.c: Include errno.h.
1231         (open): Fail when attempting to write to a file that has a trailing
1232         slash.
1233         * tests/test-open.c (main): Test against trailing slash bug.
1234         * doc/posix-functions/open.texi: Mention the trailing slash bug.
1235
1236 2008-06-10  Bruno Haible  <bruno@clisp.org>
1237
1238         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
1239         for $? to work inside the trap command, with various /bin/sh-s.
1240         * tests/test-vc-list-files-cvs.sh: Likewise.
1241
1242 2008-06-10  Bruno Haible  <bruno@clisp.org>
1243
1244         * lib/acl-internal.h: Don't include gettext.h here.
1245         * lib/set-mode-acl.c: Include gettext.h here.
1246         * lib/copy-acl.c: Likewise.
1247
1248 2008-06-10  Bruno Haible  <bruno@clisp.org>
1249
1250         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
1251         * lib/wait-process.c (wait_subprocess): Likewise.
1252         * lib/execute.h (execute): Add termsigp argument.
1253         * lib/execute.c (execute): Likewise.
1254         * lib/csharpcomp.c (compile_csharp_using_pnet,
1255         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
1256         * lib/csharpexec.c (execute_csharp_using_pnet,
1257         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
1258         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
1259         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
1260         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
1261         is_jikes_present): Update.
1262         * lib/javaexec.c (execute_java_class): Update.
1263         * lib/javaversion.c (execute_and_read_line): Update.
1264         * NEWS: Document the changes.
1265         Reported by Eric Blake.
1266
1267 2008-06-10  Eric Blake  <ebb9@byu.net>
1268
1269         Add missing include.
1270         * tests/test-strstr.c (includes): Add <signal.h>.
1271         * tests/test-strcasestr.c (includes): Likewise.
1272         * tests/test-memmem.c (includes): Likewise.
1273
1274 2008-06-10  Bruno Haible  <bruno@clisp.org>
1275
1276         * lib/wait-process.c (wait_subprocess): Add an assertion.
1277
1278 2008-06-10  Bruno Haible  <bruno@clisp.org>
1279
1280         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
1281
1282 2008-06-10  Bruno Haible  <bruno@clisp.org>
1283
1284         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
1285         using alarm().
1286         * tests/test-strcasestr.c (main): Likewise.
1287         * tests/test-strstr.c (main): Likewise.
1288
1289 2008-06-09  Bruno Haible  <bruno@clisp.org>
1290
1291         Work around the Solaris 10 ACE ACLs ABI change.
1292         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
1293         declare if ACL_NO_TRIVIAL is present.
1294         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
1295         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
1296         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
1297         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
1298         define if ACL_NO_TRIVIAL is present.
1299         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
1300         and use the current ABI.
1301         (file_has_acl): Use same #if condition as elsewhere.
1302         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
1303         in use, and use the current ABI.
1304         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
1305         Reported by Jim Meyering.
1306
1307 2008-06-09  Eric Blake  <ebb9@byu.net>
1308
1309         Work around environments that (stupidly) ignore SIGALRM.
1310         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
1311         before using alarm().
1312         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1313         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
1314         Reported by Ian Beckwith <ianb@erislabs.net>.
1315
1316         Produce autobuild blurb earlier in log.
1317         * modules/autobuild (configure.ac-early): Move AB_INIT here.
1318
1319 2008-06-09  Jim Meyering  <meyering@redhat.com>
1320         and Ondřej Vašík  <ovasik@redhat.com>
1321
1322         utimens.c: correct kernel bug work-around
1323         Ondřej Vašík found that the invalid return value of 280 indicates
1324         failure, not success, and the kernel bug we're trying to work
1325         around affects not just the utimensat call, but also the fallback
1326         futimens call.
1327         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
1328         not success.
1329         [HAVE_FUTIMENS]: Use the same work-around, here.
1330
1331 2008-06-09  Jim Meyering  <meyering@redhat.com>
1332
1333         add more guards around definition of ACE_-related code
1334         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
1335         ALLOW and ACE_OWNER are also defined.
1336
1337 2008-06-08  Bruno Haible  <bruno@clisp.org>
1338
1339         * lib/acl-internal.h: Add me as co-author.
1340         * lib/file-has-acl.c: Likewise.
1341         * lib/set-mode-acl.c: Likewise.
1342         * lib/copy-acl.c: Likewise.
1343
1344 2008-06-08  Bruno Haible  <bruno@clisp.org>
1345
1346         Add support for AIX ACLs.
1347         * lib/acl-internal.h (acl_nontrivial): New declaration.
1348         * lib/file-has-acl.c (acl_nontrivial): New function.
1349         (file_has_acl): Add implementation using AIX 4 ACL API.
1350         * lib/set-mode-acl.c (qset_acl): Likewise.
1351         * lib/copy-acl.c (qcopy_acl): Likewise.
1352
1353 2008-06-08  Bruno Haible  <bruno@clisp.org>
1354
1355         Add support for HP-UX ACLs.
1356         * lib/acl-internal.h (acl_nontrivial): New declaration.
1357         * lib/file-has-acl.c (acl_nontrivial): New function.
1358         (file_has_acl): Add implementation using HP-UX 11 ACL API.
1359         * lib/set-mode-acl.c (qset_acl): Likewise.
1360         * lib/copy-acl.c (qcopy_acl): Likewise.
1361
1362 2008-06-08  Bruno Haible  <bruno@clisp.org>
1363
1364         Add support for Cygwin ACLs.
1365         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
1366         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
1367         the chmod_or_fchmod call.
1368         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
1369
1370 2008-06-08  Bruno Haible  <bruno@clisp.org>
1371
1372         Fix bug with setuid modes in Solaris 10+ code.
1373         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
1374         succeeded, when the mode contains some special bits.
1375
1376 2008-06-08  Bruno Haible  <bruno@clisp.org>
1377
1378         Add support for Solaris 7..10 ACLs.
1379         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
1380         declarations.
1381         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
1382         functions.
1383         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
1384         * lib/set-mode-acl.c (qset_acl): Likewise.
1385         * lib/copy-acl.c (qcopy_acl): Likewise.
1386
1387 2008-06-08  Bruno Haible  <bruno@clisp.org>
1388
1389         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
1390         declaration.
1391         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
1392         (acl_access_nontrivial): Remove MacOS X case.
1393         (file_has_acl): Use acl_extended_nontrivial.
1394         * lib/copy-acl.c (qcopy_acl): Likewise.
1395
1396 2008-06-08  Bruno Haible  <bruno@clisp.org>
1397
1398         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
1399
1400 2008-06-08  Jim Meyering  <meyering@redhat.com>
1401
1402         * modules/acl (Maintainer): Add Bruno Haible.
1403
1404 2008-06-07  Bruno Haible  <bruno@clisp.org>
1405
1406         Improve support for Tru64 ACLs.
1407         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
1408         ACL on OSF/1.
1409
1410 2008-06-07  Bruno Haible  <bruno@clisp.org>
1411
1412         Add support for MacOS X ACLs.
1413         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
1414         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
1415         * lib/set-mode-acl.c (qset_acl): Likewise.
1416         * lib/copy-acl.c (qcopy_acl): Likewise.
1417
1418 2008-06-07  Bruno Haible  <bruno@clisp.org>
1419
1420         Fix memory leak introduced on 2008-05-22.
1421         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
1422         use.
1423
1424 2008-06-07  Bruno Haible  <bruno@clisp.org>
1425
1426         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
1427         to construct an empty ACL.
1428
1429 2008-06-07  Bruno Haible  <bruno@clisp.org>
1430
1431         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
1432         precisely.
1433         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
1434
1435 2008-06-07  Bruno Haible  <bruno@clisp.org>
1436
1437         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
1438         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
1439
1440 2008-06-07  Bruno Haible  <bruno@clisp.org>
1441
1442         * doc/posix-functions/_setjmp.texi: Explain the use of this function
1443         regardless of POSIX.
1444         * doc/posix-functions/_longjmp.texi: Likewise.
1445         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
1446         SystemV platform in this case.
1447
1448 2008-06-06  Eric Blake  <ebb9@byu.net>
1449
1450         Document abort() bugs.
1451         * doc/posix-functions/abort.texi (abort): Mention anomalies.
1452
1453         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
1454         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
1455         sigsetjmp.
1456         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
1457         siglongjmp, but only as a macro.
1458         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
1459         is obsolete.
1460         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
1461
1462         Tweak documentation to cover cygwin argz bugs.
1463         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
1464         argz bug fix; no code change needed since no cygwin releases
1465         occurred between the last fix and the bug being tested.
1466         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
1467         module and recently fixed cygwin bugs.
1468         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
1469         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
1470         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
1471         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
1472         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
1473         Likewise.
1474         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
1475         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
1476         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
1477         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
1478         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
1479         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
1480         Likewise.
1481
1482         Avoid gcc warning on cygwin.
1483         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
1484         !ACL_NO_TRIVIAL]: Avoid unused variable.
1485
1486 2008-06-05  Eric Blake  <ebb9@byu.net>
1487
1488         Be tolerant of UNKNOWN version in gnulib-tool test dir.
1489         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
1490         git-version-gen fails to come up with a version.
1491         Reported by Simon Josefsson.
1492
1493 2008-06-05  Jim Meyering  <meyering@redhat.com>
1494             Paul Eggert  <eggert@cs.ucla.edu>
1495
1496         utimens.c: work around a probable Linux kernel bug
1497         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
1498         appears to be a kernel bug that causes utimensat to return 280
1499         instead of 0, indicating success.
1500
1501 2008-06-04  Bruno Haible  <bruno@clisp.org>
1502
1503         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
1504         2008-06-01 commit.
1505
1506 2008-06-04  Bruno Haible  <bruno@clisp.org>
1507
1508         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
1509         * lib/file-has-acl.c (acl_access_nontrivial): New function.
1510         (file_has_acl): Use it. Save errno afterwards.
1511         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
1512
1513 2008-06-03  Bruno Haible  <bruno@clisp.org>
1514
1515         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
1516         draft code. Simplify #ifs.
1517         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
1518         Put Solaris code after POSIX-draft code. Fix comments regarding
1519         Solaris 10, HP-UX. Mention Cygwin.
1520         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
1521
1522 2008-06-03  Eric Blake  <ebb9@byu.net>
1523
1524         Provide fallback for older kernels.
1525         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
1526         Provide runtime fallback if kernel lacks support.
1527         Reported by Mike Frysinger.
1528
1529 2008-06-02  Bruno Haible  <bruno@clisp.org>
1530
1531         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
1532         it exists.
1533
1534 2008-06-02  Bruno Haible  <bruno@clisp.org>
1535
1536         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
1537         * lib/copy-acl.c (qcopy_acl): Update comment.
1538
1539 2008-06-02  Bruno Haible  <bruno@clisp.org>
1540
1541         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
1542         like ACL APIs.
1543
1544 2008-06-02  Bruno Haible  <bruno@clisp.org>
1545
1546         * tests/test-file-has-acl.sh: Use different code for Cygwin.
1547         * tests/test-set-mode-acl.sh: Likewise.
1548         * tests/test-copy-acl.sh: Likewise.
1549         * tests/test-copy-file.sh: Likewise.
1550
1551 2008-06-02  Bruno Haible  <bruno@clisp.org>
1552
1553         * tests/test-file-has-acl.sh: Remove unused code.
1554
1555 2008-06-01  Bruno Haible  <bruno@clisp.org>
1556
1557         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
1558         (copy_acl): Just a wrapper around qcopy_acl that emits the error
1559         messages.
1560         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
1561
1562 2008-06-01  Bruno Haible  <bruno@clisp.org>
1563
1564         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
1565         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
1566         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
1567         APIs.
1568         * modules/acl-tests (configure.ac): Remove tests now contained in
1569         m4/acl.m4.
1570
1571 2008-06-02  Jim Meyering  <meyering@redhat.com>
1572
1573         announce-gen: use a better key-server host name
1574         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
1575         it may be more consistently reliable.  Suggested by Werner Koch
1576         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
1577
1578 2008-06-01  Bruno Haible  <bruno@clisp.org>
1579
1580         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
1581         Reported by Voroskoi Andras <voroskoi@gmail.com>.
1582
1583 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
1584
1585         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
1586
1587 2008-06-01  Bruno Haible  <bruno@clisp.org>
1588
1589         New ACL tests.
1590         * tests/test-file-has-acl.sh: New file.
1591         * tests/test-file-has-acl.c: New file.
1592         * tests/test-set-mode-acl.sh: New file.
1593         * tests/test-set-mode-acl.c: New file.
1594         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
1595         * tests/test-copy-acl.c: New file.
1596         * modules/acl-tests: New file, based on modules/copy-file-tests.
1597         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
1598         (Depends-on): Add acl-tests.
1599         (configure.ac): Remove checks.
1600         (Makefile.am): Don't create test-sameacls program here any more.
1601
1602 2008-06-01  Bruno Haible  <bruno@clisp.org>
1603
1604         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
1605         * tests/test-sameacls.c: Include progname.h.
1606         (main): Invoke set_program_name. Portability fixes for MacOS X,
1607         Solaris, HP-UX.
1608
1609 2008-06-01  Bruno Haible  <bruno@clisp.org>
1610
1611         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
1612         function.
1613         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
1614
1615 2008-06-01  Bruno Haible  <bruno@clisp.org>
1616
1617         * modules/rpmatch (Depends-on): Add strdup.
1618
1619 2008-06-01  Bruno Haible  <bruno@clisp.org>
1620
1621         * lib/pipe.c: Include unistd-safer.h.
1622         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
1623         * modules/pipe (Depends-on): Add unistd-safer.
1624
1625 2008-05-30  Simon Josefsson  <simon@josefsson.org>
1626
1627         * modules/autobuild (configure.ac): Call AB_INIT.
1628
1629 2008-05-30  Simon Josefsson  <simon@josefsson.org>
1630
1631         * tests/test-getaddrinfo.c: Don't print debug messages by default.
1632         Suggested by Bruno Haible <bruno@clisp.org>.
1633
1634 2008-05-30  Simon Josefsson  <simon@josefsson.org>
1635
1636         * tests/test-base64.c: Cast size_t to unsigned long when invoking
1637         printf.  Use %lu instead of %d.  Reported by Bruno Haible
1638         <bruno@clisp.org>.
1639
1640 2008-05-29  Eric Blake  <ebb9@byu.net>
1641
1642         Prefer new POSIX 200x interfaces over futimesat.
1643         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
1644         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
1645         when available.
1646         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
1647
1648 2008-05-28  Bruno Haible  <bruno@clisp.org>
1649
1650         * modules/stpcpy (License): Change to LGPLv2+.
1651         Requested by David Lutterkort <dlutter@redhat.com>.
1652
1653 2008-05-27  Bruno Haible  <bruno@clisp.org>
1654
1655         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
1656         current mingw.
1657         Reported by Jose E. Marchesi <jemarch@gnu.org>.
1658
1659 2008-05-27  Bruno Haible  <bruno@clisp.org>
1660
1661         * modules/iconv_open (Link): New section, from module 'iconv'.
1662         * modules/striconv (Link): Likewise.
1663         * modules/striconveh (Link): Likewise.
1664         * modules/xstriconv (Link): Likewise.
1665         * modules/unicodeio (Link): Likewise.
1666         * modules/propername (Link): Likewise.
1667         Reported by Jim Meyering.
1668
1669 2008-05-26  Jim Meyering  <meyering@redhat.com>
1670
1671         sha256: do not artificially restrict buffer length to be < 2^32
1672         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
1673         uint32_t to size_t.
1674         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
1675         to match.
1676
1677         avoid unaligned access errors, e.g., on sparc
1678         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
1679         direct access through a possibly-unaligned uint64* pointer.
1680         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
1681         direct access through a possibly-unaligned uint32* pointer.
1682         Prompted by this patch from Tom "spot" Callaway:
1683         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
1684
1685         sha512.c: fix typo in comment
1686         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
1687
1688 2008-05-25  Bruno Haible  <bruno@clisp.org>
1689
1690         * lib/set-mode-acl.c: Renamed from lib/acl.c.
1691         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
1692         (Makefile.am): Update lib_SOURCES.
1693
1694 2008-05-25  Bruno Haible  <bruno@clisp.org>
1695
1696         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
1697
1698 2008-05-25  Jim Meyering  <meyering@redhat.com>
1699
1700         useless-if-before-free: freed expr may have white-space differences
1701         * build-aux/useless-if-before-free: Recognize cases in which the
1702         freed expression differs from the tested one in embedded white
1703         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
1704         $1 was used, so we can't make any regexp shy.  Improved tests now
1705         detect this.
1706
1707         useless-if-before-free: accept white space in the expression.
1708         * build-aux/useless-if-before-free: For now, any white space
1709         in the expression must be identical in the free argument.
1710
1711         useless-if-before-free: efficiency tweak
1712         * build-aux/useless-if-before-free: Make the expression-matching
1713         regexp "shy".
1714         Make the *outer* regexp shy, not the expr-matching one.
1715
1716         update code-in-comment to accept cast of free arg
1717         * build-aux/useless-if-before-free: Update regexp.
1718
1719 2008-05-25  Bruno Haible  <bruno@clisp.org>
1720
1721         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
1722         * modules/copy-file-tests (Files, Makefile.am): Update.
1723         * tests/test-copy-file.c (func_test_copy): Update.
1724
1725 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
1726
1727         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
1728
1729 2008-05-23  Bruno Haible  <bruno@clisp.org>
1730
1731         Improve support for ACLs on OSF/1.
1732         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
1733         Remove fallback for unknown flavors of ACLs.
1734
1735 2008-05-22  Bruno Haible  <bruno@clisp.org>
1736
1737         Add support for ACLs on OSF/1.
1738         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
1739         replacements.
1740         (acl_free_text): New macro fallback.
1741         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
1742         acl_free.
1743         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
1744         acl_free_text function. Require AC_C_INLINE.
1745
1746 2008-05-22  Bruno Haible  <bruno@clisp.org>
1747
1748         Make copy_acl work on MacOS X 10.5.
1749         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
1750         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
1751         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
1752         If MODE_INSIDE_ACL, don't assume that every system has the same text
1753         representation for ACLs as FreeBSD.
1754         * lib/copy-acl.c (copy_acl): Add support for platforms with
1755         !MODE_INSIDE_ACL.
1756         * lib/file-has-acl.c (file_has_acl): Likewise.
1757         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
1758         FreeBSD, MacOS X, or IRIX, respectively.
1759
1760 2008-05-22  Bruno Haible  <bruno@clisp.org>
1761
1762         * lib/acl.h: Don't include <sys/acl.h>.
1763         (GETACLCNT): Move fallback to lib/acl-internal.h.
1764         * lib/acl-internal.h: Include <sys/acl.h> here.
1765         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
1766
1767 2008-05-22  Bruno Haible  <bruno@clisp.org>
1768
1769         Split off copy_acl function to separate file.
1770         * lib/copy-acl.c: New file, extracted from lib/acl.c.
1771         * lib/acl.c (copy_acl): Moved function to separate file.
1772         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
1773         * modules/acl (Files): Add lib/copy-acl.c.
1774         (Makefiles.am): Augment lib_SOURCES.
1775
1776 2008-05-22  Bruno Haible  <bruno@clisp.org>
1777
1778         * modules/copy-file-tests: New file.
1779         * tests/test-copy-file.sh: New file.
1780         * tests/test-copy-file.c: New file.
1781         * tests/test-copy-file-sameacls.c: New file.
1782
1783 2008-05-22  Eric Blake  <ebb9@byu.net>
1784
1785         Avoid gcc warning.
1786         * tests/test-memcmp.c (main): Pass NULL indirectly.
1787
1788 2008-05-21  Bruno Haible  <bruno@clisp.org>
1789
1790         Add reference doc about ACLs.
1791         * doc/acl-resources.txt: New file.
1792         * doc/acl-cygwin.txt: New file.
1793
1794 2008-05-21  Bruno Haible  <bruno@clisp.org>
1795
1796         Avoid one more warning from gcc.
1797         * lib/vasnprintf.c (IF_LINT): Update comments.
1798         (VASNPRINTF): Use it also for the 'prefix' array initializer.
1799
1800 2008-05-21  Jim Meyering  <meyering@redhat.com>
1801
1802         avoid a warning from gcc
1803         * lib/vasnprintf.c (IF_LINT): Define.
1804         (scale10_round_decimal_long_double):
1805         Use it to avoid a "may be used uninitialized" warning.
1806         (scale10_round_decimal_double): Likewise.
1807
1808 2008-05-21  Simon Josefsson  <simon@josefsson.org>
1809
1810         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
1811         declared.
1812
1813 2008-05-20  Bruno Haible  <bruno@clisp.org>
1814
1815         * tests/test-memcmp.c (main): Test also the sign of the result. Test
1816         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
1817
1818 2008-05-20  Simon Josefsson  <simon@josefsson.org>
1819
1820         * modules/memcmp-tests: New file.
1821         * tests/test-memcmp.c: New file.
1822
1823 2008-05-19  Bruno Haible  <bruno@clisp.org>
1824
1825         * modules/propername (Notice, configure.ac): Put quoted "..." into
1826         --keyword option.
1827         * lib/propername.h: Update comments accordingly.
1828         Reported by Eric Blake.
1829
1830 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
1831
1832         * modules/getpass-gnu (Depends-on): Add fseeko.
1833
1834 2008-05-19  Simon Josefsson  <simon@josefsson.org>
1835
1836         * modules/base64-tests: New file.
1837
1838 2008-05-19  Bo Borgerson <gigabo@gmail.com>
1839
1840         * lib/base64.c (base64_decode_ctx): If a decode context structure
1841         was passed in use it to ignore newlines.  If a context structure
1842         was _not_ passed in, continue to treat newlines as garbage (this
1843         is the historical behavior).  Formerly base64_decode.
1844         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
1845         takes a decode context structure.
1846         * lib/base64.h (base64_decode): Macro for four-argument calls.
1847         (base64_decode_alloc): Likewise.
1848         * lib/base64.c (base64_decode_ctx): If a decode context structure
1849         was passed in use it to ignore newlines.  If a context structure
1850         was _not_ passed in, continue to treat newlines as garbage (this
1851         is the historical behavior).  Formerly base64_decode.
1852         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
1853         takes a decode context structure.
1854         * lib/base64.h (base64_decode): Macro for four-argument calls.
1855         (base64_decode_alloc): Likewise.
1856
1857 2008-05-19  Jim Meyering  <meyering@redhat.com>
1858
1859         avoid a warning from gcc
1860         * lib/trim.c (IF_LINT): Define.
1861         (trim2): Use it to avoid a "may be used uninitialized" warning.
1862
1863         Fix doc typo.
1864         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
1865
1866 2008-05-19  Bruno Haible  <bruno@clisp.org>
1867
1868         * doc/glibc-functions/getpass.texi: Document limits of other
1869         implementations.
1870
1871 2008-05-19  Simon Josefsson  <simon@josefsson.org>
1872             Bruno Haible <bruno@clisp.org>
1873
1874         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
1875
1876 2008-05-18  Bruno Haible  <bruno@clisp.org>
1877
1878         * modules/propername: New file, from GNU gettext.
1879         * lib/propername.h: New file, from GNU gettext.
1880         * lib/propername.c: New file, from GNU gettext.
1881         * MODULES.html.sh (Internationalization functions): Add propername.
1882
1883 2008-05-16  Jim Meyering  <meyering@redhat.com>
1884             Bruno Haible  <bruno@clisp.org>
1885
1886         Avoid some warnings from "gcc -Wshadow".
1887         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
1888
1889 2008-05-15  Eric Blake  <ebb9@byu.net>
1890
1891         Extend previous patch to cygwin 1.7.0.
1892         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
1893         fast implementation in cygwin >= 1.7.0.
1894         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
1895         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1896
1897 2008-05-15  Bruno Haible  <bruno@clisp.org>
1898
1899         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
1900         implementation in glibc >= 2.9.
1901         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
1902         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1903
1904 2008-05-15  Bruno Haible  <bruno@clisp.org>
1905
1906         * MODULES.html.sh (Internationalization functions): Remove linebreak.
1907         (Unicode string functions): Add unilbrk/*.
1908         Reported by Karl Berry.
1909
1910 2008-05-15  Eric Blake  <ebb9@byu.net>
1911
1912         Fix violation of <stdbool.h> replacement in regex.
1913         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
1914         * lib/regexec.c (re_search_internal): Likewise.
1915         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
1916
1917 2008-05-15  Jim Meyering  <meyering@redhat.com>
1918
1919         avoid distracting test output when git or cvs is not found
1920         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
1921         * tests/test-vc-list-files-git.sh: Likewise.
1922
1923 2008-05-15  Eric Blake  <ebb9@byu.net>
1924
1925         Glibc finally accepted the memmem speedup code, bugzilla #5514.
1926         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
1927         glibc version.
1928         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
1929         * doc/posix-functions/strstr.texi (strstr): Likewise.
1930         * lib/str-two-way.h (MAX): Sychronize with glibc.
1931
1932 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
1933
1934         * lib/regcomp.c (optimize_utf8): Add a note on why we test
1935         opr.ctx_type.
1936         (calc_first): Initialize constraint field.
1937         (duplicate_node_closure): Use it instead of special casing ANCHORS.
1938         Fix grammar.
1939         (duplicate_node): Merge constraint field for all node types.
1940         (calc_eclosure_iter): Look at constraint field for all node types.
1941         * lib/regex_internal.c (create_cd_newstate): Don't look at
1942         opr.ctx_type.
1943
1944 2008-05-14  Bruno Haible  <bruno@clisp.org>
1945
1946         Help GCC to do better code generation.
1947         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
1948         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
1949         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
1950         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
1951         Declare with attribute 'malloc' if supported.
1952
1953 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
1954
1955         use "echo STR|wc -c" rather than unportable "expr length STR"
1956         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
1957         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
1958
1959 2008-05-14  Jim Meyering  <meyering@redhat.com>
1960
1961         use dd ibs=$n count=1 ... rather than less-portable head -c$n
1962         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
1963         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
1964         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
1965         via Collin Lasse.
1966
1967 2008-05-14  Eric Blake  <ebb9@byu.net>
1968
1969         Avoid quadratic growth in gl_LIBSOURCES.
1970         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
1971         Suggested by Bruno Haible.
1972
1973         Test xmemdup0.
1974         * modules/xmemdup0-tests: New file.
1975         * tests/test-xmemdup0.c: Likewise.
1976
1977 2008-05-13  Eric Blake  <ebb9@byu.net>
1978
1979         Split xmemdup0 into its own module.
1980         * modules/xmemdup0: New file.
1981         * lib/xmemdup0.h: Likewise.
1982         * lib/xmemdup0.c: Likewise.
1983         * MODULES.html.sh (Memory management functions): Add xmemdup0.
1984         * lib/xalloc.h (xmemdup0): Remove.
1985         * lib/xmalloc.c (xmemdup0): Likewise.
1986
1987 2008-05-13  Eric Blake  <ebb9@byu.net>
1988             Bruno Haible  <bruno@clisp.org>
1989
1990         Reduce number of forks required during autoconf.
1991         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
1992         and gl_LIBSOURCES_DIR.
1993         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
1994         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
1995         m4_syscmd per file.
1996         <m4_foreach_w>: Move...
1997         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
1998
1999 2008-05-13  Eric Blake  <ebb9@byu.net>
2000
2001         * gnulib-tool: Fix various comment typos.
2002
2003 2008-05-12  Bruno Haible  <bruno@clisp.org>
2004
2005         Tailor the linebreaking algorithm.
2006         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
2007
2008 2008-05-12  Bruno Haible  <bruno@clisp.org>
2009
2010         Update to Unicode 5.0.0.
2011         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
2012         LBP_JV, LBP_JT. Redistribute values.
2013         (unilbrk_table): Change size.
2014         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
2015         Unicode TR#14 rev. 22.
2016         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
2017         LBP_JV, LBP_JT. Redistribute values.
2018         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
2019         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
2020         Update.
2021         * lib/unilbrk/lbrkprop1.h: Regenerated.
2022         * lib/unilbrk/lbrkprop2.h: Regenerated.
2023         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
2024         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
2025         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
2026         Likewise.
2027         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
2028         Likewise.
2029         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
2030         result.
2031         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
2032         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
2033         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
2034         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
2035         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
2036         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
2037
2038 2008-05-11  Bruno Haible  <bruno@clisp.org>
2039
2040         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
2041
2042 2008-05-11  Bruno Haible  <bruno@clisp.org>
2043
2044         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
2045         * modules/unilbrk/gen-lbrk: New file.
2046
2047 2008-05-11  Bruno Haible  <bruno@clisp.org>
2048
2049         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
2050         * m4/sha512.m4 (gl_SHA512): Likewise.
2051
2052 2008-05-11  Jim Meyering  <meyering@redhat.com>
2053
2054         New modules: crypto/sha256, crypto/sha512 (from coreutils)
2055         * modules/crypto/sha256: New file.
2056         * modules/crypto/sha512: Likewise.
2057         * lib/sha256.c: Likewise.
2058         * lib/sha256.h: Likewise.
2059         * lib/sha512.c: Likewise.
2060         * lib/sha512.h: Likewise.
2061         * lib/u64.h: Likewise.
2062         * m4/sha256.m4: Likewise.
2063         * m4/sha512.m4: Likewise.
2064         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
2065
2066 2008-05-10  Bruno Haible  <bruno@clisp.org>
2067
2068         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
2069         (Input/Output <stdio.h>): Add xprintf.
2070         (Signal handling <signal.h>): Add strsignal.
2071         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
2072         (Core language properties): Add func.
2073         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
2074         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
2075         strings.
2076         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
2077         (Input/output): New section.
2078         (File system functions): Add openat-die, stat-macros.
2079         (Networking functions): Add sockets.
2080         (Unicode string functions): Add unictype/*.
2081         (Support for building libraries and executables): Add gperf.
2082         (Support for building documentation): Add agpl-3.0.
2083         (Misc): Add nocrash.
2084
2085 2008-05-10  Bruno Haible  <bruno@clisp.org>
2086
2087         * modules/unictype/gen-ctype: New file.
2088
2089 2008-05-10  Jim Meyering  <meyering@redhat.com>
2090
2091         Make chdir-safer.c more efficient on a system with no symlinks.
2092         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
2093         also if ELOOP is zero.  Suggested by Bruno Haible.
2094
2095         Make chdir-safer.c slightly safer.
2096         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
2097         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
2098
2099         Avoid compile failure on systems without ELOOP (like mingw).
2100         * lib/chdir-safer.c (ELOOP): Define if not already defined.
2101         Reported by Bruno Haible.
2102
2103 2008-05-10  Bruno Haible  <bruno@clisp.org>
2104
2105         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
2106         (is_utf8_encoding): Use a case-insensitive comparison.
2107         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
2108         streq.
2109
2110 2008-05-10  Bruno Haible  <bruno@clisp.org>
2111
2112         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
2113         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
2114         * lib/unilbrk/ulc-common.h (iconv_string_length,
2115         iconv_string_keeping_offsets): Remove declarations.
2116         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
2117         Don't include <iconv.h>, streq.h, xsize.h.
2118         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
2119         conversion.
2120         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
2121         <iconv.h>, streq.h, xsize.h.
2122         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
2123         conversion.
2124         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
2125         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
2126         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
2127         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
2128
2129 2008-05-10  Bruno Haible  <bruno@clisp.org>
2130
2131         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
2132         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
2133
2134         * modules/unilbrk/u32-width-linebreaks-tests: New file.
2135         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
2136
2137         * modules/unilbrk/u16-width-linebreaks-tests: New file.
2138         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
2139
2140         * modules/unilbrk/u8-width-linebreaks-tests: New file.
2141         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
2142
2143         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
2144         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
2145
2146         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
2147         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
2148
2149         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
2150         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
2151
2152         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
2153         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
2154
2155 2008-05-10  Bruno Haible  <bruno@clisp.org>
2156
2157         Split up 'linebreak' module.
2158         * lib/unilbrk.h: New file, based on lib/linebreak.h.
2159         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
2160         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
2161         modifications.
2162         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
2163         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
2164         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
2165         lib/linebreak.c.
2166         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
2167         lib/linebreak.c.
2168         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
2169         lib/linebreak.c.
2170         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
2171         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
2172         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
2173         lib/linebreak.c.
2174         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
2175         lib/linebreak.c.
2176         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
2177         lib/linebreak.c.
2178         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
2179         lib/linebreak.c.
2180         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
2181         lib/linebreak.c.
2182         * modules/unilbrk/base: New file.
2183         * modules/unilbrk/tables: New file.
2184         * modules/unilbrk/u8-possible-linebreaks: New file.
2185         * modules/unilbrk/u16-possible-linebreaks: New file.
2186         * modules/unilbrk/u32-possible-linebreaks: New file.
2187         * modules/unilbrk/ulc-common: New file.
2188         * modules/unilbrk/ulc-possible-linebreaks: New file.
2189         * modules/unilbrk/u8-width-linebreaks: New file.
2190         * modules/unilbrk/u16-width-linebreaks: New file.
2191         * modules/unilbrk/u32-width-linebreaks: New file.
2192         * modules/unilbrk/ulc-width-linebreaks: New file.
2193         * lib/linebreak.h: Remove file.
2194         * lib/linebreak.c: Remove file.
2195         * m4/linebreak.m4: Remove file.
2196         * modules/linebreak: Remove file.
2197         * NEWS: Mention the changes.
2198
2199 2008-05-09  Eric Blake  <ebb9@byu.net>
2200
2201         Add xmemdup0.
2202         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
2203         implementation.
2204         * lib/xmalloc.c (xmemdup0): New C implementation.
2205
2206 2008-05-08  Bruno Haible  <bruno@clisp.org>
2207
2208         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
2209
2210 2008-05-07  Eric Blake  <ebb9@byu.net>
2211
2212         Support cross-compilation of <wctype.h>.
2213         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
2214         AC_CACHE_CHECK.
2215
2216 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
2217
2218         * build-aux/vc-list-files: Add support for bzr.
2219
2220 2008-05-03  Jim Meyering  <meyering@redhat.com>
2221
2222         avoid failed assertion with tight malloc
2223         * tests/test-getndelim2.c: Correct an off-by-one assertion.
2224
2225 2008-05-03  Simon Josefsson  <simon@josefsson.org>
2226
2227         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
2228         are needed from arpa/inet.h.
2229         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
2230         Reported by Bruno Haible.
2231
2232 2008-05-02  Jim Meyering  <meyering@redhat.com>
2233
2234         avoid compilation error on FreeBSD 6
2235         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
2236
2237 2008-05-01  Jim Meyering  <meyering@redhat.com>
2238
2239         useless-if-before-free: correct --help's exit status description
2240         * build-aux/useless-if-before-free (usage): Like grep, exit 0
2241         for one or more matches, etc.  Reported by Bruno Haible.
2242
2243         vc-list-files: make the stand-alone gnulib test work
2244         * modules/vc-list-files-tests (configure.ac):
2245         Define and AC_SUBST abs_aux_dir.
2246         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
2247         $(abs_top_srcdir) to each script and having each of them
2248         duplicate the work of setting PATH, set PATH here, using
2249         the new variable, abs_aux_dir instead.
2250         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
2251         * tests/test-vc-list-files-git.sh: Likewise.
2252         Reported by Bruno Haible.
2253
2254 2008-05-01  Bruno Haible  <bruno@clisp.org>
2255
2256         * lib/getndelim2.c (getndelim2): Fix newsize computation during
2257         reallocation. Rename 'done' to 'found_delimiter'.
2258
2259 2008-05-01  Jim Meyering  <meyering@redhat.com>
2260
2261         vc-list-files: accommodate /bin/sh like the one from Solaris 10
2262         * build-aux/vc-list-files: Use `...`, not $(...).
2263
2264 2008-04-30  Jim Meyering  <meyering@redhat.com>
2265
2266         add tests for vc-list-files
2267         * modules/vc-list-files-tests: New module.
2268         * tests/test-vc-list-files-cvs.sh: New file.
2269         * tests/test-vc-list-files-git.sh: New file.
2270
2271         avoid a warning from gcc
2272         * lib/getndelim2.c (IF_LINT): Define.
2273         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
2274
2275         vc-list-files: work properly with build-aux/cvsu, too
2276         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
2277         to all cvs-based clauses.
2278
2279         vc-list-files: work properly in the CVS+awk case, too
2280         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
2281
2282         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
2283         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
2284         take more than one file argument, so .  Add quotes, just in case $dir
2285         ever contains a shell meta-character.  Prompted by Soren Hansen in
2286         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
2287
2288 2008-04-29  Eric Blake  <ebb9@byu.net>
2289
2290         Optimize getndelim2 to use block operations when possible.
2291         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
2292         freadseek, and memchr2.
2293         * lib/getndelim2.c (getndelim2): Use them for block reads.
2294
2295 2008-04-29  Bruno Haible  <bruno@clisp.org>
2296
2297         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
2298         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
2299         * modules/inet_ntop (Depends-on): Add extensions.
2300         * modules/inet_pton (Depends-on): Likewise.
2301         Reported by Simon Josefsson.
2302
2303 2008-04-29  Jim Meyering  <meyering@redhat.com>
2304
2305         When the is more than one match in a block, match all of them.
2306         * build-aux/useless-if-before-free: Iterate through each block
2307         until there are no more matches.
2308
2309         Fix broken useless-if-before-free script.
2310         * build-aux/useless-if-before-free: Fix typo: missing "?" after
2311         the expression to match cast of argument to free-like function.
2312
2313 2008-04-29  Eric Blake  <ebb9@byu.net>
2314
2315         Use new header.
2316         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
2317
2318 2008-04-29  Jim Meyering  <meyering@redhat.com>
2319
2320         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
2321         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
2322         by gnulib to exist and to declare e.g., inet_ntop.
2323         Don't include "inet_ntop.h", now removed.
2324
2325         * m4/arpa_inet_h.m4: Remove trailing blanks.
2326
2327 2008-04-29  Eric Blake  <ebb9@byu.net>
2328
2329         Silence valgrind on safe reads beyond potential array bounds.
2330         * lib/rawmemchr.valgrind: New file.
2331         * lib/strchrnul.valgrind: Likewise.
2332         * modules/rawmemchr (Files): Distribute new file.
2333         * modules/strchrnul (Files): Likewise.
2334         Suggested by Bruno Haible.
2335
2336 2008-04-29  Bruno Haible  <bruno@clisp.org>
2337
2338         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
2339         (inet_ntop, inet_pton): Change portability warning's wording.
2340         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
2341         Invoke gl_CHECK_NEXT_HEADERS.
2342         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
2343         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
2344         set ARPA_INET_H.
2345         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
2346         * modules/arpa_inet (Description): No longer only for systems that
2347         lack it.
2348         (Depends-on): Add include_next.
2349         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
2350         HAVE_ARPA_INET_H.
2351
2352 2008-04-29  Jim Meyering  <meyering@redhat.com>
2353
2354         * modules/mkdir (License): Re-license as LGPLv2+.
2355
2356 2008-04-29  Bruno Haible  <bruno@clisp.org>
2357
2358         * modules/rawmemchr (Maintainer): Set to Eric.
2359         * modules/strchrnul (Maintainer): Likewise.
2360
2361 2008-04-29  Simon Josefsson  <simon@josefsson.org>
2362
2363         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
2364         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
2365
2366         * modules/arpa_inet (arpa/inet.h): Use them.
2367
2368 2008-04-28  Eric Blake  <ebb9@byu.net>
2369
2370         Test getndelim2.
2371         * modules/getndelim2-tests: New file.
2372         * tests/test-getndelim2.c: Likewise.
2373         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
2374         stream.
2375         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
2376
2377         * MODULES.html.sh: Document new module.
2378
2379 2008-04-20  Bruno Haible  <bruno@clisp.org>
2380
2381         * lib/c-stack.c (die): Use raise.
2382         * modules/c-stack (Depends-on): Add raise.
2383
2384 2008-04-28  Bruno Haible  <bruno@clisp.org>
2385
2386         Expect rpmatch to be declared.
2387         * lib/yesno.c (rpmatch): Remove declaration.
2388
2389         Declare rpmatch.
2390         * lib/stdlib.in.h (rpmatch): New declaration.
2391         * lib/rpmatch.c: Include <stdlib.h> first.
2392         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
2393         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
2394         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
2395         HAVE_RPMATCH.
2396         * modules/rpmatch (Depends-on): Add stdlib, extensions.
2397         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
2398         (Include): Set to <stdlib.h>.
2399         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
2400         HAVE_RPMATCH.
2401         * NEWS: Document the change.
2402
2403 2008-04-28  Bruno Haible  <bruno@clisp.org>
2404
2405         Change rpmatch to use nl_langinfo when appropriate.
2406         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
2407         (N_): New macro.
2408         (localized_pattern): New function/macro.
2409         (try): Remove match, nomatch arguments. Copy the pattern into safe
2410         memory before caching it.
2411         (rpmatch): Use localized_pattern. Add translator comments.
2412         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
2413         Suggested by Eric Blake.
2414         * modules/rpmatch (Depends-on): Add stdbool.
2415
2416 2008-04-28  Eric Blake  <ebb9@byu.net>
2417
2418         Add rawmemchr module, matching glibc.
2419         * modules/string (Makefile.am): New indicator.
2420         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
2421         * lib/string.in.h (rawmemchr): Declare when appropriate.
2422         * modules/rawmemchr: New file.
2423         * m4/rawmemchr.m4: Likewise.
2424         * lib/rawmemchr.c: Likewise.
2425         * modules/rawmemchr-tests: Likewise.
2426         * tests/test-rawmemchr.c: Likewise.
2427         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
2428         module.
2429         * modules/strchrnul (Depends-on): Add rawmemchr.
2430         * lib/strchrnul.c (strchrnul): Optimize a corner case.
2431
2432         Whitespace cleanup.
2433         * tests/test-strchrnul.c: Reindent.
2434         * lib/strchrnul.c: Likewise.
2435
2436         Optimize and test strchrnul.
2437         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
2438         * modules/strchrnul-tests: New file.
2439         * tests/test-strchrnul.c: Likewise.
2440
2441         Remove intprops dependency.
2442         * modules/memchr (Depends-on): Remove intprops.
2443         * modules/memrchr (Depends-on): Likewise.
2444         * modules/memchr2 (Depends-on): Likewise.
2445         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
2446         * lib/memrchr.c (__memrchr): Likewise.
2447         * lib/memrchr2.c (memchr2): Likewise.
2448         Reported by Simon Josefsson.
2449
2450 2008-04-28  Simon Josefsson  <simon@josefsson.org>
2451
2452         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
2453         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2454
2455 2008-04-28  Simon Josefsson  <simon@josefsson.org>
2456
2457         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
2458
2459         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
2460
2461         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
2462
2463         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
2464         declarations.
2465         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
2466
2467         * m4/inet_pton.m4: Don't check for header files.
2468
2469         * m4/inet_ntop.m4: Don't check for header files.
2470
2471 2008-04-28  Simon Josefsson  <simon@josefsson.org>
2472
2473         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
2474         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
2475         trigger for cygwin).
2476         Reported by Bruno Haible  <bruno@clisp.org>.
2477
2478 2008-04-28  Bruno Haible  <bruno@clisp.org>
2479
2480         * doc/posix-functions/strdup.texi: Mention mingw problem.
2481
2482 2008-04-27  Bruno Haible  <bruno@clisp.org>
2483
2484         * modules/stat-time-tests (Depends-on): Add sleep.
2485         * tests/test-stat-time.c (force_unlink): New function.
2486         (cleanup): Use it.
2487         (test_mtime): Remove the ctime related tests.
2488         (test_ctime): New function, containing the ctime related tests.
2489         (main): Call test_ctime, except on native Windows platforms.
2490
2491 2008-04-27  Bruno Haible  <bruno@clisp.org>
2492
2493         * lib/rpmatch.c (rpmatch): Add some comments.
2494         Reported by James Youngman <jay@gnu.org>.
2495
2496 2008-04-27  Bruno Haible  <bruno@clisp.org>
2497
2498         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
2499         quiet NaNs.
2500
2501 2008-04-27  Bruno Haible  <bruno@clisp.org>
2502
2503         Make test-yesno.sh work on mingw.
2504         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
2505         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
2506         (main): Set stdin to binary mode.
2507         * modules/yesno-tests (Depends-on): Add binary-io.
2508
2509 2008-04-27  Bruno Haible  <bruno@clisp.org>
2510
2511         Fix 'isfinite' on x86, x86_64, ia64 platforms.
2512         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
2513         argument that lie outside the IEEE 854 domain.
2514         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
2515         (gl_ISFINITE): Use it.
2516         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
2517
2518 2008-04-27  Bruno Haible  <bruno@clisp.org>
2519
2520         Allow local renaming in config.h.
2521         * lib/memrchr.c (memrchr): Don't undefine outside libc.
2522
2523 2008-04-27  Bruno Haible  <bruno@clisp.org>
2524
2525         * lib/memchr.c (__memchr): Change type of 'i'.
2526         * lib/memchr2.c (memchr2): Likewise.
2527
2528 2008-04-26  Eric Blake  <ebb9@byu.net>
2529         and Bruno Haible  <bruno@clisp.org>
2530
2531         Optimize and test memrchr.
2532         * modules/memrchr (Depends-on): Add intprops.
2533         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
2534         * modules/memrchr-tests: New file.
2535         * tests/test-memrchr.c: New file.
2536
2537 2008-04-26  Bruno Haible  <bruno@clisp.org>
2538
2539         Add tentative support for DragonFly BSD.
2540         * lib/stdio-impl.h: Add macros for DragonFly BSD.
2541         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
2542         fp.
2543         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
2544         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
2545         * lib/fpurge.c (fpurge): Likewise.
2546         * lib/freadable.c (freaadable): Likewise.
2547         * lib/freadahead.c (freadahead): Likewise.
2548         * lib/freading.c (freading): Likewise.
2549         * lib/freadptr.c (freadptr): Likewise.
2550         * lib/freadseek.c (freadptrinc): Likewise.
2551         * lib/fseeko.c (fseeko): Likewise.
2552         * lib/fseterr.c (fseterr): Likewise.
2553         * lib/fwritable.c (fwritable): Likewise.
2554         * lib/fwriting.c (fwriting): Likewise.
2555
2556 2008-04-26  Bruno Haible  <bruno@clisp.org>
2557
2558         * lib/stdio-impl.h: New file.
2559         * lib/fbufmode.c: Include stdio-impl.h.
2560         (fbufmode): Use fp_, remove redundant #defines.
2561         * lib/fflush.c: Include stdio-impl.h.
2562         (clear_ungetc_buffer): Remove redundant #defines.
2563         * lib/fpurge.c: Include stdio-impl.h.
2564         (fpurge): Remove redundant #defines.
2565         * lib/freadable.c: Include stdio-impl.h.
2566         (freadable): Remove redundant #defines.
2567         * lib/freadahead.c: Include stdio-impl.h.
2568         (freadahead): Remove redundant #defines.
2569         * lib/freading.c: Include stdio-impl.h.
2570         (freading): Remove redundant #defines.
2571         * lib/freadptr.c: Include stdio-impl.h.
2572         (freadptr): Remove redundant #defines.
2573         * lib/freadseek.c: Include stdio-impl.h.
2574         (freadptrinc): Remove redundant #defines.
2575         * lib/fseeko.c: Include stdio-impl.h.
2576         (rpl_fseeko): Remove redundant #defines.
2577         * lib/fseterr.c: Include stdio-impl.h.
2578         (fseterr): Remove redundant #defines.
2579         * lib/fwritable.c: Include stdio-impl.h.
2580         (fwritable: Remove redundant #defines.
2581         * lib/fwriting.c: Include stdio-impl.h.
2582         (fwriting): Remove redundant #defines.
2583         * modules/fbufmode (Files): Add lib/stdio-impl.h.
2584         * modules/fflush (Files): Likewise.
2585         * modules/fpurge (Files): Likewise.
2586         * modules/freadable (Files): Likewise.
2587         * modules/freadahead (Files): Likewise.
2588         * modules/freading (Files): Likewise.
2589         * modules/freadptr (Files): Likewise.
2590         * modules/freadseek (Files): Likewise.
2591         * modules/fseeko (Files): Likewise.
2592         * modules/fseterr (Files): Likewise.
2593         * modules/fwritable (Files): Likewise.
2594         * modules/fwriting (Files): Likewise.
2595
2596 2008-04-26  Bruno Haible  <bruno@clisp.org>
2597
2598         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
2599         restore_seek_optimization, update_fpos_cache): New functions, extracted
2600         from rpl_fflush.
2601         (rpl_fflush): Use them.
2602         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
2603         (gl_REPLACE_FFLUSH): Use it.
2604
2605 2008-04-26  Bruno Haible  <bruno@clisp.org>
2606
2607         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
2608         on Solaris.
2609         * tests/test-xstrtoimax.sh: Likewise.
2610         * tests/test-xstrtoumax.sh: Likewise.
2611         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2612
2613 2008-04-26  Bruno Haible  <bruno@clisp.org>
2614
2615         * modules/memchr-tests: New file.
2616         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
2617
2618 2008-04-26  Eric Blake  <ebb9@byu.net>
2619             Bruno Haible  <bruno@clisp.org>
2620
2621         * lib/memchr.c: Include intprops.h.
2622         (__memchr): Optimize parallel detection of matching bytes. Rename local
2623         variables. Add explanatory comments.
2624
2625 2008-04-26  Bruno Haible  <bruno@clisp.org>
2626
2627         Fix module 'memchr', broken since 2000-10-28.
2628         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
2629
2630 2008-04-26  Bruno Haible  <bruno@clisp.org>
2631
2632         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
2633         comments.
2634
2635 2008-04-25  Eric Blake  <ebb9@byu.net>
2636
2637         Use native fstatat on cygwin 1.7.0.
2638         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
2639         first.
2640
2641 2008-04-23  Eric Blake  <ebb9@byu.net>
2642
2643         Improve memchr2 performance.
2644         * lib/memchr2.c (memchr2): Further optimize parallel detection of
2645         NUL bytes.
2646         * modules/memchr2 (Depends-on): Use intprops.h.
2647
2648 2008-04-23  Simon Josefsson  <simon@josefsson.org>
2649
2650         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
2651         an inline function instead of a CPP macro.  Patch by Ben Pfaff
2652         <blp@cs.stanford.edu>.
2653
2654 2008-04-23  Simon Josefsson  <simon@josefsson.org>
2655
2656         * lib/arpa_inet.in.h: New file.
2657
2658         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
2659         (Makefile.am): Sed in substitute header file.
2660
2661         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
2662         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
2663
2664         * modules/inet_ntop (configure.ac): Use
2665         gl_ARPA_INET_MODULE_INDICATOR.
2666
2667         * modules/inet_pton (configure.ac): Use
2668         gl_ARPA_INET_MODULE_INDICATOR.
2669
2670 2008-04-22  Jim Meyering  <meyering@redhat.com>
2671
2672         * modules/verify (License): Re-license as LGPLv2+.
2673
2674 2008-04-22  Simon Josefsson  <simon@josefsson.org>
2675
2676         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
2677         parameter to void* as per POSIX standard (MinGW uses char*).
2678
2679 2008-04-21  Bruno Haible  <bruno@clisp.org>
2680
2681         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
2682         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
2683         Define to replacements if REPLACE_ISWCNTRL is 1.
2684         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
2685         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
2686         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
2687         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
2688         what it fixes.
2689         * doc/posix-functions/iswalpha.texi: Likewise.
2690         * doc/posix-functions/iswblank.texi: Likewise.
2691         * doc/posix-functions/iswcntrl.texi: Likewise.
2692         * doc/posix-functions/iswdigit.texi: Likewise.
2693         * doc/posix-functions/iswgraph.texi: Likewise.
2694         * doc/posix-functions/iswlower.texi: Likewise.
2695         * doc/posix-functions/iswprint.texi: Likewise.
2696         * doc/posix-functions/iswpunct.texi: Likewise.
2697         * doc/posix-functions/iswspace.texi: Likewise.
2698         * doc/posix-functions/iswupper.texi: Likewise.
2699         * doc/posix-functions/iswxdigit.texi: Likewise.
2700         Reported by Alain Guibert.
2701
2702 2008-04-21  Bruno Haible  <bruno@clisp.org>
2703
2704         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
2705         Patch by Alain Guibert.
2706
2707 2008-04-21  Bruno Haible  <bruno@clisp.org>
2708
2709         Fix test failures on mingw.
2710         * tests/test-xstrtol.c (print_no_progname): New function.
2711         (main): Install it in error_print_progname hook.
2712         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
2713         * tests/test-xstrtoimax.sh: Likewise.
2714         * tests/test-xstrtoumax.sh: Likewise.
2715
2716 2008-04-21  Bruno Haible  <bruno@clisp.org>
2717
2718         Fix test failure on mingw.
2719         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
2720
2721 2008-04-21  Bruno Haible  <bruno@clisp.org>
2722
2723         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
2724         Actually assign a value.
2725
2726 2008-04-20  Bruno Haible  <bruno@clisp.org>
2727
2728         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
2729         take 2.
2730         * lib/canonicalize.c (canonicalize_file_name): Elide if the
2731         'canonicalize-lgpl' module is also used.
2732         * lib/canonicalize-lgpl.c: Undo last change.
2733         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
2734
2735 2008-04-20  Bruno Haible  <bruno@clisp.org>
2736
2737         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
2738         config.h. Provide _mkdir based fallback for mingw.
2739         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
2740         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
2741         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
2742         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
2743         rather than defining mkdir in config.h.
2744         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
2745         (gl_SYS_STAT_H_DEFAULTS): New macro.
2746         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
2747         HAVE_IO_H any more.
2748         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
2749         HAVE_DECL_MKDIR and HAVE_IO_H.
2750
2751 2008-04-20  Bruno Haible  <bruno@clisp.org>
2752
2753         * lib/isapipe.c: Port to native Windows platforms.
2754
2755 2008-04-20  Bruno Haible  <bruno@clisp.org>
2756
2757         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
2758
2759 2008-04-21  Eric Blake  <ebb9@byu.net>
2760
2761         Work around preprocessors that don't handle UINTMAX_MAX.
2762         * lib/memchr2.c (memchr2): Avoid embedded #if.
2763         Reported by Alain Guibert, fix suggested by Bruno Haible.
2764
2765 2008-04-21  Simon Josefsson  <simon@josefsson.org>
2766
2767         * doc/posix-functions/strftime.texi (strftime): Explain better
2768         Windows incompatibility.  Suggested by Micah Cowan
2769         <micah@cowan.name>.
2770
2771 2008-04-20  Bruno Haible  <bruno@clisp.org>
2772
2773         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
2774         unistr/u8-mblen.
2775
2776 2008-04-20  Bruno Haible  <bruno@clisp.org>
2777
2778         Fix test failure on platforms with non-GNU iconv.
2779         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
2780         (U_TO_U8): Use it, rather than u16_to_u8.
2781         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
2782         units at the end of the input string.
2783         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
2784
2785 2008-04-20  Bruno Haible  <bruno@clisp.org>
2786
2787         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
2788         when the resulting length is 0.
2789         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
2790
2791 2008-04-20  Bruno Haible  <bruno@clisp.org>
2792
2793         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
2794         works.
2795         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
2796
2797 2008-04-20  Bruno Haible  <bruno@clisp.org>
2798
2799         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
2800         * modules/tsearch-tests (configure.ac): Test for initstate function.
2801
2802 2008-04-20  Bruno Haible  <bruno@clisp.org>
2803
2804         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
2805         for nlink_t if missing.
2806         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
2807
2808 2008-04-19  Bruno Haible  <bruno@clisp.org>
2809
2810         Work around snprintf bug on Linux libc5.
2811         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
2812         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
2813         gl_SNPRINTF_SIZE1.
2814         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
2815         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
2816         that test failed.
2817         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
2818         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
2819         * modules/snprintf (Files): Add m4/printf.m4.
2820         * modules/vsnprintf (Files): Likewise.
2821         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
2822         * doc/posix-functions/vsnprintf.texi: Likewise.
2823
2824 2008-04-19  Bruno Haible  <bruno@clisp.org>
2825
2826         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
2827         from 0.0058 to less than 10^-7.
2828
2829 2008-04-19  Bruno Haible  <bruno@clisp.org>
2830
2831         Fix rounding when a precision is given.
2832         * lib/vasnprintf.c (is_borderline): New function.
2833         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
2834         9...9x.
2835         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
2836         %e, %g.
2837         * tests/test-vasprintf-posix.c (test_function): Likewise.
2838         * tests/test-snprintf-posix.h (test_function): Likewise.
2839         * tests/test-sprintf-posix.h (test_function): Likewise.
2840         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
2841         * tests/test-printf-posix.h (test_function): Likewise.
2842         * tests/test-printf-posix.output: Update.
2843         Reported by John Darrington <john@darrington.wattle.id.au> via
2844         Ben Pfaff <blp@cs.stanford.edu>.
2845
2846 2008-04-18  Simon Josefsson  <simon@josefsson.org>
2847
2848         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
2849         Suggested by Bruno Haible <bruno@clisp.org>.
2850
2851 2008-04-17  Bruno Haible  <bruno@clisp.org>
2852
2853         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
2854         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
2855         implementation.
2856         Patch by Bruce Merry <bmerry@gmail.com>.
2857
2858 2008-04-17  Simon Josefsson  <simon@josefsson.org>
2859
2860         * doc/posix-functions/strftime.texi (strftime): Mention that %e
2861         doesn't work under Windows.
2862
2863 2008-04-16  Bruno Haible  <bruno@clisp.org>
2864
2865         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
2866         New macros.
2867         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
2868         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
2869         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
2870         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
2871         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
2872         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
2873         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
2874         macros.
2875         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
2876         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
2877         Northern Sotho, Uighur.
2878
2879 2008-04-16  Bruno Haible  <bruno@clisp.org>
2880
2881         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
2882         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
2883         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
2884         Reported by Daniel Bergström <daniel@octocode.com>.
2885
2886 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
2887             Bruno Haible  <bruno@clisp.org>
2888
2889         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
2890         function.
2891         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
2892         New functions, mostly extracted from gl_locale_name_default.
2893         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
2894
2895 2008-04-16  Eric Blake  <ebb9@byu.net>
2896
2897         Adjust strtod detection to catch glibc 2.7 bug.
2898         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
2899         Reported by John Gatewood Ham.
2900
2901 2008-04-16  Bruno Haible  <bruno@clisp.org>
2902
2903         Add tentative support for Linux libc5.
2904         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
2905         * lib/fpurge.c (fpurge): Likewise.
2906         * lib/freadable.c (freadable): Likewise.
2907         * lib/freadahead.c (freadahead): Likewise.
2908         * lib/freading.c (freading): Likewise.
2909         * lib/freadptr.c (freadptr): Likewise.
2910         * lib/freadseek.c (freadptrinc): Likewise.
2911         * lib/fseeko.c (rpl_fseeko): Likewise.
2912         * lib/fseterr.c (fseterr): Likewise.
2913         * lib/fwritable.c (fwritable): Likewise.
2914         * lib/fwriting.c (fwriting): Likewise.
2915         Reported by Alain Guibert <alguibert+bts@free.fr>.
2916
2917 2008-04-15  Bruno Haible  <bruno@clisp.org>
2918
2919         * modules/mathl (configure.ac): Define module indicator.
2920
2921 2008-04-15  Bruno Haible  <bruno@clisp.org>
2922
2923         * lib/logl.c (logl): Remove unused variables.
2924
2925 2008-04-15  Bruno Haible  <bruno@clisp.org>
2926
2927         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
2928         fails.
2929
2930 2008-04-15  Bruno Haible  <bruno@clisp.org>
2931
2932         * lib/trim.c (trim2): Fix argument of isspace() macro.
2933
2934 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
2935
2936         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
2937         to 0.
2938         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
2939
2940 2008-04-14  Bruno Haible  <bruno@clisp.org>
2941
2942         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
2943         AC_LANG_PROGRAM argument.
2944         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
2945         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
2946         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
2947         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
2948         * m4/math_h.m4 (gl_MATH_H): Likewise.
2949         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
2950         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
2951         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
2952         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
2953         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
2954         * m4/regex.m4 (gl_REGEX): Likewise.
2955         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
2956         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
2957         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
2958         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
2959         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
2960         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
2961         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
2962         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
2963
2964 2008-04-14  Jim Meyering  <meyering@redhat.com>
2965
2966         test-strtod: fix typos: s/abs/fabs/
2967         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
2968
2969 2008-04-13  Bruno Haible  <bruno@clisp.org>
2970
2971         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
2972         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
2973         module is also used and while not building the reloc-wrapper.
2974
2975 2008-04-13  Bruno Haible  <bruno@clisp.org>
2976
2977         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
2978
2979 2008-04-13  Bruno Haible  <bruno@clisp.org>
2980
2981         Fix AIX compilation failure introduced on 2008-04-02.
2982         * tests/test-frexp.c (exp): Undefine before redefining.
2983         * tests/test-frexpl.c (exp): Likewise.
2984
2985 2008-04-13  Bruno Haible  <bruno@clisp.org>
2986
2987         Work around a HP-UX stdio bug.
2988         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
2989         * tests/test-ftello.c (main): Likewise.
2990         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
2991         * doc/posix-functions/ftello.texi: Likewise.
2992
2993 2008-04-13  Bruno Haible  <bruno@clisp.org>
2994
2995         Make test-signbit pass on HP-UX/hppa.
2996         * tests/test-signbit.c (minus_zerol): New variable.
2997         (test_signbitl): Use it.
2998
2999 2008-04-13  Bruno Haible  <bruno@clisp.org>
3000
3001         Make truncl work on OSF/1 4.0.
3002         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
3003         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
3004         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
3005         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
3006         HAVE_DECL_TRUNCL.
3007         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
3008         HAVE_DECL_TRUNCL.
3009         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
3010
3011 2008-04-13  Bruno Haible  <bruno@clisp.org>
3012
3013         * lib/unictype.h: Remove trailing comma from enumeration definitions.
3014
3015 2008-04-13  Bruno Haible  <bruno@clisp.org>
3016
3017         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
3018         expression, so as to avoid HP-UX 11 cc compiler bug.
3019
3020 2008-04-13  Bruno Haible  <bruno@clisp.org>
3021
3022         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
3023
3024 2008-04-13  Bruno Haible  <bruno@clisp.org>
3025
3026         * lib/git-merge-changelog.c: Remove empty declaration outside of
3027         functions.
3028
3029 2008-04-13  Bruno Haible  <bruno@clisp.org>
3030
3031         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
3032
3033 2008-04-13  Bruno Haible  <bruno@clisp.org>
3034
3035         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
3036         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
3037         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
3038         also if it exists but lacks definitions of the SHUT_* macros.
3039         * modules/sys_socket (Description): Update.
3040         Reported by Elbert Pol <e.pol@chello.nl>.
3041
3042 2008-04-13  Bruno Haible  <bruno@clisp.org>
3043
3044         * lib/localcharset.c (OS2): Don't redefine if already defined.
3045         Reported by Elbert Pol <e.pol@chello.nl>.
3046
3047 2008-04-13  Bruno Haible  <bruno@clisp.org>
3048
3049         * lib/binary-io.h [__EMX__]: Include <io.h>.
3050         Reported by Elbert Pol <e.pol@chello.nl>.
3051
3052 2008-04-12  Bruno Haible  <bruno@clisp.org>
3053
3054         * lib/fpucw.h: Enable the definitions also for x86_64.
3055         Needed for NetBSD/x86_64.
3056         Reported by Thomas Klausner <tk@giga.or.at>.
3057
3058 2008-04-12  Bruno Haible  <bruno@clisp.org>
3059
3060         * tests/test-strtod.c: Include isnand.h.
3061         (main): Use isnand instead of isnan.
3062         Reported by Jim Meyering.
3063
3064 2008-04-12  Bruno Haible  <bruno@clisp.org>
3065
3066         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
3067         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3068
3069 2008-04-12  Jim Meyering  <meyering@redhat.com>
3070
3071         * m4/math_h.m4 (gl_MATH_H): Fix typos.
3072
3073 2008-04-12  Bruno Haible  <bruno@clisp.org>
3074
3075         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
3076         Reported by Elbert Pol <e.pol@chello.nl>.
3077
3078 2008-04-12  Eric Blake  <ebb9@byu.net>
3079
3080         Work around Solaris 10 math.h bug.
3081         * m4/math_h.m4 (gl_MATH_H): Check for bug.
3082         (gl_MATH_H_DEFAULTS): Set up default.
3083         * modules/math (Makefile.am): Replace new indicators.
3084         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
3085         * tests/test-math.c (main): Test this.
3086         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
3087         * doc/posix-headers/math.texi (math.h): Mention bug.
3088         Reported by Nelson H. F. Beebe and Jim Meyering.
3089
3090 2008-04-11  Bruno Haible  <bruno@clisp.org>
3091
3092         Adapt to future versions of Apple GCC.
3093         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
3094         Reported by Peter O'Gorman <peter@pogma.com>.
3095
3096 2008-04-11  Bruno Haible  <bruno@clisp.org>
3097
3098         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
3099
3100 2008-04-11  Bruno Haible  <bruno@clisp.org>
3101
3102         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
3103
3104         * modules/getaddrinfo-tests (Makefile.am): Define
3105         test_getaddrinfo_LDADD.
3106
3107 2008-04-11  Bruno Haible  <bruno@clisp.org>
3108
3109         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
3110         (init): Fix syntax error.
3111         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
3112         is declared.
3113
3114 2008-04-11  Bruno Haible  <bruno@clisp.org>
3115
3116         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
3117         * modules/glob (Depends-on): Add stdbool.
3118
3119 2008-04-11  Bruno Haible  <bruno@clisp.org>
3120
3121         * lib/trim.c: Include <string.h>.
3122
3123 2008-04-11  Eric Blake  <ebb9@byu.net>
3124
3125         Avoid compile failure on OS/2.
3126         * lib/regex_internal.h (internal_function): Disable optimization
3127         on OS/2 (__EMX__), where it caused compiler error.
3128         Reported by Elbert Pol.
3129
3130 2008-04-11  Bruno Haible  <bruno@clisp.org>
3131
3132         Flush the standard error stream before aborting. Needed on mingw.
3133         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
3134         * tests/test-array_list.c (ASSERT): Likewise.
3135         * tests/test-array_oset.c (ASSERT): Likewise.
3136         * tests/test-avltree_list.c (ASSERT): Likewise.
3137         * tests/test-avltree_oset.c (ASSERT): Likewise.
3138         * tests/test-avltreehash_list.c (ASSERT): Likewise.
3139         * tests/test-binary-io.c (ASSERT): Likewise.
3140         * tests/test-byteswap.c (ASSERT): Likewise.
3141         * tests/test-c-ctype.c (ASSERT): Likewise.
3142         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
3143         * tests/test-c-strcasestr.c (ASSERT): Likewise.
3144         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
3145         * tests/test-c-strstr.c (ASSERT): Likewise.
3146         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
3147         * tests/test-canonicalize.c (ASSERT): Likewise.
3148         * tests/test-carray_list.c (ASSERT): Likewise.
3149         * tests/test-ceilf1.c (ASSERT): Likewise.
3150         * tests/test-ceilf2.c (ASSERT): Likewise.
3151         * tests/test-ceill.c (ASSERT): Likewise.
3152         * tests/test-count-one-bits.c (ASSERT): Likewise.
3153         * tests/test-fbufmode.c (ASSERT): Likewise.
3154         * tests/test-fflush2.c (ASSERT): Likewise.
3155         * tests/test-floorf1.c (ASSERT): Likewise.
3156         * tests/test-floorf2.c (ASSERT): Likewise.
3157         * tests/test-floorl.c (ASSERT): Likewise.
3158         * tests/test-fopen.c (ASSERT): Likewise.
3159         * tests/test-fpending.c (ASSERT): Likewise.
3160         * tests/test-fprintf-posix.c (ASSERT): Likewise.
3161         * tests/test-fpurge.c (ASSERT): Likewise.
3162         * tests/test-freadable.c (ASSERT): Likewise.
3163         * tests/test-freadahead.c (ASSERT): Likewise.
3164         * tests/test-freading.c (ASSERT): Likewise.
3165         * tests/test-freadptr.c (ASSERT): Likewise.
3166         * tests/test-freadptr2.c (ASSERT): Likewise.
3167         * tests/test-freadseek.c (ASSERT): Likewise.
3168         * tests/test-freopen.c (ASSERT): Likewise.
3169         * tests/test-frexp.c (ASSERT): Likewise.
3170         * tests/test-frexpl.c (ASSERT): Likewise.
3171         * tests/test-fseek.c (ASSERT): Likewise.
3172         * tests/test-fseeko.c (ASSERT): Likewise.
3173         * tests/test-fstrcmp.c (ASSERT): Likewise.
3174         * tests/test-ftell.c (ASSERT): Likewise.
3175         * tests/test-ftello.c (ASSERT): Likewise.
3176         * tests/test-func.c (ASSERT): Likewise.
3177         * tests/test-fwritable.c (ASSERT): Likewise.
3178         * tests/test-fwriting.c (ASSERT): Likewise.
3179         * tests/test-getdelim.c (ASSERT): Likewise.
3180         * tests/test-getline.c (ASSERT): Likewise.
3181         * tests/test-i-ring.c (ASSERT): Likewise.
3182         * tests/test-iconv-utf.c (ASSERT): Likewise.
3183         * tests/test-iconv.c (ASSERT): Likewise.
3184         * tests/test-isfinite.c (ASSERT): Likewise.
3185         * tests/test-isnand.c (ASSERT): Likewise.
3186         * tests/test-isnanf.c (ASSERT): Likewise.
3187         * tests/test-isnanl.h (ASSERT): Likewise.
3188         * tests/test-ldexpl.c (ASSERT): Likewise.
3189         * tests/test-linked_list.c (ASSERT): Likewise.
3190         * tests/test-linkedhash_list.c (ASSERT): Likewise.
3191         * tests/test-localename.c (ASSERT): Likewise.
3192         * tests/test-lseek.c (ASSERT): Likewise.
3193         * tests/test-mbscasecmp.c (ASSERT): Likewise.
3194         * tests/test-mbscasestr1.c (ASSERT): Likewise.
3195         * tests/test-mbscasestr2.c (ASSERT): Likewise.
3196         * tests/test-mbscasestr3.c (ASSERT): Likewise.
3197         * tests/test-mbscasestr4.c (ASSERT): Likewise.
3198         * tests/test-mbschr.c (ASSERT): Likewise.
3199         * tests/test-mbscspn.c (ASSERT): Likewise.
3200         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
3201         * tests/test-mbspbrk.c (ASSERT): Likewise.
3202         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
3203         * tests/test-mbsrchr.c (ASSERT): Likewise.
3204         * tests/test-mbsspn.c (ASSERT): Likewise.
3205         * tests/test-mbsstr1.c (ASSERT): Likewise.
3206         * tests/test-mbsstr2.c (ASSERT): Likewise.
3207         * tests/test-mbsstr3.c (ASSERT): Likewise.
3208         * tests/test-memchr2.c (ASSERT): Likewise.
3209         * tests/test-memmem.c (ASSERT): Likewise.
3210         * tests/test-open.c (ASSERT): Likewise.
3211         * tests/test-printf-frexp.c (ASSERT): Likewise.
3212         * tests/test-printf-frexpl.c (ASSERT): Likewise.
3213         * tests/test-printf-posix.c (ASSERT): Likewise.
3214         * tests/test-quotearg.c (ASSERT): Likewise.
3215         * tests/test-rbtree_list.c (ASSERT): Likewise.
3216         * tests/test-rbtree_oset.c (ASSERT): Likewise.
3217         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
3218         * tests/test-round1.c (ASSERT): Likewise.
3219         * tests/test-roundf1.c (ASSERT): Likewise.
3220         * tests/test-roundl.c (ASSERT): Likewise.
3221         * tests/test-signbit.c (ASSERT): Likewise.
3222         * tests/test-sleep.c (ASSERT): Likewise.
3223         * tests/test-snprintf-posix.c (ASSERT): Likewise.
3224         * tests/test-snprintf.c (ASSERT): Likewise.
3225         * tests/test-sprintf-posix.c (ASSERT): Likewise.
3226         * tests/test-stat-time.c (ASSERT): Likewise.
3227         * tests/test-strcasestr.c (ASSERT): Likewise.
3228         * tests/test-strerror.c (ASSERT): Likewise.
3229         * tests/test-striconv.c (ASSERT): Likewise.
3230         * tests/test-striconveh.c (ASSERT): Likewise.
3231         * tests/test-striconveha.c (ASSERT): Likewise.
3232         * tests/test-strsignal.c (ASSERT): Likewise.
3233         * tests/test-strstr.c (ASSERT): Likewise.
3234         * tests/test-strtod.c (ASSERT): Likewise.
3235         * tests/test-trunc1.c (ASSERT): Likewise.
3236         * tests/test-trunc2.c (ASSERT): Likewise.
3237         * tests/test-truncf1.c (ASSERT): Likewise.
3238         * tests/test-truncf2.c (ASSERT): Likewise.
3239         * tests/test-truncl.c (ASSERT): Likewise.
3240         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
3241         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
3242         * tests/test-vasnprintf.c (ASSERT): Likewise.
3243         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
3244         * tests/test-vasprintf.c (ASSERT): Likewise.
3245         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
3246         * tests/test-vprintf-posix.c (ASSERT): Likewise.
3247         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
3248         * tests/test-vsnprintf.c (ASSERT): Likewise.
3249         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
3250         * tests/test-wcwidth.c (ASSERT): Likewise.
3251         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
3252         * tests/test-xprintf-posix.c (ASSERT): Likewise.
3253         * tests/test-xvasprintf.c (ASSERT): Likewise.
3254         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
3255         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
3256         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
3257         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
3258         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
3259         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
3260         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
3261         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
3262         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
3263         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
3264         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
3265         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
3266         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
3267         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
3268         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
3269         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
3270         * tests/unictype/test-block_list.c (ASSERT): Likewise.
3271         * tests/unictype/test-block_of.c (ASSERT): Likewise.
3272         * tests/unictype/test-block_test.c (ASSERT): Likewise.
3273         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
3274         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
3275         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
3276         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
3277         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
3278         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
3279         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
3280         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
3281         * tests/unictype/test-combining.c (ASSERT): Likewise.
3282         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
3283         * tests/unictype/test-digit.c (ASSERT): Likewise.
3284         * tests/unictype/test-mirror.c (ASSERT): Likewise.
3285         * tests/unictype/test-numeric.c (ASSERT): Likewise.
3286         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
3287         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
3288         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
3289         * tests/unictype/test-scripts.c (ASSERT): Likewise.
3290         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
3291         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
3292         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
3293         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
3294         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
3295         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
3296         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
3297         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
3298         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
3299         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
3300         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
3301         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
3302         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
3303         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
3304         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
3305         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
3306         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
3307         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
3308         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
3309         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
3310         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
3311         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
3312         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
3313         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
3314         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
3315         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
3316         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
3317         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
3318         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
3319         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
3320         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
3321         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
3322         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
3323         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
3324         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
3325         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
3326         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
3327         Reported by Eric Blake.
3328
3329 2008-04-11  Bruno Haible  <bruno@clisp.org>
3330
3331         * lib/wchar.in.h: Tweak comment.
3332
3333 2008-04-11  Bruno Haible  <bruno@clisp.org>
3334
3335         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
3336         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
3337         gl_COMMON.
3338         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
3339
3340 2008-04-11  Bruno Haible  <bruno@clisp.org>
3341
3342         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
3343
3344 2008-04-11  Simon Josefsson  <simon@josefsson.org>
3345
3346         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
3347         of attempting to use non-existing /dev/*random.  Based on patch
3348         from Adam Strzelecki <ono@java.pl> in
3349         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
3350
3351 2008-04-08  Bruno Haible  <bruno@clisp.org>
3352
3353         Add tentative support for emx+gcc.
3354         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
3355         * lib/fpurge.c (fpurge): Likewise.
3356         * lib/freadable.c (freadable): Likewise.
3357         * lib/freadahead.c (freadahead): Likewise.
3358         * lib/freading.c (freading): Likewise.
3359         * lib/freadptr.c (freadptr): Likewise.
3360         * lib/freadseek.c (freadptrinc): Likewise.
3361         * lib/fseeko.c (rpl_fseeko): Likewise.
3362         * lib/fseterr.c (fseterr): Likewise.
3363         * lib/fwritable.c (fwritable): Likewise.
3364         * lib/fwriting.c (fwriting): Likewise.
3365         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
3366
3367 2008-04-09  Eric Blake  <ebb9@byu.net>
3368
3369         Avoid some autoconf warnings.
3370         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
3371         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
3372         * m4/afs.m4 (gl_AFS): Likewise.
3373         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
3374         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
3375         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
3376         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
3377         (gl_INTEGER_TYPE_SUFFIX): Likewise.
3378         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
3379         (AC_CHECK_DECLS_ONCE): Likewise.
3380         Rename file...
3381         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
3382         gnulib-tool requires autoconf 2.59 or better.
3383         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
3384
3385 2008-04-08  Eric Blake  <ebb9@byu.net>
3386
3387         Use 'git describe --match' if present (added in git 1.5.5).
3388         * build-aux/git-version-gen: Limit result to tags that match 'v*'
3389         if possible.
3390
3391 2008-04-08  Bruno Haible  <bruno@clisp.org>
3392
3393         Add tentative support for OpenServer.
3394         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
3395         _ptr, _cnt.
3396         * lib/fpurge.c (fpurge): Likewise.
3397         * lib/freadable.c (freadable): Likewise.
3398         * lib/freadahead.c (freadahead): Likewise.
3399         * lib/freading.c (freading): Likewise.
3400         * lib/freadptr.c (freadptr): Likewise.
3401         * lib/freadseek.c (freadptrinc): Likewise.
3402         * lib/fseeko.c (rpl_fseeko): Likewise.
3403         * lib/fseterr.c (fseterr): Likewise.
3404         * lib/fwritable.c (fwritable): Likewise.
3405         * lib/fwriting.c (fwriting): Likewise.
3406         Reported by Roger Cornelius <rac@tenzing.org> and
3407         Brian K. White <brian@aljex.com>.
3408
3409 2008-04-06  Jim Meyering  <meyering@redhat.com>
3410
3411         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
3412
3413 2008-04-06  Bruno Haible  <bruno@clisp.org>
3414
3415         Avoid possible error with non-ASCII bytes in UTF-8 locales.
3416         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
3417         * tests/test-printf-posix.sh: Likewise.
3418         * tests/test-vfprintf-posix.sh: Likewise.
3419         * tests/test-vprintf-posix.sh: Likewise.
3420         * tests/test-xprintf-posix.sh: Likewise.
3421
3422 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3423
3424         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
3425         hide error from 'ls', needed on OS/2.
3426         Report by Elbert Pol <elbert.pol@gmail.com>.
3427
3428 2008-04-04  Eric Blake  <ebb9@byu.net>
3429
3430         Make test-fseeko.c failures meaningful.
3431         * tests/test-fseeko.c: Print line number on failure.
3432         * tests/test-fseek.c: Likewise.
3433         Reported by Nelson H. F. Beebe.
3434
3435         Improve strtod bug detection check.
3436         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
3437         required for Solaris 10.
3438         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
3439
3440 2008-04-04  Bruno Haible  <bruno@clisp.org>
3441
3442         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
3443         by m4/setenv.m4.
3444
3445 2008-04-03  Eric Blake  <ebb9@byu.net>
3446
3447         Ensure sane .version contents.
3448         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
3449         version string.
3450         * build-aux/git-version-gen: Improve documentation.
3451
3452         Make GNU make output nicer.
3453         * top/GNUmakefile [!_have-Makefile]: Add dependency on
3454         MAKECMDGOALS to enforce message for all command line targets.  Set
3455         srcdir for use in maint.mk.
3456
3457         Another maintainer tweak.
3458         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
3459         a target that regenerates version.
3460
3461 2008-04-03  Jim Meyering  <meyering@redhat.com>
3462
3463         vc-list-files: don't cause coreutils "make po-check" failure
3464         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
3465
3466 2008-04-03  Eric Blake  <ebb9@byu.net>
3467
3468         Allow VPATH usage of vc-list-files.
3469         * build-aux/vc-list-files (scriptversion): Add timestamp.
3470         (options): Add --help, --version, -C.
3471         (CVS): Support installed cvsu.
3472
3473 2008-04-02  Bruno Haible  <bruno@clisp.org>
3474
3475         Avoid some "statement with no effect" warnings from gcc.
3476         * tests/test-wctype.c (main): Explicitly ignore unused values.
3477         Reported by Jim Meyering.
3478
3479 2008-04-02  Jim Meyering  <meyering@redhat.com>
3480
3481         Avoid some warnings from "gcc -Wshadow".
3482         * tests/test-frexp.c (exp): Define to a different identifier.
3483         * tests/test-frexpl.c (exp): Likewise.
3484
3485 2008-04-03  Jim Meyering  <meyering@redhat.com>
3486
3487         bootstrap: remove dangling *.[ch] symlinks from lib
3488         * build-aux/bootstrap [dangling symlink removal]: Move find's
3489         -depth option to precede all others, to avoid a warning.
3490         Remove *.[ch] files too, and from "$source_base" (usually lib/).
3491
3492 2008-04-02  Bruno Haible  <bruno@clisp.org>
3493
3494         Avoid some warnings from "gcc -Wshadow".
3495         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
3496         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
3497         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
3498         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
3499         Reported by Jim Meyering.
3500
3501 2008-04-01  Bruno Haible  <bruno@clisp.org>
3502
3503         Fix test to work on IRIX 6.5 with cc.
3504         * tests/test-math.c (numeric_equal): New function.
3505         (main): Use it.
3506
3507 2008-04-01  Bruno Haible  <bruno@clisp.org>
3508
3509         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
3510
3511 2008-04-01  Bruno Haible  <bruno@clisp.org>
3512
3513         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
3514         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
3515         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
3516         (Depends-on): Remove math.
3517
3518         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
3519         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
3520         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
3521         (Depends-on): Remove math.
3522
3523         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
3524         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
3525         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
3526         (Depends-on): Remove math.
3527         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
3528         (Depends-on): Remove math.
3529
3530         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
3531         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
3532         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
3533         (Depends-on): Remove math.
3534         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
3535         (Depends-on): Remove math.
3536
3537         * tests/test-round1.c: Include nan.h.
3538         (main): Use NaNd instead of NAN.
3539         * modules/round-tests (Files): Add tests/nan.h.
3540
3541         * tests/test-trunc1.c: Include nan.h.
3542         (main): Use NaNd instead of NAN.
3543         * modules/trunc-tests (Files): Add tests/nan.h.
3544
3545         * tests/test-roundf1.c: Include nan.h.
3546         (main): Use NaNf instead of NAN.
3547         * modules/roundf-tests (Files): Add tests/nan.h.
3548
3549         * tests/test-truncf1.c: Include nan.h.
3550         (main): Use NaNf instead of NAN.
3551         * modules/truncf-tests (Files): Add tests/nan.h.
3552
3553         * tests/test-ceilf1.c: Include nan.h.
3554         (main): Use NaNf instead of NAN.
3555         * modules/ceilf-tests (Files): Add tests/nan.h.
3556
3557         * tests/test-floorf1.c: Include nan.h.
3558         (main): Use NaNf instead of NAN.
3559         * modules/floorf-tests (Files): Add tests/nan.h.
3560
3561         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
3562         (main): Use NaNf instead of NAN.
3563         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
3564
3565         * tests/test-isnand.c: Include nan.h instead of <math.h>.
3566         (main): Use NaNd instead of NAN.
3567         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
3568
3569         * tests/test-frexp.c: Include nan.h.
3570         (main): Use NaNd instead of NAN.
3571         * modules/frexp-tests (Files): Add tests/nan.h.
3572
3573         * lib/isnan.c: Don't include <math.h>.
3574         (FUNC): Don't use NAN macro.
3575         * modules/isnand-nolibm (Depends-on): Remove math.
3576         * modules/isnanf-nolibm (Depends-on): Remove math.
3577         * modules/isnanl (Depends-on): Remove math.
3578         * modules/isnanl-nolibm (Depends-on): Remove math.
3579
3580         * tests/nan.h: New file.
3581
3582 2008-04-01  Eric Blake  <ebb9@byu.net>
3583
3584         Fix typos.
3585         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
3586         values to be the right type.
3587
3588         For now, cater to gnulib strtod inaccuracies.
3589         * tests/test-strtod.c (main): Allow 1-ulp error on expected
3590         fractional results.  While not as nice from a QoI perspective, it
3591         is a quicker patch than correctly implementing decimal to binary
3592         rounding.
3593
3594 2008-03-31  Eric Blake  <ebb9@byu.net>
3595
3596         Guarantee a definition of NAN.
3597         * lib/math.in.h (NAN): Define if missing.
3598         * tests/test-math.c (main): Test it.
3599         * doc/posix-headers/math.texi (math.h): Document this.
3600         * lib/isnan.c (rpl_isnand): Use it.
3601         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
3602         * tests/test-floorf1.c (NaN): Likewise.
3603         * tests/test-frexp.c (NaN): Likewise.
3604         * tests/test-isnand.c (NaN): Likewise.
3605         * tests/test-isnanf.c (NaN): Likewise.
3606         * tests/test-round1.c (NaN): Likewise.
3607         * tests/test-roundf1.c (NaN): Likewise.
3608         * tests/test-snprintf-posix.h (NaN): Likewise.
3609         * tests/test-sprintf-posix.h (NaN): Likewise.
3610         * tests/test-trunc1.c (NaN): Likewise.
3611         * tests/test-truncf1.c (NaN): Likewise.
3612         * tests/test-vasnprintf-posix.c (NaN): Likewise.
3613         * tests/test-vasprintf-posix.c (NaN): Likewise.
3614         * modules/isnand-nolibm (Depends-on): Add math.
3615         * modules/isnanf-nolibm (Depends-on): Likewise.
3616         * modules/isnanl (Depends-on): Likewise.
3617         * modules/isnanl-nolibm (Depends-on): Likewise.
3618         * modules/snprintf-posix-tests (Depends-on): Likewise.
3619         * modules/sprintf-posix-tests (Depends-on): Likewise.
3620         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
3621         * modules/vsprintf-posix-tests (Depends-on): Likewise.
3622         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
3623         * modules/vasprintf-posix-tests (Depends-on): Likewise.
3624
3625 2008-03-31  Bruno Haible  <bruno@clisp.org>
3626
3627         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
3628         * doc/posix-functions/strtod.texi: Likewise.
3629
3630 2008-03-31  Bruno Haible  <bruno@clisp.org>
3631
3632         * tests/test-strtod.c (main): Don't use C99 syntax.
3633
3634 2008-03-31  Bruno Haible  <bruno@clisp.org>
3635
3636         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
3637         Reported by Eric Blake.
3638
3639 2008-03-31  Jim Meyering  <meyering@redhat.com>
3640
3641         Don't compare actual signbit return values.
3642         * tests/test-strtod.c (main): Rather, compare only their
3643         zero/non-zero nature.
3644
3645 2008-03-31  Eric Blake  <ebb9@byu.net>
3646
3647         More strtod documentation.
3648         * doc/posix-functions/strtod.texi (strtod): Interpret more test
3649         failures as distinct bugs.
3650
3651 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
3652
3653         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
3654         Problem reported by Erik Benada in
3655         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
3656
3657 2008-03-30  Bruno Haible  <bruno@clisp.org>
3658
3659         * tests/test-strtod.c: Add comments about which assertion fails on which
3660         platform.
3661         * doc/posix-functions/strtod.texi: Add info about many more platforms.
3662
3663 2008-03-30  Eric Blake  <ebb9@byu.net>
3664
3665         Test signbit behavior on zeros.
3666         * tests/test-signbit.c (test_signbitf): Add tests for zero.
3667         (test_signbitd, test_signbitl): Likewise.
3668
3669         More strtod touchups.
3670         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
3671         sign of negative underflow, for now.  Use .5, not .1.
3672         * doc/posix-functions/strtod.texi (strtod): Mention these
3673         limitations.
3674         Reported by Jim Meyering.
3675
3676 2008-03-30  Bruno Haible  <bruno@clisp.org>
3677
3678         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
3679         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
3680
3681 2008-03-30  Bruno Haible  <bruno@clisp.org>
3682
3683         Avoid failure when attempting to return empty iconv results on some
3684         platforms.
3685         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
3686         allocation, don't report ENOMEM when the resulting string is empty.
3687
3688 2008-03-30  Bruno Haible  <bruno@clisp.org>
3689
3690         Fix buffer overrun.
3691         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
3692         Don't consider the width for tmp_length. Check count against tmp_length
3693         before doing the padding. Ensure enough allocation during padding.
3694
3695 2008-03-30  Eric Blake  <ebb9@byu.net>
3696
3697         strtod touchups.
3698         * lib/strtod.c (strtod): Avoid compiler warnings.
3699         Reported by Jim Meyering.
3700
3701 2008-03-30  Bruno Haible  <bruno@clisp.org>
3702
3703         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
3704         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
3705         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
3706         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
3707         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
3708         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
3709         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
3710         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
3711
3712         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
3713         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
3714         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
3715         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
3716         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
3717         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
3718         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
3719         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
3720
3721         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
3722         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
3723         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
3724         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
3725         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
3726         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
3727         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
3728         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
3729
3730         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
3731         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
3732
3733         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
3734         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
3735
3736         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
3737         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
3738
3739         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
3740         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
3741         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
3742
3743         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
3744         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
3745         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
3746
3747         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
3748         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
3749         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
3750
3751         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
3752         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
3753         * modules/vasprintf (Depends-on): Add EOVERFLOW.
3754
3755         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
3756         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
3757         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
3758         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
3759         (Depends-on): Add EOVERFLOW.
3760         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
3761         (Depends-on): Add EOVERFLOW.
3762         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
3763         (Depends-on): Add EOVERFLOW.
3764         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
3765         (Depends-on): Add EOVERFLOW.
3766         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
3767         (Depends-on): Add EOVERFLOW.
3768         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
3769         (Depends-on): Add EOVERFLOW.
3770         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
3771         (Depends-on): Add EOVERFLOW.
3772         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
3773         (Depends-on): Add EOVERFLOW.
3774
3775         * lib/sprintf.c (EOVERFLOW): Remove fallback.
3776         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
3777         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
3778
3779         * lib/snprintf.c (EOVERFLOW): Remove fallback.
3780         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
3781         * modules/snprintf (Depends-on): Add EOVERFLOW.
3782
3783         * lib/poll.c (EOVERFLOW): Remove fallback.
3784         * modules/poll (Depends-on): Add EOVERFLOW.
3785
3786         * lib/getugroups.c (EOVERFLOW): Remove fallback.
3787         * modules/getugroups (Depends-on): Add EOVERFLOW.
3788
3789         * lib/getdelim.c (EOVERFLOW): Remove fallback.
3790         * modules/getdelim (Depends-on): Add EOVERFLOW.
3791
3792         * lib/ftell.c (EOVERFLOW): Remove fallback.
3793         * modules/ftell (Depends-on): Add EOVERFLOW.
3794
3795         * lib/fprintf.c (EOVERFLOW): Remove fallback.
3796         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
3797         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
3798
3799         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
3800
3801         * modules/EOVERFLOW-tests: New file.
3802         * tests/test-EOVERFLOW.c: New file.
3803
3804         * modules/EOVERFLOW: New file.
3805         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
3806
3807 2008-03-30  Bruno Haible  <bruno@clisp.org>
3808
3809         Fix bug introduced on 2007-06-10.
3810         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
3811         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
3812
3813 2008-03-30  Bruno Haible  <bruno@clisp.org>
3814
3815         Improve freadseek's efficiency after ungetc.
3816         * lib/freadseek.c: Include freadahead.h.
3817         (freadptrinc): New function, extracted from freadseek.
3818         (freadseek): Use it in a loop. Use freadahead to determine the number
3819         of loop iterations.
3820         * modules/freadseek (Depends-on): Add freadahead.
3821         (configure.ac): Require AC_C_INLINE.
3822
3823 2008-03-30  Bruno Haible  <bruno@clisp.org>
3824
3825         * lib/freadseek.c (freadseek): Don't ignore the return value of
3826         freadptr.
3827
3828 2008-03-29  Eric Blake  <ebb9@byu.net>
3829
3830         Add hex float support.
3831         * modules/strtod (Depends-on): Add c-ctype.
3832         (Link): Mention POW_LIB.
3833         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
3834         whitespace between 'e' and exponent.
3835         * tests/test-strtod.c (main): Enable hex float tests.
3836         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
3837         now provides.
3838
3839         Document various strtod bugs, with some fixes.
3840         * doc/posix-functions/strtod.texi (strtod): Document bugs with
3841         "-0x", "inf", "nan", and hex constants.
3842         * doc/posix-functions/atof.texi (atof): Likewise.
3843         * modules/stdlib (Makefile.am): Support strtod.
3844         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
3845         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
3846         detect additional strtod bugs.
3847         * lib/stdlib.in.h (rpl_strtod): Add declarations.
3848         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
3849         bool where appropriate.  Parse 'inf' and 'nan'.
3850         * tests/test-strtod.c: New file.
3851         * modules/strtod (Depends-on): Add stdbool, stdlib.
3852         (configure.ac): Turn on module indicator.
3853         * modules/strtod-tests: New module.
3854
3855 2008-03-29  Eric Blake  <ebb9@byu.net>
3856
3857         Fix ftell on mingw.
3858         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
3859         * modules/ftell-tests (Depends-on): Add binary-io.
3860         * modules/ftello-tests (Depends-on): Likewise.
3861         * tests/test-ftell.c (main): Enhance test to cover behavior after
3862         ungetc.  Enforce binary mode.
3863         * tests/test-ftello.c (main): Likewise.
3864
3865         Pass test-freadseek on cygwin.
3866         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
3867         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
3868         ungetc buffer.
3869
3870         * tests/test-fflush2.c (main): Fix typo.
3871
3872 2008-03-29  Bruno Haible  <bruno@clisp.org>
3873
3874         * tests/test-fflush2.c (main): Temporarily disable the contents of
3875         this test.
3876         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
3877         Reported by Eric Blake.
3878
3879 2008-03-28  Simon Josefsson  <simon@josefsson.org>
3880
3881         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
3882         (GC_SHA224_DIGEST_SIZE): Add.
3883
3884         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
3885         (gc_hash_digest_length): Likewise.
3886         (gc_hash_buffer): Likewise.
3887
3888 2008-03-25  Bruno Haible  <bruno@clisp.org>
3889
3890         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
3891         detail which gettext release to use.
3892         Reported by Simon Josefsson.
3893
3894 2008-03-26  Jim Meyering  <meyering@redhat.com>
3895
3896         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
3897         * modules/gnumakefile (clean-GNUmakefile): Also, use
3898         test ... && ... || : syntax rather than if-then ... fi.
3899
3900         gnumakefile: Don't double-quote-expand $(VPATH) value.
3901         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
3902
3903 2008-03-24  Eric Blake  <ebb9@byu.net>
3904
3905         Alter GNUmakefile to install into top directory.
3906         * modules/maintainer-makefile: Split, and add dependency...
3907         * modules/gnumakefile: to this new module.
3908         * build-aux/GNUmakefile: Move...
3909         * top/GNUmakefile: ...here.
3910         * build-aux/maint.mk: Move...
3911         * top/maint.mk: ...here.
3912         * MODULES.html.sh (Support for maintaining...): Document new
3913         module.
3914
3915 2008-03-23  Bruno Haible  <bruno@clisp.org>
3916
3917         * gnulib-tool: New options --vc-files, --no-vc-files.
3918         (func_usage): Document them.
3919         (vc_files): New variable.
3920         (func_import): Consider vc_files.
3921         (func_create_testdir): Set vc_files to empty.
3922         Suggested by Jim Meyering and Karl Berry.
3923
3924 2008-03-23  Bruno Haible  <bruno@clisp.org>
3925
3926         Fix regex compilation error on HP-UX 11.
3927         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
3928         * modules/regex (Files): Add m4/mbstate_t.m4.
3929         Reported by Ton Voon <ton.voon@altinity.com>.
3930
3931 2008-03-23  Bruno Haible  <bruno@clisp.org>
3932
3933         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
3934
3935 2008-03-23  Eric Blake  <ebb9@byu.net>
3936             Bruno Haible  <bruno@clisp.org>
3937
3938         Install files from top/ in the destination directory.
3939         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
3940         augmentation also for the files from top/.
3941         (func_import, func_create_testdir): Rewrite file names:
3942         top/filename -> filename.
3943
3944 2008-03-23  Bruno Haible  <bruno@clisp.org>
3945
3946         Tweak "gnulib --version" output.
3947         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
3948
3949 2008-03-23  Bruno Haible  <bruno@clisp.org>
3950
3951         Tweak "gnulib --version" output.
3952         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
3953         rather than contents of ChangeLog, when possible.
3954
3955 2008-03-21  Eric Blake  <ebb9@byu.net>
3956
3957         More --version tweaks.
3958         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
3959         date of last ChangeLog entry.
3960
3961 2008-03-21  Jim Meyering  <meyering@redhat.com>
3962
3963         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
3964
3965 2008-03-20  Eric Blake  <ebb9@byu.net>
3966
3967         VPATH fix.
3968         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
3969
3970 2008-03-20  Simon Josefsson  <simon@josefsson.org>
3971
3972         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
3973         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
3974
3975 2008-03-20  Eric Blake  <ebb9@byu.net>
3976
3977         Sync GNUmakefile with coreutils.
3978         * build-aux/GNUmakefile (have-Makefile): Rename...
3979         (_have-Makefile): ...to this, for namespace consideration.
3980         (GNUmakefile.cfg): Include, if present.
3981         (_autoreconf): Define a default.
3982         (_is-dist-target): New rule for rebuilds to pick up intra-release
3983         version.
3984         (maint-cfg.mk): Rename...
3985         (cfg.mk): ...to this.
3986
3987 2008-03-18  Jim Meyering  <meyering@redhat.com>
3988
3989         New script and module: mktempd
3990         * MODULES.html.sh (maint+release support): Add mktempd.
3991         * build-aux/mktempd: New file.
3992         * modules/mktempd: New file.
3993
3994 2008-03-15  Jim Meyering  <meyering@redhat.com>
3995
3996         Undo last change.
3997         * lib/sha1.c, lib/md5.c: 63 != ~63.
3998         Reported by Andreas Schwab.
3999
4000         sha1.c, md5.c: Hoist a redundant expression.
4001         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
4002         "ctx->buflen" only once, before calling *_process_block.
4003         * lib/md5.c (md5_process_bytes): Likewise.
4004
4005 2008-03-14  Eric Blake  <ebb9@byu.net>
4006
4007         Bump copyright year in files generated by gnulib-tool.
4008         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
4009         gnulib-tool, rather than hard-coding it.
4010
4011         Fix 'gnulib-tool --version' output to work with git.
4012         * gnulib-tool (func_gnulib_dir): New function, extracted from...
4013         (startup): ...here.
4014         (func_version): Use it to invoke git-version-gen, rather than
4015         relying on CVS keyword expansion.  Modernize wording.
4016         (cvsdatestamp, last_checkin_date, version): Kill unused
4017         variables.
4018
4019 2008-03-12  Jim Meyering  <meyering@redhat.com>
4020
4021         Recognize optional cast of the argument to free.
4022         * build-aux/useless-if-before-free: Update regexps.
4023
4024         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
4025
4026 2008-03-11  Bruno Haible  <bruno@clisp.org>
4027
4028         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
4029         by a single package.
4030         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
4031         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
4032         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
4033         Reported by Sam Steingold <sds@gnu.org>.
4034
4035 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
4036
4037         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
4038         repositories.
4039
4040 2008-03-11  Bruno Haible  <bruno@clisp.org>
4041
4042         Avoid conflicts between local macro definitions.
4043         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
4044         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
4045
4046 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
4047             Bruno Haible  <bruno@clisp.org>
4048
4049         Make va_copy work with some version of xlc on AIX 5.1.
4050         * lib/stdarg.in.h: New file.
4051         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
4052         On AIX, use a <stdarg.h> file substitute.
4053         * modules/stdarg (Files): Add lib/stdarg.in.h.
4054         (Depends-on): Add include_next.
4055         (Makefile.am): Build a stdarg.h substitute if requested.
4056         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
4057
4058 2008-03-10  Bruno Haible  <bruno@clisp.org>
4059
4060         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
4061         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
4062         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
4063
4064 2008-03-10  Bruno Haible  <bruno@clisp.org>
4065
4066         * modules/stdlib (Depends-on): Add include_next, remove
4067         absolute-header.
4068
4069 2008-03-09  Bruno Haible  <bruno@clisp.org>
4070
4071         * lib/freadahead.h (freadahead): Document more precisely.
4072         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
4073         the sum of both buffer sizes.
4074         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
4075         * NEWS: Document the change.
4076
4077 2008-03-09  Bruno Haible  <bruno@clisp.org>
4078
4079         Extend freadptr to return also the buffer size.
4080         * lib/freadptr.h (freadptr): Add sizep argument.
4081         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
4082         (freadptr): Add sizep argument. Determine buffer size like freadahead
4083         does.
4084         * tests/test-freadptr.c: Don't include freadahead.h.
4085         (main): Adapt for new calling convention of freadptr.
4086         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
4087         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
4088         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
4089         tests/test-freadptr2.sh.
4090         (Depends): Remove freadahead.
4091         (TESTS): Add test-freadptr2.sh.
4092         (check_PROGRAMS): Add test-freadptr2.
4093
4094 2008-03-09  Bruno Haible  <bruno@clisp.org>
4095
4096         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
4097         Report and solution by Simon Josefsson.
4098
4099 2008-03-06  Bruno Haible  <bruno@clisp.org>
4100
4101         Make fflush after ungetc work on BSD platforms.
4102         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
4103         * tests/test-fflush2.c: New file.
4104         * tests/test-fflush2.sh: New file.
4105         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
4106         tests/test-fflush2.c.
4107         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
4108         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
4109
4110 2008-03-06  Eric Blake  <ebb9@byu.net>
4111
4112         Likewise for ftello.
4113         * modules/ftello (Dependencies): Add extensions.
4114         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
4115
4116 2008-03-06  Bruno Haible  <bruno@clisp.org>
4117
4118         * modules/fseeko (Dependencies): Add extensions.
4119         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
4120         Needed on glibc systems.
4121
4122 2008-03-06  Bruno Haible  <bruno@clisp.org>
4123
4124         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
4125         email address.
4126         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
4127
4128 2008-03-06  Bruno Haible  <bruno@clisp.org>
4129
4130         * users.txt: Add libgnupdf.
4131
4132 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
4133
4134         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
4135         (Header File Substitutes, Function Substitutes,
4136         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
4137         (Build robot for gnulib): Fix typo.
4138
4139 2008-03-06  Bruno Haible  <bruno@clisp.org>
4140
4141         * doc/gnulib-tool.texi (VCS Issues): Small updates.
4142         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
4143
4144 2008-03-06  Bruno Haible  <bruno@clisp.org>
4145
4146         * doc/func.texi: New file, extracted from doc/gnulib.texi.
4147         * doc/gnulib.texi: Include it.
4148
4149 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4150
4151         * modules/func (License): Change license to unlimited; there was
4152         no LGPL parts in the module anyway.
4153
4154 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4155
4156         * modules/__func__: Renamed to modules/func.
4157         * modules/__func__-tests: Renamed to modules/func-tests.
4158         * tests/test-__func__.c: Renamed to tests/test-func.c.
4159         * m4/__func__.m4: Renamed to m4/func.m4.
4160         * doc/gnulib.texi (__func__): Section renamed to func.
4161         Suggested by Eric Blake <ebb9@byu.net>.
4162
4163 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4164
4165         * doc/gnulib.texi (__func__): Use C99 terminology when talking
4166         about __func__.  Make example self-contained.  Suggested by Eric
4167         Blake <ebb9@byu.net>.
4168
4169         * tests/test-__func__.c (main): Avoid extraneous () around __func.
4170         Suggested by Eric Blake <ebb9@byu.net>.
4171
4172 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4173
4174         * modules/__func__: New file.
4175         * modules/__func__-tests: New file.
4176         * tests/test-__func__.c: New file.
4177         * m4/__func__.m4: New file.
4178         * doc/gnulib.texi (__func__): Document __func__ module.
4179
4180 2008-03-05  Simon Josefsson  <simon@josefsson.org>
4181
4182         * modules/byteswap (License): Re-license as LGPLv2+.
4183
4184 2008-03-05  Simon Josefsson  <simon@josefsson.org>
4185
4186         * doc/Makefile: Add pdf target.
4187
4188 2008-03-05  Simon Josefsson  <simon@josefsson.org>
4189
4190         * modules/inline (License): Use 'unlimited', since there are only
4191         *.m4 files in this module.
4192
4193 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
4194             Bruno Haible  <bruno@clisp.org>
4195
4196         Add support for HP C 7.1 on OpenVMS 8.3.
4197         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
4198
4199 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
4200
4201         Update VMS specifics.
4202         * lib/getopt.c [VMS]: Remove include of unixlib.h.
4203
4204 2008-03-02  Jim Meyering  <meyering@redhat.com>
4205
4206         Remove the last dependency on the "free" module.
4207         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
4208         Reported by Bob Proulx.
4209
4210         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
4211
4212         Remove useless "if" tests before free.  Deprecate "free" module.
4213         * doc/posix-functions/free.texi: Mention that this
4214         module is no longer useful.
4215         * modules/free (Notice): Say this module is obsolete.
4216         * modules/readutmp (Depends-on): Remove free.
4217         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
4218         * lib/putenv.c (putenv): Likewise.
4219         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
4220         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
4221         * tests/test-c-strcasestr.c (main): Likewise.
4222         * tests/test-c-strstr.c (main): Likewise.
4223         * tests/test-mbscasestr1.c (main): Likewise.
4224         * tests/test-mbscasestr2.c (main): Likewise.
4225         * tests/test-mbsstr1.c (main): Likewise.
4226         * tests/test-mbsstr2.c (main): Likewise.
4227         * tests/test-memmem.c (main): Likewise.
4228         * tests/test-strcasestr.c (main): Likewise.
4229         * tests/test-striconv.c (main): Likewise.
4230         * tests/test-striconveh.c (main): Likewise.
4231         * tests/test-striconveha.c (main): Likewise.
4232         * tests/test-strstr.c (main): Likewise.
4233
4234         * build-aux/git-version-gen: Adjust a comment and the Usage string.
4235
4236         bootstrap: sync from coreutils again
4237         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
4238
4239 2008-03-01  Jim Meyering  <meyering@redhat.com>
4240
4241         bootstrap: sync from coreutils
4242         * build-aux/bootstrap (update_po_files): Copy a .po file into place
4243         also when the target doesn't exist.
4244
4245 2008-03-01  Eric Blake  <ebb9@byu.net>
4246
4247         Fix bugs in last patch.
4248         * lib/memchr2.c (memchr2): Fix typo.
4249         * tests/test-memchr2.c: Test previous bug, and don't use GNU
4250         extension.
4251         Reported by Bruce Korb.
4252
4253         New module 'memchr2'.
4254         * modules/memchr2: New file.
4255         * modules/memchr2-tests: Likewise.
4256         * lib/memchr2.h: Likewise.
4257         * lib/memchr2.c: Likewise, based on memchr.c.
4258         * tests/test-memchr2.c: New test.
4259         * MODULES.html.sh (String handling): Add memchr2.
4260
4261 2008-02-29  Bruno Haible  <bruno@clisp.org>
4262
4263         * modules/freadseek-tests: New file.
4264         * tests/test-freadseek.sh: New file.
4265         * tests/test-freadseek.c: New file.
4266
4267         New module 'freadseek'.
4268         * modules/freadseek: New file.
4269         * lib/freadseek.h: New file.
4270         * lib/freadseek.c: New file.
4271         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
4272
4273 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
4274
4275         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
4276         wydawca.
4277
4278         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
4279         program_invocation_name and program_invocation_short_name are
4280         present.
4281
4282 2008-02-28  Bruno Haible  <bruno@clisp.org>
4283
4284         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
4285         * tests/test-freadptr.sh: Also test non-seekable stdin.
4286
4287 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
4288
4289         * build-aux/bootstrap (source_base, m4_base)
4290         (doc_base, tests_base): New variables.
4291         (gnulib_tool_options): Do not hardcode base directories, use
4292         the above variables instead.
4293
4294 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
4295
4296         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
4297
4298 2008-02-28  Bruno Haible  <bruno@clisp.org>
4299
4300         * modules/freadptr-tests: New file.
4301         * tests/test-freadptr.sh: New file.
4302         * tests/test-freadptr.c: New file.
4303
4304         New module 'freadptr'.
4305         * modules/freadptr: New file.
4306         * lib/freadptr.h: New file.
4307         * lib/freadptr.c: New file.
4308         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
4309
4310 2008-02-26  Karl Berry  <karl@freefriends.org>
4311
4312         Sync from Libtool:
4313         * libltdl/argz.c (argz_add, argz_count): New functions.
4314         * libltdl/argz.in.h: Declare them.
4315         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
4316
4317 2008-02-22  Bruno Haible  <bruno@clisp.org>
4318
4319         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
4320         is a pointer type.  Needed for HP-UX 10.
4321         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
4322         * doc/posix-functions/gmtime_r.texi: Likewise.
4323         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
4324
4325 2008-02-24  Bruno Haible  <bruno@clisp.org>
4326
4327         * modules/environ-tests: New file.
4328         * tests/test-environ.c: New file.
4329
4330         New module 'environ'.
4331         * modules/environ: New file.
4332         * lib/unistd.in.h (environ): New declaration.
4333         * m4/environ.m4: New file.
4334         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
4335         after use.
4336         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
4337         HAVE_DECL_ENVIRON.
4338         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
4339         HAVE_DECL_ENVIRON.
4340         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
4341         wrong claim that 'environ' is missing on some systems.
4342         * modules/execute (Depends-on): Add environ.
4343         * lib/execute.c (environ): Remove fallback declaration.
4344         * modules/pipe (Depends-on): Add environ.
4345         * lib/pipe.c (environ): Remove fallback declaration.
4346         * modules/setenv (Depends-on): Add environ.
4347         * lib/setenv.c (environ): Remove fallback declaration.
4348         * modules/unsetenv (Depends-on): Add environ.
4349         * lib/unsetenv.c (environ): Remove fallback declaration.
4350         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
4351         m4/environ.m4.
4352         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
4353         (gl_PREREQ_UNSETENV): Likewise.
4354
4355 2008-02-24  Bruno Haible  <bruno@clisp.org>
4356
4357         * doc/posix-functions/environ.texi: Document the MacOS X problem.
4358
4359 2008-02-20  Bob Proulx  <bob@proulx.com>
4360
4361         Enable use of older two part flavor 'git describe'.
4362         * build-aux/git-version-gen: If using the older two part flavor of
4363         git version then recreate the third part now present in the
4364         newer three part flavor of git describe.
4365
4366 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
4367
4368         * lib/fts.c (fts_build): Typo correction to comment.
4369
4370 2008-02-17  Bruno Haible  <bruno@clisp.org>
4371
4372         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
4373         generating no-op conflicts.
4374
4375 2008-02-17  Bruno Haible  <bruno@clisp.org>
4376
4377         Speed up by 10%.
4378         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
4379         result_entries, rather than an index-based loop.
4380
4381 2008-02-17  Bruno Haible  <bruno@clisp.org>
4382
4383         Speed up by 25%.
4384         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
4385         'hashcode_cached'.
4386         (entry_create): New function.
4387         (entry_hashcode): Use the cached hashcode if possible.
4388         (read_changelog_file, try_split_merged_entry): Use entry_create.
4389
4390 2008-02-17  Bruno Haible  <bruno@clisp.org>
4391
4392         Speed up from O(n^2) to O(n) for long ChangeLog files.
4393         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
4394         (read_changelog_file): Change implementation of entries_reversed list
4395         to rbtreehash.
4396         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
4397
4398 2008-02-17  Bruno Haible  <bruno@clisp.org>
4399
4400         New option --split-merged-entry.
4401         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
4402         (find_paragraph_end, try_split_merged_entry): New functions.
4403         (long_options): Add option --split-merged-entry.
4404         (usage): Document option --split-merged-entry.
4405         (main): Implement option --split-merged-entry.
4406         Reported by Eric Blake.
4407
4408 2008-02-17  Bruno Haible  <bruno@clisp.org>
4409
4410         * lib/git-merge-changelog.c: Include c-strstr.h.
4411         (main): Support the "git pull --rebase" situation.
4412         * modules/git-merge-changelog (Depends-on): Add c-strstr.
4413         Reported by Eric Blake.
4414
4415 2008-02-16  Eric Blake  <ebb9@byu.net>
4416
4417         Avoid doubling \ in common case of "c-maybe" quoting style.
4418         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
4419         eliding outer quotes.
4420         * lib/quotearg.h: Document this.
4421         * tests/test-quotearg.c (result_strings, inputs, results_g)
4422         (flag_results, locale_results): Test it by adding a new string to
4423         each test group.
4424         (compare_strings): Test new string.
4425
4426 2008-02-13  Eric Blake  <ebb9@byu.net>
4427
4428         Avoid trigraph quoting in default output.
4429         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
4430         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
4431         unless explicitly requested.
4432         * tests/test-quotearg.c (flag_results, main): Add additional tests.
4433
4434 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
4435
4436         Don't rely on signed integer overflowing to negative value.
4437         * lib/getugroups.c (getugroups): Include <limits.h>.
4438         Instead, compare against INT_MAX, and increment only if the test passes.
4439
4440 2008-02-13  Jim Meyering  <meyering@redhat.com>
4441         and Eric Blake  <ebb9@byu.net>
4442
4443         Avoid shadowing warning and compile errors on Linux.
4444         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
4445         forwarding macros on Linux.
4446         (dcgettext): Define a stub, for Linux.
4447         (results_g, main): Avoid warnings.
4448
4449 2008-02-12  Eric Blake  <ebb9@byu.net>
4450
4451         Silence warning in last patch.
4452         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
4453
4454         Quotearg part 4: add tests, fix c-maybe colon quoting.
4455         * lib/quotearg.h: Improve documentation.
4456         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
4457         escapes when adding outer quotes.  When quoting trigraphs, use
4458         valid C notation.  When quoting NUL, omit extra characters if next
4459         character is not digit.  Alter prototype.
4460         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
4461         callers.
4462         * modules/quotearg-tests: New module.
4463         * tests/test-quotearg.c: New test.
4464
4465 2008-02-07  Eric Blake  <ebb9@byu.net>
4466
4467         Quotearg part 3: add flag to control outer quote elision.
4468         * lib/quotearg.h (c_maybe_quoting_style): New style.
4469         (enum quoting_flags): Better documentation of flags.
4470         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
4471         c-maybe style.
4472         (quotearg_buffer_restyled): Handle new flag to elide outer
4473         quotes.
4474
4475         Quotearg part 2: add flag that can control NUL elision.
4476         * lib/quotearg.h (set_quoting_flags): New prototype.
4477         * lib/quotearg.c (struct quoting_options): Add flag field.
4478         (set_quoting_flags): New function.
4479         (quotearg_buffer_restyled): Add flags parameter.
4480         (quotearg_alloc_mem): Set the flag if length cannot be returned.
4481         (quotearg_n_options): Set the flag, since length cannot be
4482         returned.
4483         (quoting_options_from_style): Default flags correctly.
4484
4485         Quotearg part 1: more wrappers, restore quotearg_char state.
4486         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
4487         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
4488         (quotearg_colon_mem): New wrappers.
4489         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
4490         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
4491         functions.
4492         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
4493         (quotearg_colon_mem): New functions.
4494
4495 2008-02-11  Bruno Haible  <bruno@clisp.org>
4496
4497         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
4498         library in the current directory: it does not work with parallel make.
4499         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4500
4501 2008-02-11  Bruno Haible  <bruno@clisp.org>
4502
4503         * .gitattributes: New file.
4504
4505 2008-02-11  Jim Meyering  <meyering@redhat.com>
4506
4507         useless-if-before-free: Fix reversed exit values.
4508         * build-aux/useless-if-before-free: Use correct values
4509         for EXIT_MATCH and EXIT_NO_MATCH.
4510
4511         * build-aux/useless-if-before-free: Close stdout carefully.
4512
4513 2008-02-10  Bruno Haible  <bruno@clisp.org>
4514
4515         New module 'git-merge-changelog'.
4516         * modules/git-merge-changelog: New file.
4517         * lib/git-merge-changelog.c: New file.
4518
4519 2008-02-10  Jim Meyering  <meyering@redhat.com>
4520
4521         useless-if-before-free: New option: --list (-l).
4522
4523         useless-if-before-free: Don't exit immediately upon open failure.
4524         * build-aux/useless-if-before-free: Exit 2 for errors.
4525         Upon failure to open a file, don't exit immediately.
4526         Rather, just warn and continue with any remaining files.
4527
4528 2008-02-10  Bruno Haible  <bruno@clisp.org>
4529
4530         New abstract list operation 'node_set_value'.
4531         * lib/gl_list.h (gl_list_node_set_value): New function.
4532         (struct gl_list_implementation): New field node_set_value.
4533         * lib/gl_list.c (gl_list_node_set_value): New function.
4534         * lib/gl_array_list.c (gl_array_node_set_value): New function.
4535         (gl_array_list_implementation): Update.
4536         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
4537         (gl_carray_list_implementation): Update.
4538         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
4539         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
4540         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
4541         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
4542         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
4543         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
4544         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
4545         Update.
4546         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
4547         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
4548         (gl_sublist_list_implementation): Update.
4549
4550 2008-02-10  Bruno Haible  <bruno@clisp.org>
4551
4552         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
4553         Needed when ELEMENT is #defined to 'some_type *'.
4554
4555 2008-02-10  Jim Meyering  <meyering@redhat.com>
4556
4557         New script and module: useless-if-before-free
4558         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
4559         * build-aux/useless-if-before-free: New file.
4560         * modules/useless-if-before-free: New file.
4561
4562         * build-aux/gitlog-to-changelog: Use committer date, not author date.
4563
4564         xstrtol_error: Fix typo.
4565         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
4566         s/exit_failure/exit_status/.
4567
4568 2008-02-09  Jim Meyering  <meyering@redhat.com>
4569
4570         New script and module: gitlog-to-changelog
4571         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
4572         * modules/gitlog-to-changelog: New file.
4573         * build-aux/gitlog-to-changelog: New file.
4574
4575 2008-02-08  Jim Meyering  <meyering@redhat.com>
4576
4577         Avoid two "parameter unused" warnings.
4578         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
4579         Mark "st" as used.
4580
4581         Use "git COMMAND", not "git-COMMAND".
4582         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
4583         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
4584         * build-aux/git-version-gen: Use "git status", not "git-status".
4585
4586 2008-02-07  Bruno Haible  <bruno@clisp.org>
4587
4588         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
4589         Avoids a crash on Windows Vista.
4590         Reported by Adam Strzelecki <ono@java.pl> via
4591         Simon Josefsson <simon@josefsson.org>.
4592
4593 2008-02-06  Bruno Haible  <bruno@clisp.org>
4594
4595         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
4596         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
4597         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
4598         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
4599         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
4600         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4601         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
4602         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
4603         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4604         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4605         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4606         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4607         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4608         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4609         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4610         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
4611         left-adjust flag.
4612         * tests/test-snprintf-posix.h (test_function): Likewise.
4613         * tests/test-sprintf-posix.h (test_function): Likewise.
4614         * tests/test-vasprintf-posix.c (test_function): Likewise.
4615         * doc/posix-functions/fprintf.texi: Update.
4616         * doc/posix-functions/printf.texi: Update.
4617         * doc/posix-functions/snprintf.texi: Update.
4618         * doc/posix-functions/sprintf.texi: Update.
4619         * doc/posix-functions/vfprintf.texi: Update.
4620         * doc/posix-functions/vprintf.texi: Update.
4621         * doc/posix-functions/vsnprintf.texi: Update.
4622         * doc/posix-functions/vsprintf.texi: Update.
4623         Reported by Peter Fales <psfales@alcatel-lucent.com>.
4624
4625 2008-02-06  Bruno Haible  <bruno@clisp.org>
4626
4627         Fix bug introduced on 2008-01-26.
4628         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
4629
4630 2008-02-06  Bruno Haible  <bruno@clisp.org>
4631
4632         Fix bug introduced on 2007-06-10.
4633         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
4634         !NEED_PRINTF_FLAG_ZERO.
4635
4636 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
4637
4638         getloadavg: use libperfstat on AIX5
4639         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
4640
4641 2008-02-03  Bruno Haible  <bruno@clisp.org>
4642
4643         * lib/diffseq.h: Add comments about required #includes.
4644         Reported by Michael Biggs <gnulib@doubleplum.net>.
4645
4646 2008-02-01  Bruno Haible  <bruno@clisp.org>
4647
4648         * users.txt: Add gnuit.
4649
4650 2008-01-31  Bruno Haible  <bruno@clisp.org>
4651
4652         * lib/md4.c (set_uint32): Mark as inline.
4653         * lib/md5.c (set_uint32): Likewise.
4654         * lib/sha1.c (set_uint32): Likewise.
4655         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
4656         * m4/md5.m4 (gl_MD5): Likewise.
4657         * m4/sha1.m4 (gl_SHA1): Likewise.
4658
4659 2008-01-31  Jim Meyering  <meyering@redhat.com>
4660
4661         Use "sizeof VAR", rather than a literal "4".
4662         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
4663         * lib/md4.c (md4_read_ctx): Likewise.
4664         * lib/sha1.c (sha1_read_ctx): Likewise.
4665
4666 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4667
4668         * tests/test-sha1.c: New file, based on test-md5.c.
4669
4670         * modules/crypto/sha1-tests: New file.
4671
4672 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4673
4674         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
4675
4676 2008-01-31  Jim Meyering  <meyering@redhat.com>
4677
4678         Prefer "sizeof v" over the equivalent "4".
4679         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
4680         * lib/md5.c (set_uint32): Likewise.
4681         * lib/sha1.c (set_uint32): Likewise.
4682
4683 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4684
4685         * lib/sha1.c (set_uint32): Mark function as static.
4686
4687 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4688
4689         md2: clarify comments to say that alignment is not required.
4690         * lib/md2.h: Remove warning about alignment in comment.
4691         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
4692         never been required.
4693
4694 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4695
4696         md4: adapt alignment constraint fix from sha1.
4697         * lib/md4.c (set_uint32): New function, from sha1.c
4698         (md4_read_ctx): Use it.
4699         (md4_finish_ctx): Doc fix.
4700         * lib/md4.h: Doc fix.
4701
4702 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4703
4704         md5: adapt alignment constraint fix from sha1.
4705         * lib/md5.c (set_uint32): New function, from sha1.c
4706         (md5_read_ctx): Use it.
4707         (md5_finish_ctx): Doc fix.
4708         * lib/md5.h: Doc fix.
4709
4710 2008-01-30  Peter Palfrader  <weasel@debian.org>
4711
4712         sha1: remove the result buffer alignment constraint
4713         * lib/sha1.c (set_uint32): New function.
4714         (sha1_read_ctx): Rewrite to remove the result buffer alignment
4715         constraint.
4716         (sha1_finish_ctx): Remove comment warning about alignment constraint.
4717         * lib/sha1.h: Likewise.
4718
4719 2008-01-30  Andreas Schwab  <schwab@suse.de>
4720             Bruno Haible  <bruno@clisp.org>
4721
4722         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
4723         correct definition of LDBL_MIN_EXP.
4724
4725 2008-01-30  Karl Berry  <karl@gnu.org>
4726
4727         * config/srclist-update: try to preserve x bit on updates.
4728         * config/srclistvars.sh: update for karl.
4729
4730 2008-01-29  Jim Meyering  <meyering@redhat.com>
4731
4732         vasnprintf.c: Avoid warning about unused label
4733         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
4734         "overflow" label definition and associated code with the
4735         same cpp condition that guards the sole use of that label.
4736
4737 2008-01-26  Bruno Haible  <bruno@clisp.org>
4738
4739         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
4740         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
4741         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
4742         * lib/isnanl-nolibm.h (isnanl): Likewise.
4743         Reported by Paul Eggert <eggert@cs.ucla.edu>.
4744
4745 2008-01-26  Bruno Haible  <bruno@clisp.org>
4746
4747         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
4748         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
4749
4750 2008-01-26  Bruno Haible  <bruno@clisp.org>
4751
4752         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
4753         GCC >= 4.0 built-in.
4754         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
4755
4756 2008-01-26  Bruno Haible  <bruno@clisp.org>
4757
4758         Rename isnan, applicable to 'double' only, to isnand.
4759         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
4760         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
4761         (configure.ac): Update.
4762         (Include): Replace "isnan.h" with "isnand.h".
4763         * m4/isnand.m4: Renamed from m4/isnan.m4.
4764         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
4765         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
4766         instead of isnan.c.
4767         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
4768         instead of HAVE_ISNAN_IN_LIBC.
4769         (isnand): Renamed from isnan.
4770         * lib/isnand.c: New file.
4771         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
4772         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
4773         (Makefile.am): Update.
4774         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
4775         Include isnand.h instead of isnan.h.
4776         (main): Test isnand instead of isnan.
4777         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
4778         isnan-nolibm.
4779         * modules/frexp (Depends-on): Likewise.
4780         * modules/frexp-tests (Depends-on): Likewise.
4781         * modules/frexp-nolibm (Depends-on): Likewise.
4782         * modules/frexp-nolibm-tests (Depends-on): Likewise.
4783         * modules/isfinite (Depends-on): Likewise.
4784         * modules/round-tests (Depends-on): Likewise.
4785         * modules/signbit (Depends-on): Likewise.
4786         * modules/signbit-tests (Depends-on): Likewise.
4787         * modules/snprintf-posix (Depends-on): Likewise.
4788         * modules/sprintf-posix (Depends-on): Likewise.
4789         * modules/trunc-tests (Depends-on): Likewise.
4790         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
4791         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
4792         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
4793         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
4794         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
4795         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
4796         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
4797         * modules/vasnprintf-posix (Depends-on): Likewise.
4798         * modules/vasprintf-posix (Depends-on): Likewise.
4799         * modules/vfprintf-posix (Depends-on): Likewise.
4800         * modules/vsnprintf-posix (Depends-on): Likewise.
4801         * modules/vsprintf-posix (Depends-on): Likewise.
4802         * lib/frexp.c: Include isnand.h instead of isnan.h.
4803         (ISNAN): Set to isnand instead of isnan.
4804         * lib/isfinite.c: Include isnand.h instead of isnan.h.
4805         (gl_isfinited): Use isnand instead of isnan.
4806         * lib/signbitd.c: Include isnand.h instead of isnan.h.
4807         (gl_signbitd): Use isnand instead of isnan.
4808         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
4809         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
4810         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
4811         (main): Use isnand instead of isnan.
4812         * tests/test-round1.c: Include isnand.h.
4813         (main): Use isnand instead of isnan.
4814         * tests/test-round2.c: Include isnand.h instead of isnan.h.
4815         (ISNAN): Set to isnand instead of isnan.
4816         * tests/test-trunc1.c: Include isnand.h.
4817         (main): Use isnand instead of isnan.
4818         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
4819         (equal): Use isnand instead of isnan.
4820         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
4821         isnand-nolibm.
4822         * NEWS: Mention the change.
4823
4824 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
4825             Bruno Haible  <bruno@clisp.org>
4826
4827         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
4828         the GCC builtins for signbits are present and set
4829         REPLACE_SIGNBIT_USING_GCC if so.
4830         * lib/math.in.h (signbit): Define using GCC builtins if
4831         REPLACE_SIGNBIT_USING_GCC is set.
4832         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
4833         REPLACE_SIGNBIT_USING_GCC.
4834         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
4835
4836 2008-01-25  Jim Meyering  <meyering@redhat.com>
4837
4838         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
4839         * lib/poll.c: Include <config.h>, not "config.h".
4840         * tests/test-getaddrinfo.c: Likewise.
4841
4842 2008-01-25  Simon Josefsson  <simon@josefsson.org>
4843
4844         * modules/sockets-tests: New file.
4845
4846 2008-01-24  Simon Josefsson  <simon@josefsson.org>
4847
4848         * modules/sockets: New module, can be used to call WSA_Startup and
4849         WSA_Cleanup when needed.
4850
4851         * lib/sockets.h, lib/sockets.c: New files.
4852
4853         * m4/sockets.m4: New file.
4854
4855         * tests/test-sockets.c: New file.
4856
4857 2008-01-19  Bruno Haible  <bruno@clisp.org>
4858
4859         * doc/posix-headers: Renamed from doc/headers.
4860         * doc/posix-functions: Renamed from doc/functions.
4861         * doc/gnulib.texi: Update.
4862
4863 2008-01-19  Bruno Haible  <bruno@clisp.org>
4864
4865         * doc/glibc-functions/strcasestr.texi: Include contents of
4866         doc/functions/strcasestr.texi, fixing the list of platforms.
4867         * doc/functions/strcasestr.texi: Remove file.
4868
4869 2008-01-19  Bruno Haible  <bruno@clisp.org>
4870
4871         * doc/glibc-functions/memmem.texi: Include contents of
4872         doc/functions/memmem.texi.
4873         * doc/functions/memmem.texi: Remove file.
4874
4875 2008-01-18  Bruno Haible  <bruno@clisp.org>
4876
4877         * doc/glibc-functions/*.texi: New files.
4878         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
4879         to use the new files.
4880
4881 2008-01-17  Bruno Haible  <bruno@clisp.org>
4882
4883         * tests/test-gethostname.c (main): Fix printf statement.
4884
4885 2008-01-17  Simon Josefsson  <simon@josefsson.org>
4886
4887         * modules/gethostname-tests: New file.
4888
4889         * tests/test-gethostname.c: New file.
4890
4891 2008-01-17  Simon Josefsson  <simon@josefsson.org>
4892
4893         * lib/gethostname.c: Include string.h unconditionally, strncpy is
4894         used by the UNAME case.  Reported by Bruno Haible
4895         <bruno@clisp.org>.
4896
4897 2008-01-17  Eric Blake  <ebb9@byu.net>
4898
4899         Convert c-strcasestr to be more efficient.
4900         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
4901         (Depends-on): Add c-strcase, remove malloca, strnlen.
4902         * tests/test-c-strcasestr.c (main): Enhance test.
4903         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
4904
4905 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
4906
4907         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
4908         Use it in creating po/Makevars.
4909
4910 2008-01-15  Simon Josefsson  <simon@josefsson.org>
4911
4912         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
4913         Applications that requires it should initialize libgcrypt
4914         manually.
4915
4916 2008-01-16  Simon Josefsson  <simon@josefsson.org>
4917
4918         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
4919
4920 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
4921
4922         Fix problem with getdate on mingw32 reported by Simon Josefsson
4923         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
4924         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
4925         tzname", when deciding whether to declare tzname.
4926         * lib/strftime.c (tzname): Likewise.
4927
4928 2008-01-15  Bruno Haible  <bruno@clisp.org>
4929
4930         Work around a MacOS X 10.5 bug in frexpl().
4931         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
4932         * doc/functions/frexpl.texi: Document the bug.
4933         Reported by Elias Pipping <pipping@gentoo.org>.
4934
4935 2008-01-14  Eric Blake  <ebb9@byu.net>
4936
4937         Touch up previous patch.
4938         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
4939         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
4940
4941         Convert strcasestr module to use Two-Way algorithm.
4942         * modules/strcasestr-simple: New module, based on the old
4943         strcasestr, but with Two-Way rather than KMP.
4944         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
4945         * lib/string.in.h (rpl_strcasestr): Declare.
4946         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
4947         performance.
4948         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
4949         * modules/string (Makefile.am): Support strcasestr.
4950         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
4951         * modules/strcasestr-tests (Depends-on): Check for alarm.
4952         * tests/test-strcasestr.c: Augment test.
4953         * lib/str-two-way.h: Clean up stray macro.
4954         * NEWS: Document new module.
4955         * MODULES.html.sh (string handling): Likewise.
4956         * doc/functions/strcasestr.texi: New file.
4957         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
4958         here, since it is not a POSIX function.
4959
4960 2008-01-14  Colin Watson  <cjwatson@debian.org>
4961             Bruno Haible  <bruno@clisp.org>
4962
4963         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
4964         works fine; if not, set REPLACE_STRSIGNAL.
4965         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
4966         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
4967         REPLACE_STRSIGNAL.
4968         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
4969         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
4970         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
4971
4972 2008-01-14  Bruno Haible  <bruno@clisp.org>
4973
4974         * modules/strsignal (Include): Change to <string.h>.
4975
4976 2008-01-14  Colin Watson  <cjwatson@debian.org>
4977
4978         * modules/argp (Notice): Add a notice recommending to change
4979         XGETTEXT_OPTIONS.
4980         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
4981
4982 2008-01-13  Colin Watson  <cjwatson@debian.org>
4983
4984         * modules/strsignal-tests: New file.
4985         * tests/test-strsignal.c: New file.
4986
4987         * lib/strsignal.c: New file, from glibc with modifications.
4988         * lib/siglist.h: New file, from glibc with modifications.
4989         * lib/string.in.h (strsignal): New declaration.
4990         * m4/strsignal.m4: New file.
4991         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
4992         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
4993         * modules/strsignal: New file.
4994         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
4995         HAVE_DECL_STRSIGNAL.
4996
4997 2008-01-13  Bruno Haible  <bruno@clisp.org>
4998
4999         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
5000         locale encoding is not ASCII. Needed for OpenBSD 4.0.
5001         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
5002         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
5003
5004 2008-01-13  Bruno Haible  <bruno@clisp.org>
5005
5006         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
5007         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
5008         * lib/argp.h (__attribute__): Likewise.
5009         * lib/c-stack.c (__attribute__): Likewise.
5010         * lib/error.h (__attribute__): Likewise.
5011         * lib/fts.c (__attribute__): Likewise.
5012         * lib/openat.h (__attribute__): Likewise.
5013         * lib/stdio.in.h (__attribute__): Likewise.
5014         * lib/string.in.h (__attribute__): Likewise.
5015         * lib/utimens.c (__attribute__): Likewise.
5016         * lib/vasnprintf.h (__attribute__): Likewise.
5017         * lib/xalloc.h (__attribute__): Likewise.
5018         * lib/xprintf.h (__attribute__): Likewise.
5019         * lib/xstrtol.h (__attribute__): Likewise.
5020         * lib/xvasprintf.h (__attribute__): Likewise.
5021
5022 2008-01-12  Bruno Haible  <bruno@clisp.org>
5023
5024         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
5025         * doc/glibc-headers/a.out.texi: New file.
5026         * doc/glibc-headers/aliases.texi: New file.
5027         * doc/glibc-headers/alloca.texi: New file.
5028         * doc/glibc-headers/ar.texi: New file.
5029         * doc/glibc-headers/argp.texi: New file.
5030         * doc/glibc-headers/argz.texi: New file.
5031         * doc/glibc-headers/byteswap.texi: New file.
5032         * doc/glibc-headers/crypt.texi: New file.
5033         * doc/glibc-headers/endian.texi: New file.
5034         * doc/glibc-headers/envz.texi: New file.
5035         * doc/glibc-headers/err.texi: New file.
5036         * doc/glibc-headers/error.texi: New file.
5037         * doc/glibc-headers/execinfo.texi: New file.
5038         * doc/glibc-headers/fpu_control.texi: New file.
5039         * doc/glibc-headers/fstab.texi: New file.
5040         * doc/glibc-headers/fts.texi: New file.
5041         * doc/glibc-headers/getopt.texi: New file.
5042         * doc/glibc-headers/ieee754.texi: New file.
5043         * doc/glibc-headers/ifaddrs.texi: New file.
5044         * doc/glibc-headers/libintl.texi: New file.
5045         * doc/glibc-headers/mcheck.texi: New file.
5046         * doc/glibc-headers/mntent.texi: New file.
5047         * doc/glibc-headers/obstack.texi: New file.
5048         * doc/glibc-headers/paths.texi: New file.
5049         * doc/glibc-headers/printf.texi: New file.
5050         * doc/glibc-headers/pty.texi: New file.
5051         * doc/glibc-headers/resolv.texi: New file.
5052         * doc/glibc-headers/shadow.texi: New file.
5053         * doc/glibc-headers/sysexits.texi: New file.
5054         * doc/glibc-headers/ttyent.texi: New file.
5055
5056 2008-01-12  Jim Meyering  <meyering@redhat.com>
5057
5058         announce-gen: emit Gnulib's git-based version string.
5059         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
5060         New option --gnulib-version=V, where V is expected to be
5061         the output of running git describe in the gnulib directory.
5062         (get_tool_versions): Request feedback on xdelta.  I suspect it's
5063         not useful, and plan to stop publishing an xdelta file with each
5064         coreutils release.
5065
5066         * build-aux/announce-gen: Also check for lzma-compressed files.
5067
5068 2008-01-11  Bruno Haible  <bruno@clisp.org>
5069
5070         * tests/test-memmem.c (main): Increase maximum allowed time.
5071         * tests/test-strstr.c (main): Likewise.
5072
5073 2008-01-11  Bruno Haible  <bruno@clisp.org>
5074
5075         * doc/functions/memmem.texi: Add more precisions about platforms.
5076         * doc/functions/strstr.texi: Likewise.
5077
5078 2008-01-10  Eric Blake  <ebb9@byu.net>
5079
5080         * m4/strstr.m4: Delete cruft from copy-n-paste.
5081         Reported by Bruno Haible.
5082
5083 2008-01-10  Bruno Haible  <bruno@clisp.org>
5084
5085         Make c-strstr rely on strstr.
5086         * lib/c-strstr.c: Don't include str-kmp.h.
5087         (c_strstr): Define in terms of strstr.
5088         * modules/c-strstr (Files): Remove lib/str-kmp.h.
5089         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
5090
5091 2008-01-10  Bruno Haible  <bruno@clisp.org>
5092
5093         * doc/gnulib.texi (String Functions in C Locale): New section.
5094         * doc/c-ctype.texi: New file.
5095         * doc/c-strcase.texi: New file.
5096         * doc/c-strcaseeq.texi: New file.
5097         * doc/c-strcasestr.texi: New file.
5098         * doc/c-strstr.texi: New file.
5099         * doc/c-strtod.texi: New file.
5100         * doc/c-strtold.texi: New file.
5101
5102 2008-01-10  Eric Blake  <ebb9@byu.net>
5103
5104         * lib/relocatable.h: Fix a comment.
5105
5106 2008-01-10  Eric Blake  <ebb9@byu.net>
5107
5108         Share two-way algorithm.
5109         * lib/str-two-way.h: New file, merged from...
5110         * lib/memmem.c: ...here...
5111         * lib/strstr.c: ...and here.
5112         * modules/memmem (Files): Use it.
5113         * modules/strstr (Files): Likewise.
5114
5115         Avoid quadratic strstr implementations.
5116         * lib/strstr.c: New file.
5117         * m4/strstr.m4: Likewise.
5118         * modules/strstr: Likewise.
5119         * modules/strstr-tests: Likewise.
5120         * tests/test-strstr.c: Likewise.
5121         * lib/string.in.h (rpl_strstr): Declare.
5122         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
5123         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
5124         * modules/string (Makefile.am): Likewise.
5125         * MODULES.html.sh (string handling): Mention new module.
5126         * doc/functions/strstr.texi (strstr): Document the bug.
5127
5128 2008-01-10  Bruno Haible  <bruno@clisp.org>
5129
5130         * lib/relocatable.h (relocate): State whether result is freshly
5131         allocated or not.
5132         * lib/relocatable.c (relocate): Return a freshly allocated string
5133         instead of a pointer to a privately held string.
5134         Reported by Sylvain Beucler <beuc@gnu.org>.
5135
5136 2008-01-10  Colin Watson  <cjwatson@debian.org>
5137
5138         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
5139         s/S_ISNLK/S_ISLNK/.
5140
5141 2008-01-09  Bruno Haible  <bruno@clisp.org>
5142
5143         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
5144         and other files.
5145         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
5146         if it's only a guess.
5147         * modules/memmem: Simplify by depending on memmem-simple.
5148
5149 2008-01-09  Bruno Haible  <bruno@clisp.org>
5150
5151         Work around OpenBSD 4.0 tdelete() bug.
5152         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
5153         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
5154         macros and don't redefine the enum values.
5155         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
5156         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
5157         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
5158
5159 2008-01-09  Bruno Haible  <bruno@clisp.org>
5160
5161         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
5162         (main): Don't perform the tests if setlocale did not install a UTF-8
5163         locale. Needed on OpenBSD 4.0.
5164         * modules/wcwidth-tests (Depends-on): Add localcharset.
5165
5166 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5167
5168         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
5169         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
5170         * NEWS: announce this.
5171         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
5172
5173 2008-01-09  Simon Josefsson  <simon@josefsson.org>
5174         and Eric Blake  <ebb9@byu.net>
5175
5176         Add memmem-simple module.
5177         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
5178         (gl_FUNC_MEMMEM): Separate performance from presence checks.
5179         * modules/memmem-simple: New file.
5180         * modules/memmem (Description): Tweak.
5181         * MODULES.html.sh (string handling): Mention new module.
5182         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
5183         addressed by memmem-simple.
5184         * NEWS: Document the difference.
5185
5186 2008-01-09  Eric Blake  <ebb9@byu.net>
5187
5188         Give gcc some memmem optimization hints.
5189         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
5190         (strcasestr): Declare as pure.
5191         * modules/memmem (Maintainer): Claim my implementation.
5192
5193 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5194
5195         Support AIX 6.1 and higher.
5196         * build-aux/config.libpath: Likewise.
5197         * build-aux/config.rpath: Likewise.
5198
5199 2008-01-08  Jim Meyering  <meyering@redhat.com>
5200             Bruno Haible  <bruno@clisp.org>
5201
5202         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
5203         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
5204         Reported by Peter Fales in
5205         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
5206
5207 2008-01-08  Bruno Haible  <bruno@clisp.org>
5208
5209         * modules/unictype/category-of (Depends-on): Add
5210         unictype/category-none.
5211         * modules/unictype/category-and-tests (Depends-on): Add
5212         unictype/category-{L,N,Lu,Nd}.
5213         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
5214         * modules/unictype/category-or-tests (Depends-on): Add
5215         unictype/category-{L,N}.
5216         * modules/unictype/category-name-tests (Depends-on): Add
5217         unictype/category-{Z,Nl}.
5218         Reported by Simon Josefsson.
5219
5220 2008-01-08  Bruno Haible  <bruno@clisp.org>
5221
5222         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
5223         convention better.
5224         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
5225         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
5226         Reported by Peter Miller <millerp@canb.auug.org.au>.
5227
5228 2008-01-08  Eric Blake  <ebb9@byu.net>
5229
5230         Rewrite memmem to guarantee linear complexity without malloc.
5231         * lib/memmem.c (memmem): Use Two-Way rather than
5232         Knuth-Morris-Pratt, to allow O(1) space usage.
5233         (critical_factorization, two_way_short_needle)
5234         (two_way_long_needle): New functions.
5235         (knuth_morris_pratt): Delete.
5236         * modules/memmem (Depends-on): No longer need malloca or stdbool.
5237         Add stdint.
5238         * tests/test-memmem.c (main): Add tests for periodic needle and
5239         sublinear performance.
5240         * doc/functions/memmem.texi (memmem): Document other deficiencies
5241         in cygwin and older glibc.
5242
5243 2008-01-08  Bruno Haible  <bruno@clisp.org>
5244
5245         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
5246         augmentation.
5247
5248 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
5249
5250         Add a configure time option: --disable-acl.
5251         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
5252         AC_ARG_ENABLE(acl).
5253
5254 2008-01-06  Simon Josefsson  <simon@josefsson.org>
5255
5256         * tests/test-localename.c: Don't include obsolete "setenv.h".
5257
5258         * modules/localename-tests (Depends-on): Need unsetenv.
5259
5260 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5261
5262         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
5263
5264 2008-01-06  Colin Watson  <cjwatson@debian.org>
5265
5266         * users.txt: Add man-db.
5267
5268 2008-01-07  Bruno Haible  <bruno@clisp.org>
5269
5270         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
5271         previous section name.
5272
5273 2008-01-07  Bruno Haible  <bruno@clisp.org>
5274
5275         * lib/progname.c (set_program_name): Don't strip off a leading
5276         "lt-" prefix outside a .libs directory.
5277         Suggested by Paul Eggert.
5278
5279 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
5280             Bruno Haible  <bruno@clisp.org>
5281
5282         Improve memory cleanup in 'relocatable' module.
5283         * lib/relocatable.h (compute_curr_prefix): Change return type to
5284         'char *'.
5285         * lib/relocatable.c (compute_curr_prefix): Change return type to
5286         'char *'. Free curr_installdir after use.
5287         (relocate): Free curr_prefix_better after use.
5288         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
5289
5290 2008-01-01  Bruno Haible  <bruno@clisp.org>
5291
5292         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
5293         failure on older glibc systems.
5294         Reported by Peter Fales <psfales@alcatel-lucent.com>.
5295
5296 2008-01-05  Eric Blake  <ebb9@byu.net>
5297
5298         Avoid quadratic system memmem.
5299         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
5300         Reported by Ralf Wildenhues.
5301
5302         Fix memmem test for mingw.
5303         * modules/memmem-tests (configure.ac): Check for alarm.
5304         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
5305         it.
5306         * doc/functions/memmem.texi: New file.
5307         * doc/gnulib.texi (Function Substitutes): Add memmem.
5308         Reported by Bruno Haible.
5309
5310 2008-01-04  Bruno Haible  <bruno@clisp.org>
5311
5312         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
5313         Require gl_HEADER_STRINGS_H_DEFAULTS, not
5314         gl_HEADER_STRING_H_DEFAULTS.
5315
5316 2008-01-04  Eric Blake  <ebb9@byu.net>
5317
5318         Shorten duration of memmem test.
5319         * tests/test-memmem.c (main): Use alarm to declare failure if test
5320         is taking too long.
5321         Reported by Ralf Wildenhues.
5322
5323 2007-12-21  Simon Josefsson  <simon@josefsson.org>
5324
5325         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
5326         string, needed by strerror.
5327
5328 2008-01-03  Colin Watson  <cjwatson@debian.org>
5329             Bruno Haible  <bruno@clisp.org>
5330
5331         * doc/gnulib-tool.texi (Localization): New section.
5332
5333 2008-01-02  Bruno Haible  <bruno@clisp.org>
5334
5335         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
5336         variables to 'unsigned char *' type.
5337         Reported by Paul Eggert.
5338
5339 2008-01-02  Jim Meyering  <jim@meyering.net>
5340
5341         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
5342
5343 2007-12-31  Jim Meyering  <jim@meyering.net>
5344
5345         Avoid use of private FTS type name.
5346         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
5347
5348 2007-12-30  Karl Berry  <karl@gnu.org>
5349
5350         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
5351         work around defect in Texinfo and/or the standalone Info browser.
5352
5353 2007-12-30  Bruno Haible  <bruno@clisp.org>
5354
5355         Unify 5 copies of the KMP code.
5356         * lib/str-kmp.h: New file.
5357         * lib/c-strcasestr.c: Include str-kmp.h.
5358         (knuth_morris_pratt): Remove function.
5359         (c_strcasestr): Update.
5360         * lib/c-strstr.c: Include str-kmp.h.
5361         (knuth_morris_pratt): Remove function.
5362         (c_strcasestr): Update.
5363         * lib/mbscasestr.c: Include str-kmp.h.
5364         (knuth_morris_pratt_unibyte): Remove function.
5365         * lib/mbsstr.c: Include str-kmp.h.
5366         (knuth_morris_pratt_unibyte): Remove function.
5367         * lib/strcasestr.c: Include str-kmp.h.
5368         (knuth_morris_pratt): Remove function.
5369         (strcasestr): Update.
5370         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
5371         * modules/c-strstr (Files): Likewise.
5372         * modules/mbscasestr (Files): Likewise.
5373         * modules/mbsstr (Files): Likewise.
5374         * modules/strcasestr (Files): Likewise.
5375         Suggested by Paul Eggert.
5376
5377 2007-12-30  Bruno Haible  <bruno@clisp.org>
5378
5379         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
5380         defined.
5381
5382 2007-12-30  Bruno Haible  <bruno@clisp.org>
5383
5384         * lib/xmalloca.h: Include xalloc.h.
5385         (xnmalloca): New macro.
5386
5387 2007-12-30  Bruno Haible  <bruno@clisp.org>
5388
5389         * lib/malloca.h (nmalloca): New macro.
5390         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
5391         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
5392         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
5393         knuth_morris_pratt_multibyte): Likewise.
5394         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
5395         knuth_morris_pratt_multibyte): Likewise.
5396         * lib/memmem.c (knuth_morris_pratt): Likewise.
5397         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
5398
5399 2007-12-25  Bruno Haible  <bruno@clisp.org>
5400
5401         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
5402         * lib/glob.c: Don't include openat.h.
5403         (link_exists2_p): Add back the code that deals with the
5404         !GLOB_ALTDIRFUNC case.
5405         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
5406         let it do the filename concatenation.
5407         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
5408         * modules/glob (Depends-on): Remove openat.
5409
5410 2007-12-31  Bruno Haible  <bruno@clisp.org>
5411
5412         * modules/dirfd (License): Change to LGPLv2+.
5413         Approved by Jim Meyering.
5414
5415 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
5416
5417         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
5418         when multiplying M by sizeof (size_t).
5419
5420 2007-12-10  Martin Lambers  <marlam@marlam.de>
5421
5422         Override getpagesize on mingw.
5423         * lib/getpagesize.c: New file.
5424         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
5425         * modules/getpagesize (Files): Add lib/getpagesize.c.
5426         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
5427         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
5428         REPLACE_GETPAGESIZE.
5429         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
5430
5431 2007-12-25  Bruno Haible  <bruno@clisp.org>
5432
5433         * modules/localcharset (Notice): New field.
5434         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
5435         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
5436
5437 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
5438             Bruno Haible  <bruno@clisp.org>
5439
5440         Avoid using the syntax symbol() in formatted documentation.
5441         * MODULES.html.sh (func_module): When replacing symbol() with a
5442         hyperlink, remove the parentheses. Show an error if some remain.
5443         Recognize and render the '...' syntax.
5444         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
5445         Rework. Add paragraph about GCC's inlining.
5446         * doc/alloca.texi: Likewise.
5447         * doc/error.texi: Remove parentheses from symbol reference.
5448         * doc/gnulib-intro.texi: Likewise.
5449         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
5450         * modules/fnmatch (Description): Reword to say "the ... function".
5451         * modules/full-read (Description): Likewise.
5452         * modules/full-write (Description): Likewise.
5453         * modules/safe-read (Description): Likewise.
5454         * modules/safe-write (Description): Likewise.
5455         * modules/strchrnul (Description): Likewise.
5456         * modules/trim (Description): Likewise.
5457         * modules/error (Description): Remove parentheses from symbol
5458         references.
5459         * modules/verror (Description): Likewise.
5460         Reported by Karl Berry.
5461
5462 2007-12-25  Bruno Haible  <bruno@clisp.org>
5463
5464         Fixup after 2007-10-16 commit.
5465         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
5466
5467 2007-12-24  Bruno Haible  <bruno@clisp.org>
5468
5469         Make --enable-relocatable work with DESTDIR.
5470         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
5471         to compute installdir from destprog.
5472         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
5473         also set the RELOC_DESTDIR variable.
5474         Reported by Левашев Иван <octagram@bluebottle.com>.
5475
5476 2007-12-24  Bruno Haible  <bruno@clisp.org>
5477
5478         Fix link error due to xalloc_die().
5479         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
5480         of xreadlink.
5481         * lib/relocwrapper.c: Update comments.
5482         * build-aux/install-reloc: Remove xreadlink.c from file list.
5483         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
5484         xreadlink.c.
5485         Reported by Левашев Иван <octagram@bluebottle.com>.
5486
5487 2007-12-24  Bruno Haible  <bruno@clisp.org>
5488
5489         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
5490         * lib/setenv.h: Remove file.
5491         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
5492         lib/setenv.h.
5493         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
5494         (Depends-on): Add stdlib.
5495         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
5496         gl_FUNC_UNSETENV.
5497         (Include): Replace setenv.h with <stdlib.h>.
5498         * modules/unsetenv: New file.
5499         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
5500         * lib/unsetenv.c: Include <stdlib.h> first.
5501         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
5502         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
5503         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
5504         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
5505         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
5506         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
5507         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
5508         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
5509         * doc/functions/unsetenv.texi: Update.
5510         * modules/xsetenv (Depends-on): Add unsetenv.
5511         * modules/getdate (Depends-on): Likewise.
5512         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
5513         * lib/xsetenv.c: Don't include setenv.h.
5514         * lib/getdate.y: Likewise.
5515         * lib/relocwrapper.c: Likewise.
5516         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
5517         (Depends-on): Add stdlib.
5518         * NEWS: Mention the changes.
5519         Reported by Левашев Иван <octagram@bluebottle.com>.
5520
5521 2007-12-23  Bruno Haible  <bruno@clisp.org>
5522
5523         * lib/memmem.c (memmem): Use lowercase variable names. Tab
5524         indentation.
5525
5526 2007-12-23  Bruno Haible  <bruno@clisp.org>
5527
5528         * lib/c-strcasestr.c: Add more comments.
5529         * lib/c-strstr.c: Likewise.
5530         * lib/mbscasestr.c: Likewise.
5531         * lib/mbsstr.c: Likewise.
5532         * lib/strcasestr.c: Likewise.
5533         * lib/memmem.c: Likewise.
5534
5535 2007-12-23  Bruno Haible  <bruno@clisp.org>
5536
5537         * tests/test-memmem.c: Include <string.h> first.
5538
5539 2007-12-22  Bruno Haible  <bruno@clisp.org>
5540
5541         * gnulib-tool (func_create_testdir): Change $auxdir while generating
5542         the contents of $testsbase.
5543         Reported by Ralf Wildenhues.
5544
5545 2007-12-22  Bruno Haible  <bruno@clisp.org>
5546
5547         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
5548         two variables local_ldadd_before, local_ldadd_last.
5549
5550 2007-12-20  Eric Blake  <ebb9@byu.net>
5551
5552         Work around circular library issue when cross-compiling.
5553         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
5554         that progname.o does not need to pull in rpl_memcmp.
5555
5556 2007-12-19  Eric Blake  <ebb9@byu.net>
5557
5558         Fix memmem to avoid O(n^2) worst-case complexity.
5559         * lib/memmem.c (knuth_morris_pratt): New function.
5560         (memmem): Use it if first few naive iterations fail.
5561         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
5562         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
5563         * modules/memchr (License): Likewise.
5564         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
5565         malloca.
5566         * tests/test-memmem.c: Rewrite, borrowing ideas from
5567         test-mbsstr1.c; the old version wouldn't even compile!
5568         * modules/memmem-tests: New file.
5569         * lib/string.in.h (rpl_memmem): Add declaration.
5570         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
5571         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
5572         REPLACE_MEMMEM.
5573
5574 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
5575
5576         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
5577         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
5578         before any system include files, and undef after them all.  This
5579         should fix a problem on VMS reported by John E. Malmberg in
5580         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
5581
5582 2007-12-17  Eric Blake  <ebb9@byu.net>
5583
5584         Revert addition of verify, for BSD/OS.
5585         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
5586         can't handle large files, for the sake of obsolete platforms.
5587         * modules/fseeko (Depends-on): Remove verify.
5588         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
5589         * doc/functions/ftello.texi (ftello): Likewise.
5590         * doc/functions/fgetpos.texi (fgetpos): Likewise.
5591         Reported by Larry Jones.
5592
5593 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
5594
5595         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
5596         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
5597
5598 2007-12-17  Jim Meyering  <meyering@redhat.com>
5599
5600         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
5601         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
5602         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
5603         * modules/getcwd (Depends-on): Add openat.
5604         Reported by Petr Salinger.
5605
5606 2007-12-17  Bruno Haible  <bruno@clisp.org>
5607
5608         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
5609         avoid a segmentation fault of the configure test on x86_64 systems.
5610
5611 2007-12-15  Jim Meyering  <meyering@redhat.com>
5612
5613         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
5614
5615 2007-12-13  Eric Blake  <ebb9@byu.net>
5616
5617         Another fseek test.
5618         * tests/test-fseek.c (main): Also test ungetc handling.
5619         * tests/test-fseeko.c (main): Likewise.
5620         * modules/fseeko (Depends-on): Add verify.
5621         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
5622         large.
5623         Reported by Larry Jones.
5624
5625         Fix fseeko on mingw.
5626         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
5627         seek.
5628
5629         Beef up fseek tests.
5630         * tests/test-fseek.c (main): Also test eof handling.
5631         * tests/test-fseeko.c (main): Likewise.
5632         Reported by Larry Jones.
5633
5634 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
5635
5636         Fix fseeko on BSD-based platforms.
5637         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
5638         successful seek.
5639
5640 2007-12-12  Eric Blake  <ebb9@byu.net>
5641
5642         Allow circular dependency of separate libtests.a
5643         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
5644         when use_libtests.
5645
5646 2007-12-11  Eric Blake  <ebb9@byu.net>
5647
5648         Fix bug with -0.0L in previous patch.
5649         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
5650         * tests/test-isnan.c (main): Also test on zeroes.
5651         * tests/test-isnanf.c (main): Likewise.
5652         * tests/test-isnanl.h (main): Likewise.
5653
5654         Detect pseudo-denormals on x86 even when cross-compiling.
5655         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
5656         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
5657         invalid bit patterns that happen to satisfy ==.
5658
5659         Avoid link failures with separate libtests.a.
5660         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
5661         last, to satisfy circular dependencies.
5662
5663 2007-12-11  Eric Blake  <ebb9@byu.net>
5664         and Bruno Haible  <bruno@clisp.org>
5665
5666         Fix OpenBSD 4.0 <float.h> handling of long double.
5667         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
5668         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
5669         * doc/headers/float.texi (float.h): Document OpenBSD bug.
5670
5671 2007-12-11  Jim Meyering  <meyering@redhat.com>
5672
5673         * users.txt: Add libvirt.
5674
5675         Support versions of autoconf prior to 2.59c.
5676         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
5677         if it is not already defined.
5678
5679 2007-12-09  Bruno Haible  <bruno@clisp.org>
5680
5681         Let 'gnulib-tool --import' collect sources needed for the tests in
5682         tests/ rather than in lib/.
5683         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
5684         argument. If true, add rules to generate libtests.a, and put libtests.a
5685         into $(LDADD). Consider source files in subdirectories and set
5686         uses_subdirs.
5687         (func_emit_initmacro_start, func_emit_initmacro_end,
5688         func_emit_initmacro_done): Pass all arguments explicitly.
5689         (func_import): Determine two module lists main_modules,
5690         testsrelated_modules. Determine use_libtests. Determine two variables
5691         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
5692         instead of just sed_transform_lib_file. Determine two variables
5693         main_files and testsrelated_files. Compute 'files' as the union of
5694         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
5695         func_add_or_update. In the generated gnulib-comp.m4, collect the
5696         object files for tests/ in different variables than those for lib/.
5697         Substitute LIBTESTS_LIBDEPS.
5698         (func_create_testdir): Combine the uses_subdirs results from
5699         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
5700
5701 2007-12-09  Bruno Haible  <bruno@clisp.org>
5702
5703         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
5704         the build-aux directory.
5705
5706 2007-12-09  Bruno Haible  <bruno@clisp.org>
5707
5708         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
5709         introduced on 2006-09-09.
5710
5711 2007-12-07  Jim Meyering  <meyering@redhat.com>
5712
5713         Let these macros work also with autoconf-2.59.
5714         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
5715         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
5716         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
5717
5718 2007-12-06  Jim Meyering  <meyering@redhat.com>
5719
5720         Avoid a configure-time syntax error in gl_FUNC_ACL.
5721         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
5722         function in each branch, before testing the cache variable.
5723
5724 2007-12-04  Eric Blake  <ebb9@byu.net>
5725
5726         Make scripts executable.
5727         * build-aux/config.guess: Add execute permissions.
5728         * build-aux/config.sub: Likewise.
5729         * build-aux/gendocs.sh: Likewise.
5730
5731         Fix frexp on mingw.
5732         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
5733         cross-compiling.
5734         * doc/functions/frexp.texi (frexp): Document the bug.
5735
5736         Make cygwin fseeko check more reliable.
5737         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
5738         version numbers, rather than unrelated feature check.
5739         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
5740         * doc/functions/ftello.texi (ftello): Likewise.
5741         Reported by Bruno Haible.
5742
5743         * m4/strerror.m4: Bump version number.
5744
5745 2007-12-03  Bruno Haible  <bruno@clisp.org>
5746
5747         * doc/functions/mprotect.texi: Mention the mingw problem.
5748
5749 2007-12-03  Eric Blake  <ebb9@byu.net>
5750
5751         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
5752         REPLACE_STRERROR is initialized before this macro.
5753
5754 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
5755
5756         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
5757         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
5758         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
5759         put -lsec in even for programs other than 'ls'.  This fixes a problem
5760         for gettext reported by Bruno Haible in
5761         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
5762         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
5763         Add support for Solaris 10.  This isn't efficient, but should get the
5764         job done for now.
5765
5766 2007-12-03  James Youngman  <jay@gnu.org>
5767
5768         * doc/regexprops-generic.texi: change "an close-group" to "a
5769         close-group" and "illegal" to "not allowed".
5770
5771 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5772
5773         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
5774         pr_byname.h. Needed for the rare case when the maintainer has done
5775         "make maintainer-clean" in the source directory and then attempts a
5776         build outside the source directory.
5777         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
5778         scripts_byname.h.
5779
5780 2007-12-02  Martin Lambers <marlam@marlam.de>
5781             Bruno Haible  <bruno@clisp.org>
5782
5783         * lib/getpagesize.h: Remove file.
5784         * lib/unistd.in.h: Include declaration of getpagesize here.
5785         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
5786         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
5787         HAVE_SYS_PARAM_H.
5788         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
5789         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
5790         * modules/getpagesize (Files): Remove lib/getpagesize.h.
5791         (Depends-on): Add unistd.
5792         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
5793         (Include): Use <unistd.h> instead of getpagesize.h.
5794         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
5795         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
5796         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
5797         gl_GETPAGESIZE invocation, already handled by module dependency.
5798         * lib/pagealign_alloc.c: Don't include getpagesize.h.
5799
5800 2007-12-02  Bruno Haible  <bruno@clisp.org>
5801
5802         * modules/strings-tests: New file.
5803         * tests/test-strings.c: New file.
5804
5805         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
5806         * lib/strings.in.h: New file.
5807         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
5808         * m4/strings_h.m4: New file.
5809         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
5810         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
5811         * modules/strings: New file.
5812         * modules/string (Makefile.am): Update.
5813         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
5814         Reported by Karl Berry.
5815
5816 2007-12-01  Eric Blake  <ebb9@byu.net>
5817
5818         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
5819         accomodate fix in cygwin 1.5.25.
5820
5821 2007-12-01  Jim Meyering  <meyering@redhat.com>
5822
5823         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
5824         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
5825         that would inhibit utf8-optimization of a regexp containing line-
5826         or buffer-anchors, e.g., `^', `$'.
5827
5828 2007-11-30  Bruno Haible  <bruno@clisp.org>
5829
5830         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
5831         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
5832         glthread_recursive_lock_init.
5833         * lib/lock.c (glthread_recursive_lock_init)
5834         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
5835         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
5836
5837 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
5838
5839         New function qset_acl, like set_acl but with syscall semantics.
5840         * lib/acl.h (qset_acl): New decl.
5841         * lib/acl.c (qset_acl): New function.
5842         (set_acl): Use new function.  Use more-consistent diagnostics.
5843
5844 2007-11-28  Jim Meyering  <meyering@redhat.com>
5845
5846         * modules/physmem (License): Change from GPL to LGPLv2+.
5847
5848 2007-11-26  Bruno Haible  <bruno@clisp.org>
5849
5850         * lib/vasnprintf.c (decode_long_double): Don't abort if the
5851         'long double' type has excess precision.
5852         Reported by Jim Meyering in
5853         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
5854
5855 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5856
5857         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
5858         Sync from <http://gnu.org/licenses>.
5859         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
5860         with license text from same location.
5861         * doc/maintain.texi, doc/standards.texi:  Sync from
5862         <http://savannah.gnu.org/projects/gnustandards>.
5863
5864 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
5865         and Jim Meyering  <meyering@redhat.com>
5866
5867         Adjust getdate' grammar to accept a slightly more regular language.
5868         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
5869         Before, the former was rejected.
5870         * lib/getdate.y (digits_to_date_time): New function, factored
5871         out of ...
5872         (number): ...here.  Just call digits_to_date_time.
5873         (hybrid): New non-terminal to handle an <unsigned number,
5874         signed relative offset> sequence consistently.
5875
5876 2007-11-18  Jim Meyering  <meyering@redhat.com>
5877
5878         Pull my changes from coreutils:
5879         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
5880         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
5881         use of $gnulib_tool_option_extras, so that it's separated from the
5882         preceding argument.
5883
5884         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
5885         * build-aux/bootstrap (cp_mark_as_generated): Create any required
5886         parent destination directories before copying a file into place.
5887
5888 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
5889
5890         bootstrap: work also with 4-argument variant of AC_INIT
5891         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
5892
5893 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
5894
5895         Port test-getaddrinfo to Solaris.
5896         Problem reported by Bruno Haible in
5897         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
5898         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
5899         explanation of setting 'hints'.
5900         Don't reject an implementation merely because it returns EAI_SERVICE.
5901         (EAI_SERVICE): Define to 0 if not defined.
5902
5903 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
5904
5905         The license of gnu-make and posix-shell is now "GPLed build tool".
5906         * modules/gnu-make (License): Likewise.
5907         * modules/posix-shell (License): Likewise.
5908
5909         New module posix-shell, for determining a POSIX shell
5910         or perhaps something that is close enough to a POSIX shell.
5911         * m4/posix-shell.m4: New file.
5912         * modules/posix-shell: New file.
5913
5914         * MODULES.html.sh: Mention new module.
5915
5916         New module gnu-make, for determining whether we're using GNU Make.
5917         * m4/gnu-make.m4: New file.
5918         * modules/gnu-make: New file.
5919         * MODULES.html.sh: Mention new module.
5920
5921 2007-11-14  Jim Meyering  <meyering@redhat.com>
5922
5923         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
5924         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
5925         use this macro to create a function _definition_.
5926         Remove useless "#undef ARGMATCH_DIE".
5927
5928 2007-11-14  Bruno Haible  <bruno@clisp.org>
5929
5930         * lib/config.charset: Update for OpenBSD 4.1.
5931         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
5932
5933 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
5934
5935         Document 64-bit #if problems in stdint.texi.
5936         * doc/headers/stdint.texi (stdint.h): Mention problems with
5937         64-bit-#if, and how to work around them.
5938
5939         Don't insist on 'long long int' support in the preprocessor.  It
5940         breaks too many things.  For example, PRIdMAX still uses a 'long
5941         long int' format with the latest Sun compiler, even though
5942         HAVE_LONG_LONG_INT isn't defined due to that compiler's
5943         preprocessor problem.  This causes the latest coreutils to dump
5944         core on Solaris 10 sparc with the Sun C compiler.
5945         Instead, fix the 2007-10-16 problem in a different way, by evaluating
5946         the troublesome expressions at configure-time, not at #if-time.
5947         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
5948         preprocessor.
5949         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
5950         compile-time C checks, done at 'configure'-time.
5951         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
5952         * modules/inttypes (Makefile): Substitute the new symbols that
5953         gl_INTTYPES_H now generates.
5954         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
5955
5956 2007-11-12  Bruno Haible  <bruno@clisp.org>
5957
5958         Tests for Unicode character classification functions.
5959
5960         * modules/unictype/bidicategory-byname-tests: New file.
5961         * modules/unictype/bidicategory-name-tests: New file.
5962         * modules/unictype/bidicategory-of-tests: New file.
5963         * modules/unictype/bidicategory-test-tests: New file.
5964         * modules/unictype/block-list-tests: New file.
5965         * modules/unictype/block-of-tests: New file.
5966         * modules/unictype/block-test-tests: New file.
5967         * modules/unictype/category-C-tests: New file.
5968         * modules/unictype/category-Cc-tests: New file.
5969         * modules/unictype/category-Cf-tests: New file.
5970         * modules/unictype/category-Cn-tests: New file.
5971         * modules/unictype/category-Co-tests: New file.
5972         * modules/unictype/category-Cs-tests: New file.
5973         * modules/unictype/category-L-tests: New file.
5974         * modules/unictype/category-Ll-tests: New file.
5975         * modules/unictype/category-Lm-tests: New file.
5976         * modules/unictype/category-Lo-tests: New file.
5977         * modules/unictype/category-Lt-tests: New file.
5978         * modules/unictype/category-Lu-tests: New file.
5979         * modules/unictype/category-M-tests: New file.
5980         * modules/unictype/category-Mc-tests: New file.
5981         * modules/unictype/category-Me-tests: New file.
5982         * modules/unictype/category-Mn-tests: New file.
5983         * modules/unictype/category-N-tests: New file.
5984         * modules/unictype/category-Nd-tests: New file.
5985         * modules/unictype/category-Nl-tests: New file.
5986         * modules/unictype/category-No-tests: New file.
5987         * modules/unictype/category-P-tests: New file.
5988         * modules/unictype/category-Pc-tests: New file.
5989         * modules/unictype/category-Pd-tests: New file.
5990         * modules/unictype/category-Pe-tests: New file.
5991         * modules/unictype/category-Pf-tests: New file.
5992         * modules/unictype/category-Pi-tests: New file.
5993         * modules/unictype/category-Po-tests: New file.
5994         * modules/unictype/category-Ps-tests: New file.
5995         * modules/unictype/category-S-tests: New file.
5996         * modules/unictype/category-Sc-tests: New file.
5997         * modules/unictype/category-Sk-tests: New file.
5998         * modules/unictype/category-Sm-tests: New file.
5999         * modules/unictype/category-So-tests: New file.
6000         * modules/unictype/category-Z-tests: New file.
6001         * modules/unictype/category-Zl-tests: New file.
6002         * modules/unictype/category-Zp-tests: New file.
6003         * modules/unictype/category-Zs-tests: New file.
6004         * modules/unictype/category-and-not-tests: New file.
6005         * modules/unictype/category-and-tests: New file.
6006         * modules/unictype/category-byname-tests: New file.
6007         * modules/unictype/category-name-tests: New file.
6008         * modules/unictype/category-none-tests: New file.
6009         * modules/unictype/category-of-tests: New file.
6010         * modules/unictype/category-or-tests: New file.
6011         * modules/unictype/category-test-withtable-tests: New file.
6012         * modules/unictype/combining-class-tests: New file.
6013         * modules/unictype/ctype-alnum-tests: New file.
6014         * modules/unictype/ctype-alpha-tests: New file.
6015         * modules/unictype/ctype-blank-tests: New file.
6016         * modules/unictype/ctype-cntrl-tests: New file.
6017         * modules/unictype/ctype-digit-tests: New file.
6018         * modules/unictype/ctype-graph-tests: New file.
6019         * modules/unictype/ctype-lower-tests: New file.
6020         * modules/unictype/ctype-print-tests: New file.
6021         * modules/unictype/ctype-punct-tests: New file.
6022         * modules/unictype/ctype-space-tests: New file.
6023         * modules/unictype/ctype-upper-tests: New file.
6024         * modules/unictype/ctype-xdigit-tests: New file.
6025         * modules/unictype/decimal-digit-tests: New file.
6026         * modules/unictype/digit-tests: New file.
6027         * modules/unictype/mirror-tests: New file.
6028         * modules/unictype/numeric-tests: New file.
6029         * modules/unictype/property-alphabetic-tests: New file.
6030         * modules/unictype/property-ascii-hex-digit-tests: New file.
6031         * modules/unictype/property-bidi-arabic-digit-tests: New file.
6032         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
6033         * modules/unictype/property-bidi-block-separator-tests: New file.
6034         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
6035         * modules/unictype/property-bidi-common-separator-tests: New file.
6036         * modules/unictype/property-bidi-control-tests: New file.
6037         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
6038         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
6039         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
6040         * modules/unictype/property-bidi-european-digit-tests: New file.
6041         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
6042         * modules/unictype/property-bidi-left-to-right-tests: New file.
6043         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
6044         * modules/unictype/property-bidi-other-neutral-tests: New file.
6045         * modules/unictype/property-bidi-pdf-tests: New file.
6046         * modules/unictype/property-bidi-segment-separator-tests: New file.
6047         * modules/unictype/property-bidi-whitespace-tests: New file.
6048         * modules/unictype/property-byname-tests: New file.
6049         * modules/unictype/property-combining-tests: New file.
6050         * modules/unictype/property-composite-tests: New file.
6051         * modules/unictype/property-currency-symbol-tests: New file.
6052         * modules/unictype/property-dash-tests: New file.
6053         * modules/unictype/property-decimal-digit-tests: New file.
6054         * modules/unictype/property-default-ignorable-code-point-tests: New file.
6055         * modules/unictype/property-deprecated-tests: New file.
6056         * modules/unictype/property-diacritic-tests: New file.
6057         * modules/unictype/property-extender-tests: New file.
6058         * modules/unictype/property-format-control-tests: New file.
6059         * modules/unictype/property-grapheme-base-tests: New file.
6060         * modules/unictype/property-grapheme-extend-tests: New file.
6061         * modules/unictype/property-grapheme-link-tests: New file.
6062         * modules/unictype/property-hex-digit-tests: New file.
6063         * modules/unictype/property-hyphen-tests: New file.
6064         * modules/unictype/property-id-continue-tests: New file.
6065         * modules/unictype/property-id-start-tests: New file.
6066         * modules/unictype/property-ideographic-tests: New file.
6067         * modules/unictype/property-ids-binary-operator-tests: New file.
6068         * modules/unictype/property-ids-trinary-operator-tests: New file.
6069         * modules/unictype/property-ignorable-control-tests: New file.
6070         * modules/unictype/property-iso-control-tests: New file.
6071         * modules/unictype/property-join-control-tests: New file.
6072         * modules/unictype/property-left-of-pair-tests: New file.
6073         * modules/unictype/property-line-separator-tests: New file.
6074         * modules/unictype/property-logical-order-exception-tests: New file.
6075         * modules/unictype/property-lowercase-tests: New file.
6076         * modules/unictype/property-math-tests: New file.
6077         * modules/unictype/property-non-break-tests: New file.
6078         * modules/unictype/property-not-a-character-tests: New file.
6079         * modules/unictype/property-numeric-tests: New file.
6080         * modules/unictype/property-other-alphabetic-tests: New file.
6081         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
6082         * modules/unictype/property-other-grapheme-extend-tests: New file.
6083         * modules/unictype/property-other-id-continue-tests: New file.
6084         * modules/unictype/property-other-id-start-tests: New file.
6085         * modules/unictype/property-other-lowercase-tests: New file.
6086         * modules/unictype/property-other-math-tests: New file.
6087         * modules/unictype/property-other-uppercase-tests: New file.
6088         * modules/unictype/property-paired-punctuation-tests: New file.
6089         * modules/unictype/property-paragraph-separator-tests: New file.
6090         * modules/unictype/property-pattern-syntax-tests: New file.
6091         * modules/unictype/property-pattern-white-space-tests: New file.
6092         * modules/unictype/property-private-use-tests: New file.
6093         * modules/unictype/property-punctuation-tests: New file.
6094         * modules/unictype/property-quotation-mark-tests: New file.
6095         * modules/unictype/property-radical-tests: New file.
6096         * modules/unictype/property-sentence-terminal-tests: New file.
6097         * modules/unictype/property-soft-dotted-tests: New file.
6098         * modules/unictype/property-space-tests: New file.
6099         * modules/unictype/property-terminal-punctuation-tests: New file.
6100         * modules/unictype/property-test-tests: New file.
6101         * modules/unictype/property-titlecase-tests: New file.
6102         * modules/unictype/property-unassigned-code-value-tests: New file.
6103         * modules/unictype/property-unified-ideograph-tests: New file.
6104         * modules/unictype/property-uppercase-tests: New file.
6105         * modules/unictype/property-variation-selector-tests: New file.
6106         * modules/unictype/property-white-space-tests: New file.
6107         * modules/unictype/property-xid-continue-tests: New file.
6108         * modules/unictype/property-xid-start-tests: New file.
6109         * modules/unictype/property-zero-width-tests: New file.
6110         * modules/unictype/scripts-tests: New file.
6111         * modules/unictype/syntax-c-ident-tests: New file.
6112         * modules/unictype/syntax-c-whitespace-tests: New file.
6113         * modules/unictype/syntax-java-ident-tests: New file.
6114         * modules/unictype/syntax-java-whitespace-tests: New file.
6115         * tests/unictype/test-bidi_byname.c: New file.
6116         * tests/unictype/test-bidi_name.c: New file.
6117         * tests/unictype/test-bidi_of.c: New file.
6118         * tests/unictype/test-bidi_test.c: New file.
6119         * tests/unictype/test-block_list.c: New file.
6120         * tests/unictype/test-block_of.c: New file.
6121         * tests/unictype/test-block_test.c: New file.
6122         * tests/unictype/test-categ_and.c: New file.
6123         * tests/unictype/test-categ_and_not.c: New file.
6124         * tests/unictype/test-categ_byname.c: New file.
6125         * tests/unictype/test-categ_name.c: New file.
6126         * tests/unictype/test-categ_none.c: New file.
6127         * tests/unictype/test-categ_of.c: New file.
6128         * tests/unictype/test-categ_or.c: New file.
6129         * tests/unictype/test-categ_test_withtable.c: New file.
6130         * tests/unictype/test-combining.c: New file.
6131         * tests/unictype/test-decdigit.c: New file.
6132         * tests/unictype/test-digit.c: New file.
6133         * tests/unictype/test-mirror.c: New file.
6134         * tests/unictype/test-numeric.c: New file.
6135         * tests/unictype/test-pr_byname.c: New file.
6136         * tests/unictype/test-pr_test.c: New file.
6137         * tests/unictype/test-predicate-part1.h: New file.
6138         * tests/unictype/test-predicate-part2.h: New file.
6139         * tests/unictype/test-scripts.c: New file.
6140         * tests/unictype/test-sy_c_ident.c: New file.
6141         * tests/unictype/test-sy_java_ident.c: New file.
6142
6143         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
6144         for Unicode 5.0.0.
6145         * tests/unictype/test-categ_Cc.c: Likewise.
6146         * tests/unictype/test-categ_Cf.c: Likewise.
6147         * tests/unictype/test-categ_Cn.c: Likewise.
6148         * tests/unictype/test-categ_Co.c: Likewise.
6149         * tests/unictype/test-categ_Cs.c: Likewise.
6150         * tests/unictype/test-categ_L.c: Likewise.
6151         * tests/unictype/test-categ_Ll.c: Likewise.
6152         * tests/unictype/test-categ_Lm.c: Likewise.
6153         * tests/unictype/test-categ_Lo.c: Likewise.
6154         * tests/unictype/test-categ_Lt.c: Likewise.
6155         * tests/unictype/test-categ_Lu.c: Likewise.
6156         * tests/unictype/test-categ_M.c: Likewise.
6157         * tests/unictype/test-categ_Mc.c: Likewise.
6158         * tests/unictype/test-categ_Me.c: Likewise.
6159         * tests/unictype/test-categ_Mn.c: Likewise.
6160         * tests/unictype/test-categ_N.c: Likewise.
6161         * tests/unictype/test-categ_Nd.c: Likewise.
6162         * tests/unictype/test-categ_Nl.c: Likewise.
6163         * tests/unictype/test-categ_No.c: Likewise.
6164         * tests/unictype/test-categ_P.c: Likewise.
6165         * tests/unictype/test-categ_Pc.c: Likewise.
6166         * tests/unictype/test-categ_Pd.c: Likewise.
6167         * tests/unictype/test-categ_Pe.c: Likewise.
6168         * tests/unictype/test-categ_Pf.c: Likewise.
6169         * tests/unictype/test-categ_Pi.c: Likewise.
6170         * tests/unictype/test-categ_Po.c: Likewise.
6171         * tests/unictype/test-categ_Ps.c: Likewise.
6172         * tests/unictype/test-categ_S.c: Likewise.
6173         * tests/unictype/test-categ_Sc.c: Likewise.
6174         * tests/unictype/test-categ_Sk.c: Likewise.
6175         * tests/unictype/test-categ_Sm.c: Likewise.
6176         * tests/unictype/test-categ_So.c: Likewise.
6177         * tests/unictype/test-categ_Z.c: Likewise.
6178         * tests/unictype/test-categ_Zl.c: Likewise.
6179         * tests/unictype/test-categ_Zp.c: Likewise.
6180         * tests/unictype/test-categ_Zs.c: Likewise.
6181         * tests/unictype/test-ctype_alnum.c: Likewise.
6182         * tests/unictype/test-ctype_alpha.c: Likewise.
6183         * tests/unictype/test-ctype_blank.c: Likewise.
6184         * tests/unictype/test-ctype_cntrl.c: Likewise.
6185         * tests/unictype/test-ctype_digit.c: Likewise.
6186         * tests/unictype/test-ctype_graph.c: Likewise.
6187         * tests/unictype/test-ctype_lower.c: Likewise.
6188         * tests/unictype/test-ctype_print.c: Likewise.
6189         * tests/unictype/test-ctype_punct.c: Likewise.
6190         * tests/unictype/test-ctype_space.c: Likewise.
6191         * tests/unictype/test-ctype_upper.c: Likewise.
6192         * tests/unictype/test-ctype_xdigit.c: Likewise.
6193         * tests/unictype/test-decdigit.h: Likewise.
6194         * tests/unictype/test-digit.h: Likewise.
6195         * tests/unictype/test-numeric.h: Likewise.
6196         * tests/unictype/test-pr_alphabetic.c: Likewise.
6197         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
6198         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
6199         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
6200         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
6201         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
6202         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
6203         * tests/unictype/test-pr_bidi_control.c: Likewise.
6204         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
6205         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
6206         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
6207         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
6208         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
6209         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
6210         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
6211         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
6212         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
6213         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
6214         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
6215         * tests/unictype/test-pr_combining.c: Likewise.
6216         * tests/unictype/test-pr_composite.c: Likewise.
6217         * tests/unictype/test-pr_currency_symbol.c: Likewise.
6218         * tests/unictype/test-pr_dash.c: Likewise.
6219         * tests/unictype/test-pr_decimal_digit.c: Likewise.
6220         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
6221         * tests/unictype/test-pr_deprecated.c: Likewise.
6222         * tests/unictype/test-pr_diacritic.c: Likewise.
6223         * tests/unictype/test-pr_extender.c: Likewise.
6224         * tests/unictype/test-pr_format_control.c: Likewise.
6225         * tests/unictype/test-pr_grapheme_base.c: Likewise.
6226         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
6227         * tests/unictype/test-pr_grapheme_link.c: Likewise.
6228         * tests/unictype/test-pr_hex_digit.c: Likewise.
6229         * tests/unictype/test-pr_hyphen.c: Likewise.
6230         * tests/unictype/test-pr_id_continue.c: Likewise.
6231         * tests/unictype/test-pr_id_start.c: Likewise.
6232         * tests/unictype/test-pr_ideographic.c: Likewise.
6233         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
6234         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
6235         * tests/unictype/test-pr_ignorable_control.c: Likewise.
6236         * tests/unictype/test-pr_iso_control.c: Likewise.
6237         * tests/unictype/test-pr_join_control.c: Likewise.
6238         * tests/unictype/test-pr_left_of_pair.c: Likewise.
6239         * tests/unictype/test-pr_line_separator.c: Likewise.
6240         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
6241         * tests/unictype/test-pr_lowercase.c: Likewise.
6242         * tests/unictype/test-pr_math.c: Likewise.
6243         * tests/unictype/test-pr_non_break.c: Likewise.
6244         * tests/unictype/test-pr_not_a_character.c: Likewise.
6245         * tests/unictype/test-pr_numeric.c: Likewise.
6246         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
6247         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
6248         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
6249         * tests/unictype/test-pr_other_id_continue.c: Likewise.
6250         * tests/unictype/test-pr_other_id_start.c: Likewise.
6251         * tests/unictype/test-pr_other_lowercase.c: Likewise.
6252         * tests/unictype/test-pr_other_math.c: Likewise.
6253         * tests/unictype/test-pr_other_uppercase.c: Likewise.
6254         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
6255         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
6256         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
6257         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
6258         * tests/unictype/test-pr_private_use.c: Likewise.
6259         * tests/unictype/test-pr_punctuation.c: Likewise.
6260         * tests/unictype/test-pr_quotation_mark.c: Likewise.
6261         * tests/unictype/test-pr_radical.c: Likewise.
6262         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
6263         * tests/unictype/test-pr_soft_dotted.c: Likewise.
6264         * tests/unictype/test-pr_space.c: Likewise.
6265         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
6266         * tests/unictype/test-pr_titlecase.c: Likewise.
6267         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
6268         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
6269         * tests/unictype/test-pr_uppercase.c: Likewise.
6270         * tests/unictype/test-pr_variation_selector.c: Likewise.
6271         * tests/unictype/test-pr_white_space.c: Likewise.
6272         * tests/unictype/test-pr_xid_continue.c: Likewise.
6273         * tests/unictype/test-pr_xid_start.c: Likewise.
6274         * tests/unictype/test-pr_zero_width.c: Likewise.
6275         * tests/unictype/test-sy_c_whitespace.c: Likewise.
6276         * tests/unictype/test-sy_java_whitespace.c: Likewise.
6277
6278 2007-11-12  Bruno Haible  <bruno@clisp.org>
6279
6280         Unicode character classification functions.
6281         * lib/unictype.h: New file.
6282         * modules/unictype/base: New file.
6283         * modules/unictype/category-L: New file.
6284         * modules/unictype/category-Lu: New file.
6285         * modules/unictype/category-Ll: New file.
6286         * modules/unictype/category-Lt: New file.
6287         * modules/unictype/category-Lm: New file.
6288         * modules/unictype/category-Lo: New file.
6289         * modules/unictype/category-M: New file.
6290         * modules/unictype/category-Mn: New file.
6291         * modules/unictype/category-Mc: New file.
6292         * modules/unictype/category-Me: New file.
6293         * modules/unictype/category-N: New file.
6294         * modules/unictype/category-Nd: New file.
6295         * modules/unictype/category-Nl: New file.
6296         * modules/unictype/category-No: New file.
6297         * modules/unictype/category-P: New file.
6298         * modules/unictype/category-Pc: New file.
6299         * modules/unictype/category-Pd: New file.
6300         * modules/unictype/category-Ps: New file.
6301         * modules/unictype/category-Pe: New file.
6302         * modules/unictype/category-Pi: New file.
6303         * modules/unictype/category-Pf: New file.
6304         * modules/unictype/category-Po: New file.
6305         * modules/unictype/category-S: New file.
6306         * modules/unictype/category-Sm: New file.
6307         * modules/unictype/category-Sc: New file.
6308         * modules/unictype/category-Sk: New file.
6309         * modules/unictype/category-So: New file.
6310         * modules/unictype/category-Z: New file.
6311         * modules/unictype/category-Zs: New file.
6312         * modules/unictype/category-Zl: New file.
6313         * modules/unictype/category-Zp: New file.
6314         * modules/unictype/category-C: New file.
6315         * modules/unictype/category-Cc: New file.
6316         * modules/unictype/category-Cf: New file.
6317         * modules/unictype/category-Cs: New file.
6318         * modules/unictype/category-Co: New file.
6319         * modules/unictype/category-Cn: New file.
6320         * modules/unictype/category-or: New file.
6321         * modules/unictype/category-of: New file.
6322         * modules/unictype/category-test: New file.
6323         * modules/unictype/category-test-withtable: New file.
6324         * modules/unictype/category-byname: New file.
6325         * modules/unictype/category-none: New file.
6326         * modules/unictype/category-and: New file.
6327         * modules/unictype/category-and-not: New file.
6328         * modules/unictype/category-name: New file.
6329         * modules/unictype/combining-class: New file.
6330         * modules/unictype/category-all: New file.
6331         * modules/unictype/bidicategory-all: New file.
6332         * modules/unictype/bidicategory-byname: New file.
6333         * modules/unictype/bidicategory-name: New file.
6334         * modules/unictype/bidicategory-of: New file.
6335         * modules/unictype/bidicategory-test: New file.
6336         * modules/unictype/decimal-digit: New file.
6337         * modules/unictype/digit: New file.
6338         * modules/unictype/numeric: New file.
6339         * modules/unictype/mirror: New file.
6340         * modules/unictype/property-white-space: New file.
6341         * modules/unictype/property-alphabetic: New file.
6342         * modules/unictype/property-other-alphabetic: New file.
6343         * modules/unictype/property-not-a-character: New file.
6344         * modules/unictype/property-default-ignorable-code-point: New file.
6345         * modules/unictype/property-other-default-ignorable-code-point: New
6346         file.
6347         * modules/unictype/property-deprecated: New file.
6348         * modules/unictype/property-logical-order-exception: New file.
6349         * modules/unictype/property-variation-selector: New file.
6350         * modules/unictype/property-private-use: New file.
6351         * modules/unictype/property-unassigned-code-value: New file.
6352         * modules/unictype/property-uppercase: New file.
6353         * modules/unictype/property-other-uppercase: New file.
6354         * modules/unictype/property-lowercase: New file.
6355         * modules/unictype/property-other-lowercase: New file.
6356         * modules/unictype/property-titlecase: New file.
6357         * modules/unictype/property-soft-dotted: New file.
6358         * modules/unictype/property-id-start: New file.
6359         * modules/unictype/property-other-id-start: New file.
6360         * modules/unictype/property-id-continue: New file.
6361         * modules/unictype/property-other-id-continue: New file.
6362         * modules/unictype/property-xid-start: New file.
6363         * modules/unictype/property-xid-continue: New file.
6364         * modules/unictype/property-pattern-white-space: New file.
6365         * modules/unictype/property-pattern-syntax: New file.
6366         * modules/unictype/property-join-control: New file.
6367         * modules/unictype/property-grapheme-base: New file.
6368         * modules/unictype/property-grapheme-extend: New file.
6369         * modules/unictype/property-other-grapheme-extend: New file.
6370         * modules/unictype/property-grapheme-link: New file.
6371         * modules/unictype/property-bidi-control: New file.
6372         * modules/unictype/property-bidi-left-to-right: New file.
6373         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
6374         * modules/unictype/property-bidi-arabic-right-to-left: New file.
6375         * modules/unictype/property-bidi-european-digit: New file.
6376         * modules/unictype/property-bidi-eur-num-separator: New file.
6377         * modules/unictype/property-bidi-eur-num-terminator: New file.
6378         * modules/unictype/property-bidi-arabic-digit: New file.
6379         * modules/unictype/property-bidi-common-separator: New file.
6380         * modules/unictype/property-bidi-block-separator: New file.
6381         * modules/unictype/property-bidi-segment-separator: New file.
6382         * modules/unictype/property-bidi-whitespace: New file.
6383         * modules/unictype/property-bidi-non-spacing-mark: New file.
6384         * modules/unictype/property-bidi-boundary-neutral: New file.
6385         * modules/unictype/property-bidi-pdf: New file.
6386         * modules/unictype/property-bidi-embedding-or-override: New file.
6387         * modules/unictype/property-bidi-other-neutral: New file.
6388         * modules/unictype/property-hex-digit: New file.
6389         * modules/unictype/property-ascii-hex-digit: New file.
6390         * modules/unictype/property-ideographic: New file.
6391         * modules/unictype/property-unified-ideograph: New file.
6392         * modules/unictype/property-radical: New file.
6393         * modules/unictype/property-ids-binary-operator: New file.
6394         * modules/unictype/property-ids-trinary-operator: New file.
6395         * modules/unictype/property-zero-width: New file.
6396         * modules/unictype/property-space: New file.
6397         * modules/unictype/property-non-break: New file.
6398         * modules/unictype/property-iso-control: New file.
6399         * modules/unictype/property-format-control: New file.
6400         * modules/unictype/property-dash: New file.
6401         * modules/unictype/property-hyphen: New file.
6402         * modules/unictype/property-punctuation: New file.
6403         * modules/unictype/property-line-separator: New file.
6404         * modules/unictype/property-paragraph-separator: New file.
6405         * modules/unictype/property-quotation-mark: New file.
6406         * modules/unictype/property-sentence-terminal: New file.
6407         * modules/unictype/property-terminal-punctuation: New file.
6408         * modules/unictype/property-currency-symbol: New file.
6409         * modules/unictype/property-math: New file.
6410         * modules/unictype/property-other-math: New file.
6411         * modules/unictype/property-paired-punctuation: New file.
6412         * modules/unictype/property-left-of-pair: New file.
6413         * modules/unictype/property-combining: New file.
6414         * modules/unictype/property-composite: New file.
6415         * modules/unictype/property-decimal-digit: New file.
6416         * modules/unictype/property-numeric: New file.
6417         * modules/unictype/property-diacritic: New file.
6418         * modules/unictype/property-extender: New file.
6419         * modules/unictype/property-ignorable-control: New file.
6420         * modules/unictype/property-test: New file.
6421         * modules/unictype/property-byname: New file.
6422         * modules/unictype/property-all: New file.
6423         * modules/unictype/scripts: New file.
6424         * modules/unictype/scripts-all: New file.
6425         * modules/unictype/block-of: New file.
6426         * modules/unictype/block-test: New file.
6427         * modules/unictype/block-list: New file.
6428         * modules/unictype/block-all: New file.
6429         * modules/unictype/syntax-c-whitespace: New file.
6430         * modules/unictype/syntax-java-whitespace: New file.
6431         * modules/unictype/syntax-c-ident: New file.
6432         * modules/unictype/syntax-java-ident: New file.
6433         * modules/unictype/ctype-alnum: New file.
6434         * modules/unictype/ctype-alpha: New file.
6435         * modules/unictype/ctype-cntrl: New file.
6436         * modules/unictype/ctype-digit: New file.
6437         * modules/unictype/ctype-graph: New file.
6438         * modules/unictype/ctype-lower: New file.
6439         * modules/unictype/ctype-print: New file.
6440         * modules/unictype/ctype-punct: New file.
6441         * modules/unictype/ctype-space: New file.
6442         * modules/unictype/ctype-upper: New file.
6443         * modules/unictype/ctype-xdigit: New file.
6444         * modules/unictype/ctype-blank: New file.
6445         * lib/unictype/bidi_byname.c: New file.
6446         * lib/unictype/bidi_name.c: New file.
6447         * lib/unictype/bidi_of.c: New file.
6448         * lib/unictype/bidi_test.c: New file.
6449         * lib/unictype/bitmap.h: New file.
6450         * lib/unictype/block_test.c: New file.
6451         * lib/unictype/blocks.c: New file.
6452         * lib/unictype/categ_C.c: New file.
6453         * lib/unictype/categ_Cc.c: New file.
6454         * lib/unictype/categ_Cf.c: New file.
6455         * lib/unictype/categ_Cn.c: New file.
6456         * lib/unictype/categ_Co.c: New file.
6457         * lib/unictype/categ_Cs.c: New file.
6458         * lib/unictype/categ_L.c: New file.
6459         * lib/unictype/categ_Ll.c: New file.
6460         * lib/unictype/categ_Lm.c: New file.
6461         * lib/unictype/categ_Lo.c: New file.
6462         * lib/unictype/categ_Lt.c: New file.
6463         * lib/unictype/categ_Lu.c: New file.
6464         * lib/unictype/categ_M.c: New file.
6465         * lib/unictype/categ_Mc.c: New file.
6466         * lib/unictype/categ_Me.c: New file.
6467         * lib/unictype/categ_Mn.c: New file.
6468         * lib/unictype/categ_N.c: New file.
6469         * lib/unictype/categ_Nd.c: New file.
6470         * lib/unictype/categ_Nl.c: New file.
6471         * lib/unictype/categ_No.c: New file.
6472         * lib/unictype/categ_P.c: New file.
6473         * lib/unictype/categ_Pc.c: New file.
6474         * lib/unictype/categ_Pd.c: New file.
6475         * lib/unictype/categ_Pe.c: New file.
6476         * lib/unictype/categ_Pf.c: New file.
6477         * lib/unictype/categ_Pi.c: New file.
6478         * lib/unictype/categ_Po.c: New file.
6479         * lib/unictype/categ_Ps.c: New file.
6480         * lib/unictype/categ_S.c: New file.
6481         * lib/unictype/categ_Sc.c: New file.
6482         * lib/unictype/categ_Sk.c: New file.
6483         * lib/unictype/categ_Sm.c: New file.
6484         * lib/unictype/categ_So.c: New file.
6485         * lib/unictype/categ_Z.c: New file.
6486         * lib/unictype/categ_Zl.c: New file.
6487         * lib/unictype/categ_Zp.c: New file.
6488         * lib/unictype/categ_Zs.c: New file.
6489         * lib/unictype/categ_and.c: New file.
6490         * lib/unictype/categ_and_not.c: New file.
6491         * lib/unictype/categ_byname.c: New file.
6492         * lib/unictype/categ_name.c: New file.
6493         * lib/unictype/categ_none.c: New file.
6494         * lib/unictype/categ_of.c: New file.
6495         * lib/unictype/categ_or.c: New file.
6496         * lib/unictype/categ_test.c: New file.
6497         * lib/unictype/combining.c: New file.
6498         * lib/unictype/ctype_alnum.c: New file.
6499         * lib/unictype/ctype_alpha.c: New file.
6500         * lib/unictype/ctype_blank.c: New file.
6501         * lib/unictype/ctype_cntrl.c: New file.
6502         * lib/unictype/ctype_digit.c: New file.
6503         * lib/unictype/ctype_graph.c: New file.
6504         * lib/unictype/ctype_lower.c: New file.
6505         * lib/unictype/ctype_print.c: New file.
6506         * lib/unictype/ctype_punct.c: New file.
6507         * lib/unictype/ctype_space.c: New file.
6508         * lib/unictype/ctype_upper.c: New file.
6509         * lib/unictype/ctype_xdigit.c: New file.
6510         * lib/unictype/decdigit.c: New file.
6511         * lib/unictype/digit.c: New file.
6512         * lib/unictype/identsyntaxmap.h: New file.
6513         * lib/unictype/mirror.c: New file.
6514         * lib/unictype/numeric.c: New file.
6515         * lib/unictype/pr_alphabetic.c: New file.
6516         * lib/unictype/pr_ascii_hex_digit.c: New file.
6517         * lib/unictype/pr_bidi_arabic_digit.c: New file.
6518         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
6519         * lib/unictype/pr_bidi_block_separator.c: New file.
6520         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
6521         * lib/unictype/pr_bidi_common_separator.c: New file.
6522         * lib/unictype/pr_bidi_control.c: New file.
6523         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
6524         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
6525         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
6526         * lib/unictype/pr_bidi_european_digit.c: New file.
6527         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
6528         * lib/unictype/pr_bidi_left_to_right.c: New file.
6529         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
6530         * lib/unictype/pr_bidi_other_neutral.c: New file.
6531         * lib/unictype/pr_bidi_pdf.c: New file.
6532         * lib/unictype/pr_bidi_segment_separator.c: New file.
6533         * lib/unictype/pr_bidi_whitespace.c: New file.
6534         * lib/unictype/pr_byname.c: New file.
6535         * lib/unictype/pr_byname.gperf: New file.
6536         * lib/unictype/pr_combining.c: New file.
6537         * lib/unictype/pr_composite.c: New file.
6538         * lib/unictype/pr_currency_symbol.c: New file.
6539         * lib/unictype/pr_dash.c: New file.
6540         * lib/unictype/pr_decimal_digit.c: New file.
6541         * lib/unictype/pr_default_ignorable_code_point.c: New file.
6542         * lib/unictype/pr_deprecated.c: New file.
6543         * lib/unictype/pr_diacritic.c: New file.
6544         * lib/unictype/pr_extender.c: New file.
6545         * lib/unictype/pr_format_control.c: New file.
6546         * lib/unictype/pr_grapheme_base.c: New file.
6547         * lib/unictype/pr_grapheme_extend.c: New file.
6548         * lib/unictype/pr_grapheme_link.c: New file.
6549         * lib/unictype/pr_hex_digit.c: New file.
6550         * lib/unictype/pr_hyphen.c: New file.
6551         * lib/unictype/pr_id_continue.c: New file.
6552         * lib/unictype/pr_id_start.c: New file.
6553         * lib/unictype/pr_ideographic.c: New file.
6554         * lib/unictype/pr_ids_binary_operator.c: New file.
6555         * lib/unictype/pr_ids_trinary_operator.c: New file.
6556         * lib/unictype/pr_ignorable_control.c: New file.
6557         * lib/unictype/pr_iso_control.c: New file.
6558         * lib/unictype/pr_join_control.c: New file.
6559         * lib/unictype/pr_left_of_pair.c: New file.
6560         * lib/unictype/pr_line_separator.c: New file.
6561         * lib/unictype/pr_logical_order_exception.c: New file.
6562         * lib/unictype/pr_lowercase.c: New file.
6563         * lib/unictype/pr_math.c: New file.
6564         * lib/unictype/pr_non_break.c: New file.
6565         * lib/unictype/pr_not_a_character.c: New file.
6566         * lib/unictype/pr_numeric.c: New file.
6567         * lib/unictype/pr_other_alphabetic.c: New file.
6568         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
6569         * lib/unictype/pr_other_grapheme_extend.c: New file.
6570         * lib/unictype/pr_other_id_continue.c: New file.
6571         * lib/unictype/pr_other_id_start.c: New file.
6572         * lib/unictype/pr_other_lowercase.c: New file.
6573         * lib/unictype/pr_other_math.c: New file.
6574         * lib/unictype/pr_other_uppercase.c: New file.
6575         * lib/unictype/pr_paired_punctuation.c: New file.
6576         * lib/unictype/pr_paragraph_separator.c: New file.
6577         * lib/unictype/pr_pattern_syntax.c: New file.
6578         * lib/unictype/pr_pattern_white_space.c: New file.
6579         * lib/unictype/pr_private_use.c: New file.
6580         * lib/unictype/pr_punctuation.c: New file.
6581         * lib/unictype/pr_quotation_mark.c: New file.
6582         * lib/unictype/pr_radical.c: New file.
6583         * lib/unictype/pr_sentence_terminal.c: New file.
6584         * lib/unictype/pr_soft_dotted.c: New file.
6585         * lib/unictype/pr_space.c: New file.
6586         * lib/unictype/pr_terminal_punctuation.c: New file.
6587         * lib/unictype/pr_test.c: New file.
6588         * lib/unictype/pr_titlecase.c: New file.
6589         * lib/unictype/pr_unassigned_code_value.c: New file.
6590         * lib/unictype/pr_unified_ideograph.c: New file.
6591         * lib/unictype/pr_uppercase.c: New file.
6592         * lib/unictype/pr_variation_selector.c: New file.
6593         * lib/unictype/pr_white_space.c: New file.
6594         * lib/unictype/pr_xid_continue.c: New file.
6595         * lib/unictype/pr_xid_start.c: New file.
6596         * lib/unictype/pr_zero_width.c: New file.
6597         * lib/unictype/scripts.c: New file.
6598         * lib/unictype/sy_c_ident.c: New file.
6599         * lib/unictype/sy_c_whitespace.c: New file.
6600         * lib/unictype/sy_java_ident.c: New file.
6601         * lib/unictype/sy_java_whitespace.c: New file.
6602
6603         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
6604         Unicode 5.0.0.
6605         * lib/unictype/blocks.h: Likewise.
6606         * lib/unictype/categ_C.h: Likewise.
6607         * lib/unictype/categ_Cc.h: Likewise.
6608         * lib/unictype/categ_Cf.h: Likewise.
6609         * lib/unictype/categ_Cn.h: Likewise.
6610         * lib/unictype/categ_Co.h: Likewise.
6611         * lib/unictype/categ_Cs.h: Likewise.
6612         * lib/unictype/categ_L.h: Likewise.
6613         * lib/unictype/categ_Ll.h: Likewise.
6614         * lib/unictype/categ_Lm.h: Likewise.
6615         * lib/unictype/categ_Lo.h: Likewise.
6616         * lib/unictype/categ_Lt.h: Likewise.
6617         * lib/unictype/categ_Lu.h: Likewise.
6618         * lib/unictype/categ_M.h: Likewise.
6619         * lib/unictype/categ_Mc.h: Likewise.
6620         * lib/unictype/categ_Me.h: Likewise.
6621         * lib/unictype/categ_Mn.h: Likewise.
6622         * lib/unictype/categ_N.h: Likewise.
6623         * lib/unictype/categ_Nd.h: Likewise.
6624         * lib/unictype/categ_Nl.h: Likewise.
6625         * lib/unictype/categ_No.h: Likewise.
6626         * lib/unictype/categ_P.h: Likewise.
6627         * lib/unictype/categ_Pc.h: Likewise.
6628         * lib/unictype/categ_Pd.h: Likewise.
6629         * lib/unictype/categ_Pe.h: Likewise.
6630         * lib/unictype/categ_Pf.h: Likewise.
6631         * lib/unictype/categ_Pi.h: Likewise.
6632         * lib/unictype/categ_Po.h: Likewise.
6633         * lib/unictype/categ_Ps.h: Likewise.
6634         * lib/unictype/categ_S.h: Likewise.
6635         * lib/unictype/categ_Sc.h: Likewise.
6636         * lib/unictype/categ_Sk.h: Likewise.
6637         * lib/unictype/categ_Sm.h: Likewise.
6638         * lib/unictype/categ_So.h: Likewise.
6639         * lib/unictype/categ_Z.h: Likewise.
6640         * lib/unictype/categ_Zl.h: Likewise.
6641         * lib/unictype/categ_Zp.h: Likewise.
6642         * lib/unictype/categ_Zs.h: Likewise.
6643         * lib/unictype/categ_of.h: Likewise.
6644         * lib/unictype/combining.h: Likewise.
6645         * lib/unictype/ctype_alnum.h: Likewise.
6646         * lib/unictype/ctype_alpha.h: Likewise.
6647         * lib/unictype/ctype_blank.h: Likewise.
6648         * lib/unictype/ctype_cntrl.h: Likewise.
6649         * lib/unictype/ctype_digit.h: Likewise.
6650         * lib/unictype/ctype_graph.h: Likewise.
6651         * lib/unictype/ctype_lower.h: Likewise.
6652         * lib/unictype/ctype_print.h: Likewise.
6653         * lib/unictype/ctype_punct.h: Likewise.
6654         * lib/unictype/ctype_space.h: Likewise.
6655         * lib/unictype/ctype_upper.h: Likewise.
6656         * lib/unictype/ctype_xdigit.h: Likewise.
6657         * lib/unictype/decdigit.h: Likewise.
6658         * lib/unictype/digit.h: Likewise.
6659         * lib/unictype/mirror.h: Likewise.
6660         * lib/unictype/numeric.h: Likewise.
6661         * lib/unictype/pr_alphabetic.h: Likewise.
6662         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
6663         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
6664         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
6665         * lib/unictype/pr_bidi_block_separator.h: Likewise.
6666         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
6667         * lib/unictype/pr_bidi_common_separator.h: Likewise.
6668         * lib/unictype/pr_bidi_control.h: Likewise.
6669         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
6670         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
6671         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
6672         * lib/unictype/pr_bidi_european_digit.h: Likewise.
6673         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
6674         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
6675         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
6676         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
6677         * lib/unictype/pr_bidi_pdf.h: Likewise.
6678         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
6679         * lib/unictype/pr_bidi_whitespace.h: Likewise.
6680         * lib/unictype/pr_combining.h: Likewise.
6681         * lib/unictype/pr_composite.h: Likewise.
6682         * lib/unictype/pr_currency_symbol.h: Likewise.
6683         * lib/unictype/pr_dash.h: Likewise.
6684         * lib/unictype/pr_decimal_digit.h: Likewise.
6685         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
6686         * lib/unictype/pr_deprecated.h: Likewise.
6687         * lib/unictype/pr_diacritic.h: Likewise.
6688         * lib/unictype/pr_extender.h: Likewise.
6689         * lib/unictype/pr_format_control.h: Likewise.
6690         * lib/unictype/pr_grapheme_base.h: Likewise.
6691         * lib/unictype/pr_grapheme_extend.h: Likewise.
6692         * lib/unictype/pr_grapheme_link.h: Likewise.
6693         * lib/unictype/pr_hex_digit.h: Likewise.
6694         * lib/unictype/pr_hyphen.h: Likewise.
6695         * lib/unictype/pr_id_continue.h: Likewise.
6696         * lib/unictype/pr_id_start.h: Likewise.
6697         * lib/unictype/pr_ideographic.h: Likewise.
6698         * lib/unictype/pr_ids_binary_operator.h: Likewise.
6699         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
6700         * lib/unictype/pr_ignorable_control.h: Likewise.
6701         * lib/unictype/pr_iso_control.h: Likewise.
6702         * lib/unictype/pr_join_control.h: Likewise.
6703         * lib/unictype/pr_left_of_pair.h: Likewise.
6704         * lib/unictype/pr_line_separator.h: Likewise.
6705         * lib/unictype/pr_logical_order_exception.h: Likewise.
6706         * lib/unictype/pr_lowercase.h: Likewise.
6707         * lib/unictype/pr_math.h: Likewise.
6708         * lib/unictype/pr_non_break.h: Likewise.
6709         * lib/unictype/pr_not_a_character.h: Likewise.
6710         * lib/unictype/pr_numeric.h: Likewise.
6711         * lib/unictype/pr_other_alphabetic.h: Likewise.
6712         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
6713         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
6714         * lib/unictype/pr_other_id_continue.h: Likewise.
6715         * lib/unictype/pr_other_id_start.h: Likewise.
6716         * lib/unictype/pr_other_lowercase.h: Likewise.
6717         * lib/unictype/pr_other_math.h: Likewise.
6718         * lib/unictype/pr_other_uppercase.h: Likewise.
6719         * lib/unictype/pr_paired_punctuation.h: Likewise.
6720         * lib/unictype/pr_paragraph_separator.h: Likewise.
6721         * lib/unictype/pr_pattern_syntax.h: Likewise.
6722         * lib/unictype/pr_pattern_white_space.h: Likewise.
6723         * lib/unictype/pr_private_use.h: Likewise.
6724         * lib/unictype/pr_punctuation.h: Likewise.
6725         * lib/unictype/pr_quotation_mark.h: Likewise.
6726         * lib/unictype/pr_radical.h: Likewise.
6727         * lib/unictype/pr_sentence_terminal.h: Likewise.
6728         * lib/unictype/pr_soft_dotted.h: Likewise.
6729         * lib/unictype/pr_space.h: Likewise.
6730         * lib/unictype/pr_terminal_punctuation.h: Likewise.
6731         * lib/unictype/pr_titlecase.h: Likewise.
6732         * lib/unictype/pr_unassigned_code_value.h: Likewise.
6733         * lib/unictype/pr_unified_ideograph.h: Likewise.
6734         * lib/unictype/pr_uppercase.h: Likewise.
6735         * lib/unictype/pr_variation_selector.h: Likewise.
6736         * lib/unictype/pr_white_space.h: Likewise.
6737         * lib/unictype/pr_xid_continue.h: Likewise.
6738         * lib/unictype/pr_xid_start.h: Likewise.
6739         * lib/unictype/pr_zero_width.h: Likewise.
6740         * lib/unictype/scripts.h: Likewise.
6741         * lib/unictype/scripts_byname.gperf: Likewise.
6742         * lib/unictype/sy_c_ident.h: Likewise.
6743         * lib/unictype/sy_c_whitespace.h: Likewise.
6744         * lib/unictype/sy_java_ident.h: Likewise.
6745         * lib/unictype/sy_java_whitespace.h: Likewise.
6746
6747         * lib/unictype/Makefile: New file.
6748         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
6749         glibc.
6750         * lib/unictype/3level.h: New file, copied from glibc.
6751         * lib/unictype/3levelbit.h: New file.
6752
6753 2007-11-11  Bruno Haible  <bruno@clisp.org>
6754
6755         * modules/gperf: New file.
6756         * modules/iconv_open (Depends-on): Add it.
6757         (Makefile.am): Remove the GPERF definition.
6758
6759 2007-11-11  Bruno Haible  <bruno@clisp.org>
6760
6761         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
6762         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
6763
6764 2007-11-11  Bruno Haible  <bruno@clisp.org>
6765
6766         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
6767         (usage): Remove function.
6768
6769 2007-11-11  Bruno Haible  <bruno@clisp.org>
6770
6771         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
6772         gl_FUNC_CEILF_LIBS.
6773         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
6774         gl_FUNC_CEIL_LIBS.
6775         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
6776         gl_FUNC_CEILL_LIBS.
6777         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
6778         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
6779         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
6780
6781 2007-11-11  Bruno Haible  <bruno@clisp.org>
6782
6783         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
6784         roundf were declared but do not exist on functions.
6785         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
6786         roundl were declared but do not exist on functions.
6787         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
6788         HAVE_FLOORL_AND_CEILL, respectively.
6789         Needed for Sun C on Solaris 10.
6790
6791 2007-11-11  Bruno Haible  <bruno@clisp.org>
6792
6793         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
6794         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
6795         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
6796         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
6797         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
6798         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
6799         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
6800         HAVE_DECL_ROUNDF.
6801         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
6802         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
6803         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
6804         of HAVE_DECL_ROUND*.
6805         * modules/math (Makefile.am): Update.
6806
6807 2007-11-10  Bruno Haible  <bruno@clisp.org>
6808
6809         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
6810         ptrdiff_t as m4/intl.m4.
6811
6812 2007-11-10  Jim Meyering  <meyering@redhat.com>
6813
6814         Avoid link failure for the argmatch test.
6815         * tests/test-argmatch.c (usage): Define function to avoid a link
6816         failure: argmatch_die requires a usage function.
6817
6818 2007-11-09  Bruno Haible  <bruno@clisp.org>
6819
6820         * doc/functions/snprintf.texi: Mention BeOS deficiency.
6821         * doc/functions/vsnprintf.texi: Likewise.
6822         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
6823         with a size argument < 2.
6824
6825 2007-11-09  Bruno Haible  <bruno@clisp.org>
6826
6827         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
6828         buffer. Fixes an inefficiency introduced on 2007-11-03.
6829
6830 2007-11-09  Bruno Haible  <bruno@clisp.org>
6831
6832         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
6833         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
6834
6835 2007-11-08  Jim Meyering  <meyering@redhat.com>
6836
6837         Change cache variable name prefix "jm_" to "gl_" everywhere.
6838         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
6839         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
6840         * m4/uptime.m4: s/gl_/jm_/
6841
6842 2007-11-07  Bruno Haible  <bruno@clisp.org>
6843
6844         Update to GNU gettext 0.17.
6845         * m4/intl.m4: Update to GNU gettext 0.17.
6846         * m4/po.m4: Likewise.
6847         * modules/gettext (Files): Remove m4/ulonglong.m4.
6848         (configure.ac): Require gettext infrastructure from version 0.17.
6849
6850 2007-11-06  Bruno Haible  <bruno@clisp.org>
6851
6852         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
6853         symbolic values are not defined in a public header.
6854         * lib/freadable.c (freadable) [QNX]: Likewise.
6855         * lib/freadahead.c (freadahead) [QNX]: Likewise.
6856         * lib/freading.c (freading) [QNX]: Likewise.
6857         * lib/fseterr.c (fseterr) [QNX]: Likewise.
6858         * lib/fwritable.c (fwritable) [QNX]: Likewise.
6859         * lib/fwriting.c (fwriting) [QNX]: Likewise.
6860         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
6861         Reported by Alain Magloire.
6862
6863         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
6864
6865 2007-11-05  Bruno Haible  <bruno@clisp.org>
6866
6867         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
6868         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
6869         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
6870         Reported by Eric Blake.
6871
6872 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6873             Bruno Haible  <bruno@clisp.org>
6874
6875         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
6876         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
6877         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
6878         (malloc): Undefine also before including <stdlib.h>.
6879         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
6880         Needed on OSF/1 4.0.
6881
6882 2007-11-05  Jim Meyering  <meyering@redhat.com>
6883
6884         git-version-gen: sync from coreutils.
6885         * build-aux/git-version-gen: Add comments.
6886         Change the first '-' to '.' in the snapshot version string,
6887         e.g., 6.9-377-08144 -> 6.9.377-08144
6888         Remove first parameter.
6889         Don't declare a version "-dirty" merely because a time
6890         stamp has changed.
6891
6892 2007-11-04  Bruno Haible  <bruno@clisp.org>
6893
6894         * lib/lock.h: Protect all macro definitions containing an 'if'
6895         statement through a "do { ... } while (0)".
6896         * lib/tls.h: Likewise.
6897
6898 2007-11-04  Bruno Haible  <bruno@clisp.org>
6899
6900         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
6901
6902 2007-11-04  Bruno Haible  <bruno@clisp.org>
6903
6904         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
6905         * modules/fprintf-posix (Depends-on): Add nocrash.
6906         * modules/snprintf-posix (Depends-on): Likewise.
6907         * modules/sprintf-posix (Depends-on): Likewise.
6908         * modules/vasnprintf-posix (Depends-on): Likewise.
6909         * modules/vasprintf-posix (Depends-on): Likewise.
6910         * modules/vfprintf-posix (Depends-on): Likewise.
6911         * modules/vsnprintf-posix (Depends-on): Likewise.
6912         * modules/vsprintf-posix (Depends-on): Likewise.
6913         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
6914         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
6915         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
6916         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
6917         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
6918         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
6919         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
6920
6921 2007-11-04  Bruno Haible  <bruno@clisp.org>
6922
6923         * modules/nocrash: New file.
6924         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
6925         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
6926
6927 2007-11-04  Bruno Haible  <bruno@clisp.org>
6928
6929         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
6930         precision handling.
6931         * tests/test-vasprintf-posix.c (test_function): Likewise.
6932         * tests/test-snprintf-posix.h (test_function): Likewise.
6933         * tests/test-sprintf-posix.h (test_function): Likewise.
6934
6935         Fix *printf behaviour for large precisions on mingw and BeOS.
6936         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
6937         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
6938         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
6939         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
6940         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6941         gl_PRINTF_PRECISION and test its result. Invoke
6942         gl_PREREQ_VASNPRINTF_PRECISION.
6943         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6944         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6945         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6946         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6947         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6948         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6949         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6950         * doc/functions/fprintf.texi: Update.
6951         * doc/functions/printf.texi: Update.
6952         * doc/functions/snprintf.texi: Update.
6953         * doc/functions/sprintf.texi: Update.
6954         * doc/functions/vfprintf.texi: Update.
6955         * doc/functions/vprintf.texi: Update.
6956         * doc/functions/vsnprintf.texi: Update.
6957         * doc/functions/vsprintf.texi: Update.
6958
6959 2007-11-04  Bruno Haible  <bruno@clisp.org>
6960
6961         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
6962
6963 2007-11-04  Bruno Haible  <bruno@clisp.org>
6964
6965         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
6966         Reported by Sylvain Beucler <beuc@gnu.org>.
6967
6968 2007-11-03  Bruno Haible  <bruno@clisp.org>
6969
6970         * tests/test-fprintf-posix2.sh: New file.
6971         * tests/test-fprintf-posix2.c: New file.
6972         * modules/fprintf-posix-tests (Files): Add them.
6973         (TESTS): Add test-fprintf-posix2.sh.
6974         (configure.ac): Check for getrlimit and setrlimit.
6975         (check_PROGRAMS): Add test-fprintf-posix2.
6976
6977         * tests/test-printf-posix2.sh: New file.
6978         * tests/test-printf-posix2.c: New file.
6979         * modules/printf-posix-tests (Files): Add them.
6980         (TESTS): Add test-printf-posix2.sh.
6981         (configure.ac): Check for getrlimit and setrlimit.
6982         (check_PROGRAMS): Add test-printf-posix2.
6983
6984         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
6985         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
6986         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
6987         (decode_double): New function, copied from decode_long_double.
6988         (scale10_round_decimal_decoded): New function, extracted from
6989         scale10_round_decimal_long_double.
6990         (scale10_round_decimal_long_double): Use it.
6991         (scale10_round_decimal_double): New function.
6992         (floorlog10): New function.
6993         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
6994         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
6995         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
6996         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6997         gl_PRINTF_ENOMEM and test its result. Invoke
6998         gl_PREREQ_VASNPRINTF_ENOMEM.
6999         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
7000         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7001         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7002         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7003         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7004         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7005         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7006         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
7007         * modules/snprintf-posix (Depends-on): Likewise.
7008         * modules/sprintf-posix (Depends-on): Likewise.
7009         * modules/vasnprintf-posix (Depends-on): Likewise.
7010         * modules/vasprintf-posix (Depends-on): Likewise.
7011         * modules/vfprintf-posix (Depends-on): Likewise.
7012         * modules/vsnprintf-posix (Depends-on): Likewise.
7013         * modules/vsprintf-posix (Depends-on): Likewise.
7014         * doc/functions/fprintf.texi: Update.
7015         * doc/functions/printf.texi: Update.
7016         * doc/functions/snprintf.texi: Update.
7017         * doc/functions/sprintf.texi: Update.
7018         * doc/functions/vfprintf.texi: Update.
7019         * doc/functions/vprintf.texi: Update.
7020         * doc/functions/vsnprintf.texi: Update.
7021         * doc/functions/vsprintf.texi: Update.
7022
7023 2007-11-03  Bruno Haible  <bruno@clisp.org>
7024
7025         * modules/frexp-nolibm-tests: New file.
7026
7027         * modules/frexp-nolibm: New file.
7028         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
7029
7030 2007-11-03  Bruno Haible  <bruno@clisp.org>
7031
7032         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
7033         value is C99 compliant.
7034         Needed for OSF/1 5.1.
7035
7036 2007-11-03  Bruno Haible  <bruno@clisp.org>
7037
7038         Fix out-of-memory handling of vasnprintf.
7039         * lib/printf-parse.c: Include <errno.h>.
7040         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
7041         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
7042         is already set.
7043
7044 2007-11-02  Eric Blake  <ebb9@byu.net>
7045
7046         Fix tests on cygwin.
7047         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
7048
7049 2007-11-01  Bruno Haible  <bruno@clisp.org>
7050
7051         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
7052         warning.
7053         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
7054         needed for POSIX compatibility.
7055
7056 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
7057
7058         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
7059         for compatibility with GNU.
7060
7061 2007-11-01  Bruno Haible  <bruno@clisp.org>
7062
7063         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
7064         (putenv): Renamed from rpl_putenv. Change argument type from
7065         'const char *' to 'char *'.
7066         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
7067         of defining putenv in config.h, just set REPLACE_PUTENV.
7068         * modules/putenv (Depends-on): Add stdlib.
7069         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7070         (Include): Use <stdlib.h>.
7071         * lib/stdlib.in.h (putenv): New declaration.
7072         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
7073         REPLACE_PUTENV.
7074         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
7075         REPLACE_PUTENV.
7076         Needed for MacOS X 10.5.0.
7077         Reported by Peter O'Gorman <peter@pogma.com>.
7078
7079 2007-11-01  Jim Meyering  <meyering@redhat.com>
7080
7081         Treat an empty date string exactly like "0".
7082         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
7083         if the remaining date string (to be parsed) is empty, use "0".
7084         Reported by Mischa Molhoek and discussed in this thread:
7085         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
7086
7087 2007-10-31  Bruno Haible  <bruno@clisp.org>
7088
7089         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
7090         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
7091         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
7092         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
7093         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
7094         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
7095
7096 2007-10-31  Bruno Haible  <bruno@clisp.org>
7097
7098         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
7099         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
7100         (AC_TYPE_LONG_LONG_INT): Use it.
7101         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
7102         it as well.
7103         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
7104         to m4/longlong.m4.
7105         * modules/stdint (Files): Remove m4/ulonglong.m4.
7106         * modules/strtoull (Files): Use m4/longlong.m4 instead of
7107         m4/ulonglong.m4.
7108         * modules/strtoumax (Files): Likewise.
7109
7110 2007-10-30  Bruno Haible  <bruno@clisp.org>
7111
7112         * modules/xvasprintf-posix: New file.
7113         Suggested by Eric Blake.
7114
7115 2007-10-30  Bruno Haible  <bruno@clisp.org>
7116
7117         * modules/xprintf-posix-tests: New file.
7118         * tests/test-xprintf-posix.sh: New file.
7119         * tests/test-xprintf-posix.c: New file.
7120         * tests/test-xfprintf-posix.c: New file.
7121
7122         * modules/xprintf-posix: New file.
7123
7124 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7125
7126         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
7127         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
7128         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
7129
7130 2007-10-29  Bruno Haible  <bruno@clisp.org>
7131
7132         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
7133         contain the special marker '_cv_'.
7134         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
7135         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
7136         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
7137         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
7138         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
7139         Reported by Ralf Wildenhues.
7140
7141 2007-10-29  Bruno Haible  <bruno@clisp.org>
7142
7143         * gnulib-tool (func_import): When --lgpl is not specified, set
7144         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
7145         GPLv3.
7146         Reported by Simon Josefsson.
7147
7148 2007-10-28  Bruno Haible  <bruno@clisp.org>
7149
7150         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
7151         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
7152         HAVE_DECL_ISFINITE.
7153         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
7154         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
7155         HAVE_DECL_ISFINITE.
7156
7157 2007-10-28  Bruno Haible  <bruno@clisp.org>
7158
7159         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
7160         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
7161
7162 2007-10-28  Bruno Haible  <bruno@clisp.org>
7163
7164         Fix link errors with Sun C 5.0 on Solaris 10.
7165         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
7166         function is declared but not present in the compiler's libm.
7167         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
7168         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
7169         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
7170         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
7171         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
7172         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
7173         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
7174         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
7175         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
7176         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
7177         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
7178         HAVE_DECL_FLOORL.
7179
7180 2007-10-28  Bruno Haible  <bruno@clisp.org>
7181
7182         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
7183         gl_FUNC_FLOORL. Cache the result.
7184         (gl_FUNC_FLOORL): Use it.
7185         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
7186         gl_FUNC_CEILL. Cache the result.
7187         (gl_FUNC_CEILL): Use it.
7188
7189         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
7190         gl_FUNC_FLOOR. Cache the result.
7191         (gl_FUNC_FLOOR): Use it.
7192         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
7193         gl_FUNC_CEIL. Cache the result.
7194         (gl_FUNC_CEIL): Use it.
7195
7196         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
7197         gl_FUNC_FLOORF. Cache the result.
7198         (gl_FUNC_FLOORF): Use it.
7199         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
7200         gl_FUNC_CEILF. Cache the result.
7201         (gl_FUNC_CEILF): Use it.
7202
7203 2007-10-28  Bruno Haible  <bruno@clisp.org>
7204
7205         * gnulib-tool: Allow specifying the LGPL version number through
7206         --lgpl=2 or --lgpl=3.
7207         (func_usage): Document --lgpl with argument.
7208         Handle --lgpl=... arguments.
7209         (func_import): Recognize also gl_LGPL calls with an argument. When
7210         --lgpl=2 is used and the module's license is just LGPL, report an
7211         error. Set sed_transform_lib_file according to the lgpl variable. In
7212         the generated files, use --lgpl or gl_LGPL invocations with argument,
7213         if necessary.
7214         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
7215         an LGPv2+ license.
7216         * doc/gnulib-tool.texi (Modified imports): Update explanation of
7217         gl_LGPL macro.
7218
7219 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7220             Bruno Haible  <bruno@clisp.org>
7221
7222         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
7223         (u16_uctomb_aux): Likewise.
7224         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
7225         !HAVE_INLINE.
7226         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
7227
7228 2007-10-28  Bruno Haible  <bruno@clisp.org>
7229
7230         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
7231         Invoke AM_GETTEXT_OPTION if it exists.
7232         * modules/vasprintf: Likewise.
7233         * modules/verror: Likewise.
7234         * modules/xprintf: Likewise.
7235         * modules/xvasprintf: Likewise.
7236
7237 2007-10-27  Ben Pfaff  <blp@gnu.org>
7238
7239         * lib/math.in.h: Define isfinite macro and prototypes for
7240         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
7241         implementations.
7242         * m4/math_h.m4: New substitutions for isfinite module.
7243         * lib/isfinite.c: New file.
7244         * m4/isfinite.m4: New file.
7245         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
7246         * modules/isfinite: New file.
7247         * modules/isfinite-tests: New file.
7248         * tests/tests-isfinite.c: New file.
7249         * doc/functions/isfinite.texi: Mention isfinite module.
7250         * MODULES.html.sh: Mention new module.
7251
7252 2007-10-27  Ben Pfaff  <blp@gnu.org>
7253
7254         Ralf Wildenhues reported that Tru64 4.0D declares the round
7255         functions but does not have definitions.
7256         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
7257         cannot be found in any library, set the output variable to
7258         "missing" instead of "".
7259         * m4/round.m4: Also use our substitute if we cannot find round in
7260         any library, even if it is declared.
7261         * m4/roundf.m4: Likewise for roundf.
7262         * m4/roundl.m4: Likewise for roundl.
7263         * lib/math.in.h: Undefine roundf, round, roundl before defining
7264         their replacements, to allow for hypothetical systems where these
7265         may be defined as macros but not available in libraries.
7266
7267 2007-10-27  Bruno Haible  <bruno@clisp.org>
7268
7269         * doc/gnulib.texi: Invoke @firstparagraphindent.
7270         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
7271         changes in gnulib.
7272         (Source changes): New section.
7273
7274 2007-10-26  Bruno Haible  <bruno@clisp.org>
7275
7276         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
7277         borrowed from autoconf.
7278
7279 2007-10-26  Bruno Haible  <bruno@clisp.org>
7280
7281         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
7282         strerror returned the empty string. Needed on HP-UX 11.00.
7283
7284 2007-10-24  Micah Cowan  <micah@cowan.name>
7285
7286         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
7287         * build-aux/bootstrap: Remove support for now-unnecessary option,
7288         --cvs-user, and envvars CVS_USER, CVS_RSH.
7289
7290 2007-10-24  Jim Meyering  <meyering@redhat.com>
7291
7292         Avoid diagnostics from sha1sum when there is no cached checksum.
7293         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
7294         if the po.s1 file hasn't been created yet.
7295
7296         * build-aux/bootstrap: Sync from coreutils:
7297         2007-10-24  Jim Meyering  <meyering@redhat.com>
7298         Get gnulib from the git repository, not from an obsolete cvs one.
7299         * build-aux/bootstrap: Suggestion from Micah Cowan.
7300         2007-10-04  Jim Meyering  <jim@meyering.net>
7301         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
7302         (update_po_files): Work also when there are no .po files in po/.
7303
7304 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
7305
7306         * README: Append ".git" to git and cg examples.
7307         Problem reported by Benoit Sigoure.
7308
7309 2007-10-23  Micah Cowan  <micah@cowan.name>
7310
7311         * users.txt: Add wget.
7312
7313 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7314
7315         Fix linking of some unistdio tests on FreeBSD.
7316         * modules/unistdio/u16-vsnprintf-tests
7317         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
7318         * modules/unistdio/u16-vsprintf-tests
7319         (test_u16_vsnprintf1_LDADD): Likewise.
7320         * modules/unistdio/u32-vsnprintf-tests
7321         (test_u32_vsnprintf1_LDADD): Likewise.
7322         * modules/unistdio/u32-vsprintf-tests
7323         (test_u32_vsprintf1_LDADD): Likewise.
7324         * modules/unistdio/u8-vsnprintf-tests
7325         (test_u8_vsnprintf1_LDADD): Likewise.
7326         * modules/unistdio/u8-vsprintf-tests
7327         (test_u8_vsprintf1_LDADD): Likewise.
7328         * modules/unistdio/ulc-vsnprintf-tests
7329         (test_ulc_vsnprintf1_LDADD): Likewise.
7330         * modules/unistdio/ulc-vsprintf-tests
7331         (test_ulc_vsprintf1_LDADD): Likewise.
7332
7333         Fix linking of some uniconv tests on FreeBSD.
7334         * modules/uniconv/u16-conv-from-enc-tests
7335         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
7336         * modules/uniconv/u16-conv-to-enc-tests
7337         (test_u16_conv_to_enc_LDADD): Likewise.
7338         * modules/uniconv/u16-strconv-from-enc-tests
7339         (test_u16_strconv_from_enc_LDADD): Likewise.
7340         * modules/uniconv/u16-strconv-to-enc-tests
7341         (test_u16_strconv_to_enc_LDADD): Likewise.
7342         * modules/uniconv/u32-conv-from-enc-tests
7343         (test_u32_conv_from_enc_LDADD): Likewise.
7344         * modules/uniconv/u32-conv-to-enc-tests
7345         (test_u32_conv_to_enc_LDADD): Likewise.
7346         * modules/uniconv/u32-strconv-from-enc-tests
7347         (test_u32_strconv_from_enc_LDADD): Likewise.
7348         * modules/uniconv/u32-strconv-to-enc-tests
7349         (test_u32_strconv_to_enc_LDADD): Likewise.
7350         * modules/uniconv/u8-conv-from-enc-tests
7351         (test_u8_conv_from_enc_LDADD): Likewise.
7352         * modules/uniconv/u8-conv-to-enc-tests
7353         (test_u8_conv_to_enc_LDADD): Likewise.
7354         * modules/uniconv/u8-strconv-from-enc-tests
7355         (test_u8_strconv_from_enc_LDADD): Likewise.
7356         * modules/uniconv/u8-strconv-to-enc-tests
7357         (test_u8_strconv_to_enc_LDADD): Likewise.
7358
7359 2007-10-22  Bruno Haible  <bruno@clisp.org>
7360
7361         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
7362         size.
7363
7364 2007-10-22  Eric Blake  <ebb9@byu.net>
7365
7366         Tweak x*printf documentation.
7367         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
7368         variable name and comments.
7369         Suggested by Bruno Haible.
7370
7371 2007-10-22  Bruno Haible  <bruno@clisp.org>
7372
7373         * lib/acl.c (copy_acl): Fix file name in comment.
7374
7375 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
7376
7377         Fix Tru64 problem with stdbool.h.
7378         * lib/stdbool.in.h (false, true):
7379         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
7380         Don't declare as an enum in this situation; it runs afoul of Tru64.
7381         Problem reported by Steven M. Schweda in
7382         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
7383
7384 2007-10-22  Eric Blake  <ebb9@byu.net>
7385
7386         Also wrap vf?printf.
7387         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
7388         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
7389         (xvprintf, xvfprintf): New functions.
7390
7391 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7392
7393         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
7394         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
7395
7396         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
7397         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
7398
7399 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
7400
7401         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
7402         by Bruno Haible.
7403
7404 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7405
7406         * lib/getloadavg.c
7407         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
7408         Undef `sys' after including sys/table.h, for Tru64 4.0D.
7409
7410         * tests/test-i-ring.c: Work for C89.
7411
7412 2007-10-22  Bruno Haible  <bruno@clisp.org>
7413
7414         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
7415         -1u, in preprocessor expression, so that we don't test for the bug
7416         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
7417         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
7418
7419 2007-10-22  Eric Blake  <ebb9@byu.net>
7420
7421         * tests/test-yesno.sh: Silence stderr during test.
7422
7423 2007-10-22  Simon Josefsson  <simon@josefsson.org>
7424
7425         * modules/crypto/gc-camellia: New file.
7426
7427         * m4/gc-camellia.m4: New file.
7428
7429         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
7430
7431         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
7432
7433 2007-10-22  Simon Josefsson  <simon@josefsson.org>
7434
7435         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
7436         --help to stdout.  Reported by sms@antinode.org (Steven
7437         M. Schweda).
7438
7439 2007-10-22  Simon Josefsson  <simon@josefsson.org>
7440
7441         * users.txt: Fix link to libksba.
7442
7443 2007-10-21  Ben Pfaff  <blp@gnu.org>
7444
7445         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
7446         round.c roundf implementation that depends on floorf and ceilf to
7447         be tested unconditionally.
7448
7449 2007-10-21  Ben Pfaff  <blp@gnu.org>
7450
7451         * m4/check-libm-func.m4: Removed.
7452         * m4/check-math-lib.m4: New file.
7453         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
7454         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
7455         definition and lack of AC_LIBOBJ([roundf]).
7456         * m4/roundl.m4: Ditto, and similarly for roundl.
7457         * modules/round: Reference new m4 file.
7458         * modules/roundf: Ditto.
7459         * modules/roundl: Ditto.
7460         * tests/test-round2.c (main): Use ROUND instead of round.
7461         Bug report from Bruno Haible.
7462
7463 2007-10-21  Bruno Haible  <bruno@clisp.org>
7464
7465         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
7466         context.
7467
7468 2007-10-21  Bruno Haible  <bruno@clisp.org>
7469
7470         * tests/test-wcwidth.c (main): Allow negative result for some control
7471         characters.
7472
7473         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
7474         Needed on OSF/1 5.1.
7475
7476 2007-10-21  Bruno Haible  <bruno@clisp.org>
7477
7478         * tests/test-floorf1.c: Include isnanf.h.
7479         (main): Use isnanf() instead of isnan().
7480         * tests/test-ceilf1.c: Include isnanf.h.
7481         (main): Use isnanf() instead of isnan().
7482         * tests/test-truncf1.c: Include isnanf.h.
7483         (main): Use isnanf() instead of isnan().
7484         * tests/test-roundf1.c: Include isnanf.h.
7485         (main): Use isnanf() instead of isnan().
7486
7487 2007-10-21  Eric Blake  <ebb9@byu.net>
7488
7489         * users.txt: Update URL for m4.
7490
7491 2007-10-21  Bruno Haible  <bruno@clisp.org>
7492
7493         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
7494
7495 2007-10-21  Bruno Haible  <bruno@clisp.org>
7496
7497         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
7498         Git's management files if the CVS files are not present.
7499
7500 2007-10-20  Bruno Haible  <bruno@clisp.org>
7501
7502         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
7503         gcc-3.4.x.
7504
7505 2007-10-20  Ben Pfaff  <blp@gnu.org>
7506
7507         * lib/math.in.h: Declare round, roundf, roundl if we are providing
7508         implementations.
7509         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
7510         * lib/round.c: New file.
7511         * lib/roundf.c: New file.
7512         * lib/roundl.c: New file.
7513         * m4/round.m4: New file.
7514         * m4/roundf.m4: New file.
7515         * m4/roundl.m4: New file.
7516         * m4/check-libm-func-m4: New file.
7517         * modules/math: Replace round, roundf, roundl related @VARS@ in
7518         math.in.h.
7519         * modules/round: New file.
7520         * modules/round-tests: New file.
7521         * modules/roundf: New file.
7522         * modules/roundf-tests: New file.
7523         * modules/roundl: New file.
7524         * modules/roundl-tests: New file.
7525         * tests/test-round1.c: New file.
7526         * tests/test-round2.c: New file.
7527         * tests/test-roundf1.c: New file.
7528         * tests/test-roundf2.c: New file.
7529         * tests/test-roundl.c: New file.
7530         * doc/functions/round.texi: Mention round module.
7531         * doc/functions/roundf.texi: Mention roundf module.
7532         * doc/functions/roundl.texi: Mention roundl module.
7533         * MODULES.html.sh: Mention new modules.
7534         Thanks to Bruno Haible for suggestions.
7535
7536 2007-10-20  Jim Meyering  <meyering@redhat.com>
7537
7538         * lib/xprintf.c: Include <config.h> unconditionally.
7539
7540         Change xprintf's license to GPL.
7541         * modules/xprintf (License): s/LGPL/GPL/, since this module
7542         depends on modules (exit and exitfail) which are GPL.
7543         Suggestion from Bruno Haible.
7544
7545         xprintf fixes.
7546         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
7547         Use a clearer diagnostic.
7548         Patch from Bruno Haible.
7549
7550 2007-10-20  Bruno Haible  <bruno@clisp.org>
7551
7552         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
7553         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
7554         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7555
7556 2007-10-20  Bruno Haible  <bruno@clisp.org>
7557
7558         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
7559         precision in the comparison result > x - 1 or similar.
7560         * tests/test-ceilf2.c (correct_result_p): Likewise.
7561         * tests/test-truncf2.c (correct_result_p): Likewise.
7562         * tests/test-trunc2.c (correct_result_p): Likewise.
7563         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7564
7565 2007-10-20  Bruno Haible  <bruno@clisp.org>
7566
7567         * modules/ceil: New file.
7568         * m4/ceil.m4: New file.
7569         * doc/functions/ceil.texi: Mention the 'ceil' module.
7570
7571 2007-10-20  Bruno Haible  <bruno@clisp.org>
7572
7573         * modules/floor: New file.
7574         * m4/floor.m4: New file.
7575         * doc/functions/floor.texi: Mention the 'floor' module.
7576
7577 2007-10-20  Bruno Haible  <bruno@clisp.org>
7578
7579         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
7580         of %a.
7581         * modules/floorf-tests (Depends-on): Likewise.
7582         * modules/truncf-tests (Depends-on): Likewise.
7583         * modules/trunc-tests (Depends-on): Likewise.
7584         Reported by Ben Pfaff.
7585
7586 2007-10-19  Jim Meyering  <meyering@redhat.com>
7587
7588         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
7589         Don't bother testing specific errno values.  Just test ferror.
7590
7591         New module: xprintf
7592         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
7593
7594 2007-10-19  Bruno Haible  <bruno@clisp.org>
7595
7596         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
7597         syntax.
7598         * modules/javaexec (Makefile.am): Likewise.
7599         * modules/relocatable-prog (Makefile.am): Likewise.
7600         Suggested by Jim Meyering.
7601
7602 2007-10-18  Bruno Haible  <bruno@clisp.org>
7603
7604         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
7605         Reported by Jim Meyering.
7606
7607 2007-10-18  Eric Blake  <ebb9@byu.net>
7608
7609         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
7610
7611 2007-10-18  Bruno Haible  <bruno@clisp.org>
7612
7613         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
7614         the format string into writable memory. Needed in Fortify conditions.
7615
7616 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
7617             Bruno Haible  <bruno@clisp.org>
7618
7619         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
7620         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
7621         * modules/trim (Depends-on): Add mbchar.
7622         (configure.ac): Add gl_FUNC_MBRTOWC.
7623         (Makefile.am): Augment lib_SOURCES.
7624
7625 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
7626
7627         Modify glob.c to use fstatat and dirfd, to simplify it.
7628         Suggested by Eric Blake.
7629         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
7630         Don't include <stdbool.h>; not used.
7631         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
7632         (link_exists_p): Simplify implementation, since we can now assume
7633         dirfd and fstatat.
7634         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
7635
7636 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7637
7638         * gnulib-tool (func_get_dependencies): Fix sed script to
7639         match only tests.
7640
7641 2007-10-17  Bruno Haible  <bruno@clisp.org>
7642
7643         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
7644         allow locale names without encoding suffix.
7645         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
7646         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
7647
7648 2007-10-16  Bruno Haible  <bruno@clisp.org>
7649
7650         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
7651         * lib/getgroups.c (getgroups): Likewise.
7652         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
7653
7654 2007-10-16  Bruno Haible  <bruno@clisp.org>
7655
7656         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
7657         * modules/malloc-posix (License): Likewise.
7658         * modules/realloc-posix (License): Likewise.
7659         * modules/calloc-posix (License): Likewise.
7660         * modules/intprops (License): Change from GPL to LGPL, with
7661         Paul Eggert's approval.
7662
7663 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
7664
7665         Merge glibc changes into lib/glob.c.
7666
7667         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
7668         2007-10-15 04:59:03 UTC.  Here are the changes:
7669
7670         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
7671
7672         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
7673
7674         * lib/glob.c: Add some branch prediction throughout.
7675
7676         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
7677
7678         [BZ #5103]
7679         * lib/glob.c (glob): Recognize patterns starting \/.
7680
7681         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
7682
7683         [BZ #3996]
7684         * lib/glob.c (attribute_hidden): Define if not defined.
7685         (glob): Unescape dirname, filename or username when needed and not
7686         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
7687         is NULL.  Handle unescaped [ in pattern without closing ].
7688         Don't pass GLOB_CHECK down to recursive glob for directories.
7689         (__glob_pattern_type): New function.
7690         (__glob_pattern_p): Implement using __glob_pattern_type.
7691         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
7692         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
7693         Remove unreachable code.
7694
7695         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
7696
7697         * lib/glob.c (glob_in_dir): Add some comments and asserts to
7698         explain why there are no leaks.
7699
7700         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
7701
7702         [BZ #3253]
7703         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
7704         time, rather allocate increasingly bigger arrays of pointers, if
7705         possible with alloca, if too large with malloc.
7706
7707 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
7708
7709         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
7710         Problem reported by H.Merijn Brand in
7711         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
7712         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
7713         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
7714
7715 2007-10-15  Bruno Haible  <bruno@clisp.org>
7716
7717         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
7718         with explicit rpl_ prefix.
7719         * lib/fopen.c (fopen): Likewise.
7720         * lib/freopen.c (freopen): Likewise.
7721         * lib/iconv.c (iconv): Likewise.
7722         * lib/iconv_close.c (iconv_close): Likewise.
7723
7724 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7725
7726         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
7727
7728 2007-10-15  Bruno Haible  <bruno@clisp.org>
7729
7730         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
7731         <stddef.h> instead of <stdlib.h> since we only need NULL.
7732         Reported by Ben Pfaff <blp@cs.stanford.edu>.
7733
7734 2007-10-15  Bruno Haible  <bruno@clisp.org>
7735
7736         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
7737         Replace paragraph talking about LIBOBJS.
7738         Reported by Colin Watson <cjwatson@debian.org>.
7739
7740 2007-10-15  Bruno Haible  <bruno@clisp.org>
7741
7742         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
7743         <stdlib.h> before using NULL.
7744
7745 2007-10-15  Simon Josefsson  <simon@josefsson.org>
7746
7747         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
7748         Reported by Albert Chin <china@thewrittenword.com>.
7749
7750 2007-10-14  Bruno Haible  <bruno@clisp.org>
7751
7752         * modules/iconv_open-utf-tests: New file.
7753         * tests/test-iconv-utf.c: New file.
7754
7755         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
7756         * modules/iconv_open-utf: New file.
7757         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
7758         (iconv, iconv_close): New declarations.
7759         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
7760         be defined.
7761         (iconv_open): Add special handling of conversion between UTF-8 and
7762         UTF-{16,32}{BE,LE}.
7763         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
7764         * lib/iconv_close.c: New file.
7765         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
7766         gl_FUNC_ICONV_OPEN.
7767         (gl_FUNC_ICONV_OPEN): Use it.
7768         (gl_FUNC_ICONV_OPEN_UTF): New macro.
7769         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
7770         and REPLACE_ICONV_UTF.
7771         * modules/iconv_open (Depends-on): Add c-strcase.
7772         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
7773         ICONV_CONST.
7774         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
7775
7776 2007-10-13  Albert Chin  <china@thewrittenword.com>
7777             Bruno Haible  <bruno@clisp.org>
7778
7779         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
7780         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
7781
7782 2007-10-13  Bruno Haible  <bruno@clisp.org>
7783
7784         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
7785         defined, use the ISO C99 inline semantics.
7786         * lib/argp.h (ARGP_EI): Likewise.
7787
7788 2007-10-13  Bruno Haible  <bruno@clisp.org>
7789
7790         Handle 'inline' change in gcc 4.3.0.
7791         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
7792         argp_fmtstream_write, argp_fmtstream_set_lmargin,
7793         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
7794         argp_fmtstream_point): Disable 'extern' declaration if the function
7795         definition is going to be provided inline.
7796         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
7797         semantics, not the ISO C99 inline semantics.
7798         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
7799         'extern' declaration if the function definition is going to be provided
7800         inline.
7801         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
7802         the GNU C inline semantics, not the ISO C99 inline semantics. With
7803         GCC 4.2, avoid a warning.
7804
7805 2007-10-13  Bruno Haible  <bruno@clisp.org>
7806
7807         * lib/freading.h (freading): Enable the use of __freading for
7808         glibc >= 2.7.
7809         * lib/freading.c (freading): Likewise.
7810
7811 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
7812
7813         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
7814         "warning: C99 inline functions are not supported; using GNU89".
7815
7816 2007-10-12  Bruno Haible  <bruno@clisp.org>
7817
7818         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
7819         of 2.
7820         * tests/test-ceilf2.c: New file.
7821         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
7822
7823         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
7824         * modules/ceilf-tests: Update.
7825
7826 2007-10-12  Bruno Haible  <bruno@clisp.org>
7827
7828         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
7829         of 2.
7830         * tests/test-floorf2.c: New file.
7831         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
7832
7833         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
7834         * modules/floorf-tests: Update.
7835
7836 2007-10-12  Bruno Haible  <bruno@clisp.org>
7837
7838         * tests/test-trunc2.c: New file.
7839         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
7840
7841         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
7842         * modules/trunc-tests: Update.
7843
7844 2007-10-12  Bruno Haible  <bruno@clisp.org>
7845
7846         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
7847         of 2.
7848         * tests/test-truncf2.c: New file.
7849         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
7850
7851         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
7852         * modules/truncf-tests: Update.
7853
7854 2007-10-11  Eric Blake  <ebb9@byu.net>
7855
7856         Don't claim strerror is broken on Interix.
7857         * doc/functions/strerror.texi (strerror): Known broken systems are
7858         now Solaris 8, and not Interix.
7859         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
7860         Interix on cross-compile.
7861         Reported by Martin Koeppe in
7862         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
7863
7864 2007-10-11  Bruno Haible  <bruno@clisp.org>
7865
7866         * modules/i-ring-tests: New file.
7867         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
7868         instead of assert.
7869
7870 2007-10-11  Bruno Haible  <bruno@clisp.org>
7871
7872         * modules/filenamecat-tests: New file.
7873         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
7874         * lib/filenamecat.c: Remove test code.
7875
7876 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
7877
7878         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
7879
7880         * lib/strerror.c: Include <string.h> always, to test interface,
7881         and to remove the need for the dummy.
7882         Include intprops.h to compute width instead of doing it ourselves
7883         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
7884         (strerror): Define it to return NULL if there's no system strerror.
7885         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
7886         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
7887         ancient pre-strerror Unix systems well any more.  Saying "unknown
7888         system error" is enough.
7889         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
7890         simpler strerror.c implementation.
7891         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
7892         Simplify the tests to reflect the simpler strerror implementation.
7893         * modules/strerror (Depends-on): Add intprops.
7894
7895 2007-10-09  Eric Blake  <ebb9@byu.net>
7896
7897         Silence test-fpending.
7898         * modules/fpending-tests (Files): Add wrapper script.
7899         * tests/test-fpending.sh: New file.
7900
7901 2007-10-09  Bruno Haible  <bruno@clisp.org>
7902
7903         * MODULES.html.sh (func_module): Don't create a hyperlink for
7904         function names like 'printf_frexp'.
7905         (Misc): Add crc, memxor.
7906         (Characteristics of floating types): New section.
7907         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
7908         isnanf-nolibm, signbit, trunc, truncf, truncl.
7909         (Enhancements for ISO C 99 functions): New subsection Input/output.
7910         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
7911         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
7912         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
7913         (Compatibility checks for POSIX:2001 functions): Add clock-time.
7914         (Enhancements for POSIX:2001 functions): Add chdir-long.
7915         (File system functions): Add areadlink, chdir-safer, read-file.
7916         Remove cycle-check.
7917         (File system as inode set): New section.
7918         (Date and time): Add gethrxtime.
7919         (Multithreading): Add openmp.
7920         (Internationalization functions): Add localename.
7921         (Unicode string functions): Add unistr/u*-mbsnlen.
7922         (Support for maintaining and releasing projects): Add git-version-gen.
7923         (Lone files): Remove directories.
7924
7925 2007-10-08  Ben Pfaff  <blp@gnu.org>
7926
7927         * lib/xmalloca.h: Fix typo in comment.
7928
7929 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
7930
7931         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
7932         when avoiding problems with integer overflow.  Use a portable test
7933         instead.
7934
7935 2007-10-08  Simon Josefsson  <simon@josefsson.org>
7936
7937         * modules/dummy (License): Change to LGPLv2+.
7938         * modules/float (License): Likewise
7939         * modules/realloc (License): Likewise
7940         * modules/stdlib (License): Likewise
7941
7942 2007-10-07  Bruno Haible  <bruno@clisp.org>
7943
7944         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
7945         * floor.c (TWO_MANT_DIG): Likewise.
7946         * ceil.c (TWO_MANT_DIG): Likewise.
7947         Reported by Ben Pfaff.
7948
7949 2007-10-07  Bruno Haible  <bruno@clisp.org>
7950
7951         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
7952         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
7953         * lib/frexp.c (FUNC): Likewise.
7954         * lib/printf-frexp.h (printf_frexp): Likewise.
7955         * lib/printf-frexpl.h (printf_frexpl): Likewise.
7956         * lib/printf-frexp.c (FUNC): Likewise.
7957         Suggested by Jim Meyering.
7958
7959 2007-10-07  Jim Meyering  <meyering@redhat.com>
7960
7961         Make xnanosleep's integer overflow test more robust.
7962         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
7963         so that gcc-4.3.0 doesn't optimize away this test for overflow.
7964
7965 2007-10-07  Bruno Haible  <bruno@clisp.org>
7966
7967         * NEWS: Mention the license change.
7968
7969         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
7970         abbreviations in the modules files.
7971
7972         Change copyright notice from GPLv2+ to GPLv3+.
7973         * README: Change copyright notice.
7974         * MODULES.html.sh: Likewise.
7975         * build-aux/bootstrap.conf: Likewise.
7976         * build-aux/config.libpath: Likewise.
7977         * build-aux/csharpcomp.sh.in: Likewise.
7978         * build-aux/csharpexec.sh.in: Likewise.
7979         * build-aux/install-reloc: Likewise.
7980         * build-aux/javacomp.sh.in: Likewise.
7981         * build-aux/javaexec.sh.in: Likewise.
7982         * build-aux/ldd.sh.in: Likewise.
7983         * build-aux/reloc-ldflags: Likewise.
7984         * build-aux/relocatable.sh.in: Likewise.
7985         * build-aux/x-to-1.in: Likewise.
7986         * check-module: Likewise.
7987         * config/srclistvars.sh: Likewise.
7988         * gnulib-tool: Likewise.
7989         * lib/acl-internal.h: Likewise.
7990         * lib/acl.c: Likewise.
7991         * lib/acl.h: Likewise.
7992         * lib/acl_entries.c: Likewise.
7993         * lib/areadlink-with-size.c: Likewise.
7994         * lib/areadlink.c: Likewise.
7995         * lib/areadlink.h: Likewise.
7996         * lib/argmatch.c: Likewise.
7997         * lib/argmatch.h: Likewise.
7998         * lib/argp-ba.c: Likewise.
7999         * lib/argp-eexst.c: Likewise.
8000         * lib/argp-fmtstream.c: Likewise.
8001         * lib/argp-fmtstream.h: Likewise.
8002         * lib/argp-fs-xinl.c: Likewise.
8003         * lib/argp-help.c: Likewise.
8004         * lib/argp-namefrob.h: Likewise.
8005         * lib/argp-parse.c: Likewise.
8006         * lib/argp-pin.c: Likewise.
8007         * lib/argp-pv.c: Likewise.
8008         * lib/argp-pvh.c: Likewise.
8009         * lib/argp-xinl.c: Likewise.
8010         * lib/argp.h: Likewise.
8011         * lib/at-func.c: Likewise.
8012         * lib/atanl.c: Likewise.
8013         * lib/backupfile.c: Likewise.
8014         * lib/backupfile.h: Likewise.
8015         * lib/basename.c: Likewise.
8016         * lib/binary-io.h: Likewise.
8017         * lib/byteswap.in.h: Likewise.
8018         * lib/c-stack.c: Likewise.
8019         * lib/c-stack.h: Likewise.
8020         * lib/c-strcasestr.c: Likewise.
8021         * lib/c-strcasestr.h: Likewise.
8022         * lib/c-strstr.c: Likewise.
8023         * lib/c-strstr.h: Likewise.
8024         * lib/c-strtod.c: Likewise.
8025         * lib/calloc.c: Likewise.
8026         * lib/canon-host.c: Likewise.
8027         * lib/canon-host.h: Likewise.
8028         * lib/canonicalize-lgpl.c: Likewise.
8029         * lib/canonicalize.c: Likewise.
8030         * lib/canonicalize.h: Likewise.
8031         * lib/ceil.c: Likewise.
8032         * lib/ceilf.c: Likewise.
8033         * lib/ceill.c: Likewise.
8034         * lib/chdir-long.c: Likewise.
8035         * lib/chdir-long.h: Likewise.
8036         * lib/chdir-safer.c: Likewise.
8037         * lib/chdir-safer.h: Likewise.
8038         * lib/chown.c: Likewise.
8039         * lib/classpath.c: Likewise.
8040         * lib/classpath.h: Likewise.
8041         * lib/clean-temp.c: Likewise.
8042         * lib/clean-temp.h: Likewise.
8043         * lib/cloexec.c: Likewise.
8044         * lib/close-stream.c: Likewise.
8045         * lib/closein.c: Likewise.
8046         * lib/closein.h: Likewise.
8047         * lib/closeout.c: Likewise.
8048         * lib/closeout.h: Likewise.
8049         * lib/concat-filename.c: Likewise.
8050         * lib/copy-file.c: Likewise.
8051         * lib/copy-file.h: Likewise.
8052         * lib/count-one-bits.h: Likewise.
8053         * lib/crc.c: Likewise.
8054         * lib/crc.h: Likewise.
8055         * lib/creat-safer.c: Likewise.
8056         * lib/csharpcomp.c: Likewise.
8057         * lib/csharpcomp.h: Likewise.
8058         * lib/csharpexec.c: Likewise.
8059         * lib/csharpexec.h: Likewise.
8060         * lib/cycle-check.c: Likewise.
8061         * lib/cycle-check.h: Likewise.
8062         * lib/diacrit.c: Likewise.
8063         * lib/diacrit.h: Likewise.
8064         * lib/diffseq.h: Likewise.
8065         * lib/dirchownmod.c: Likewise.
8066         * lib/dirent.in.h: Likewise.
8067         * lib/dirfd.c: Likewise.
8068         * lib/dirfd.h: Likewise.
8069         * lib/dirname.c: Likewise.
8070         * lib/dirname.h: Likewise.
8071         * lib/dummy.c: Likewise.
8072         * lib/dup-safer.c: Likewise.
8073         * lib/dup2.c: Likewise.
8074         * lib/eealloc.h: Likewise.
8075         * lib/error.c: Likewise.
8076         * lib/error.h: Likewise.
8077         * lib/euidaccess.c: Likewise.
8078         * lib/exclude.c: Likewise.
8079         * lib/exclude.h: Likewise.
8080         * lib/execute.c: Likewise.
8081         * lib/execute.h: Likewise.
8082         * lib/exitfail.c: Likewise.
8083         * lib/exitfail.h: Likewise.
8084         * lib/expl.c: Likewise.
8085         * lib/fatal-signal.c: Likewise.
8086         * lib/fatal-signal.h: Likewise.
8087         * lib/fbufmode.c: Likewise.
8088         * lib/fbufmode.h: Likewise.
8089         * lib/fchdir.c: Likewise.
8090         * lib/fchmodat.c: Likewise.
8091         * lib/fchownat.c: Likewise.
8092         * lib/fcntl--.h: Likewise.
8093         * lib/fcntl-safer.h: Likewise.
8094         * lib/fcntl.in.h: Likewise.
8095         * lib/fd-safer.c: Likewise.
8096         * lib/fflush.c: Likewise.
8097         * lib/file-has-acl.c: Likewise.
8098         * lib/file-set.c: Likewise.
8099         * lib/file-type.c: Likewise.
8100         * lib/file-type.h: Likewise.
8101         * lib/fileblocks.c: Likewise.
8102         * lib/filemode.c: Likewise.
8103         * lib/filemode.h: Likewise.
8104         * lib/filename.h: Likewise.
8105         * lib/filenamecat.c: Likewise.
8106         * lib/filenamecat.h: Likewise.
8107         * lib/findprog.c: Likewise.
8108         * lib/findprog.h: Likewise.
8109         * lib/float.in.h: Likewise.
8110         * lib/floor.c: Likewise.
8111         * lib/floorf.c: Likewise.
8112         * lib/floorl.c: Likewise.
8113         * lib/fopen-safer.c: Likewise.
8114         * lib/fopen.c: Likewise.
8115         * lib/fpending.c: Likewise.
8116         * lib/fpending.h: Likewise.
8117         * lib/fprintf.c: Likewise.
8118         * lib/fprintftime.h: Likewise.
8119         * lib/fpucw.h: Likewise.
8120         * lib/fpurge.c: Likewise.
8121         * lib/fpurge.h: Likewise.
8122         * lib/freadable.c: Likewise.
8123         * lib/freadable.h: Likewise.
8124         * lib/freadahead.c: Likewise.
8125         * lib/freadahead.h: Likewise.
8126         * lib/freading.c: Likewise.
8127         * lib/freading.h: Likewise.
8128         * lib/free.c: Likewise.
8129         * lib/freopen.c: Likewise.
8130         * lib/frexp.c: Likewise.
8131         * lib/frexpl.c: Likewise.
8132         * lib/fseek.c: Likewise.
8133         * lib/fseterr.c: Likewise.
8134         * lib/fseterr.h: Likewise.
8135         * lib/fstatat.c: Likewise.
8136         * lib/fstrcmp.c: Likewise.
8137         * lib/fstrcmp.h: Likewise.
8138         * lib/fsusage.c: Likewise.
8139         * lib/fsusage.h: Likewise.
8140         * lib/ftell.c: Likewise.
8141         * lib/ftello.c: Likewise.
8142         * lib/fts-cycle.c: Likewise.
8143         * lib/fts.c: Likewise.
8144         * lib/fts_.h: Likewise.
8145         * lib/full-read.c: Likewise.
8146         * lib/full-read.h: Likewise.
8147         * lib/full-write.c: Likewise.
8148         * lib/full-write.h: Likewise.
8149         * lib/fwritable.c: Likewise.
8150         * lib/fwritable.h: Likewise.
8151         * lib/fwriteerror.c: Likewise.
8152         * lib/fwriteerror.h: Likewise.
8153         * lib/fwriting.c: Likewise.
8154         * lib/fwriting.h: Likewise.
8155         * lib/gcd.c: Likewise.
8156         * lib/gcd.h: Likewise.
8157         * lib/getcwd.c: Likewise.
8158         * lib/getdate.h: Likewise.
8159         * lib/getdate.y: Likewise.
8160         * lib/getdomainname.c: Likewise.
8161         * lib/getdomainname.h: Likewise.
8162         * lib/getgroups.c: Likewise.
8163         * lib/gethostname.c: Likewise.
8164         * lib/gethrxtime.c: Likewise.
8165         * lib/gethrxtime.h: Likewise.
8166         * lib/getloadavg.c: Likewise.
8167         * lib/getndelim2.c: Likewise.
8168         * lib/getndelim2.h: Likewise.
8169         * lib/getnline.c: Likewise.
8170         * lib/getnline.h: Likewise.
8171         * lib/getopt.c: Likewise.
8172         * lib/getopt.in.h: Likewise.
8173         * lib/getopt1.c: Likewise.
8174         * lib/getopt_int.h: Likewise.
8175         * lib/getpagesize.h: Likewise.
8176         * lib/getsubopt.c: Likewise.
8177         * lib/gettime.c: Likewise.
8178         * lib/getugroups.c: Likewise.
8179         * lib/getugroups.h: Likewise.
8180         * lib/getusershell.c: Likewise.
8181         * lib/gl_anyavltree_list1.h: Likewise.
8182         * lib/gl_anyavltree_list2.h: Likewise.
8183         * lib/gl_anyhash_list1.h: Likewise.
8184         * lib/gl_anyhash_list2.h: Likewise.
8185         * lib/gl_anylinked_list1.h: Likewise.
8186         * lib/gl_anylinked_list2.h: Likewise.
8187         * lib/gl_anyrbtree_list1.h: Likewise.
8188         * lib/gl_anyrbtree_list2.h: Likewise.
8189         * lib/gl_anytree_list1.h: Likewise.
8190         * lib/gl_anytree_list2.h: Likewise.
8191         * lib/gl_anytree_oset.h: Likewise.
8192         * lib/gl_anytreehash_list1.h: Likewise.
8193         * lib/gl_anytreehash_list2.h: Likewise.
8194         * lib/gl_array_list.c: Likewise.
8195         * lib/gl_array_list.h: Likewise.
8196         * lib/gl_array_oset.c: Likewise.
8197         * lib/gl_array_oset.h: Likewise.
8198         * lib/gl_avltree_list.c: Likewise.
8199         * lib/gl_avltree_list.h: Likewise.
8200         * lib/gl_avltree_oset.c: Likewise.
8201         * lib/gl_avltree_oset.h: Likewise.
8202         * lib/gl_avltreehash_list.c: Likewise.
8203         * lib/gl_avltreehash_list.h: Likewise.
8204         * lib/gl_carray_list.c: Likewise.
8205         * lib/gl_carray_list.h: Likewise.
8206         * lib/gl_linked_list.c: Likewise.
8207         * lib/gl_linked_list.h: Likewise.
8208         * lib/gl_linkedhash_list.c: Likewise.
8209         * lib/gl_linkedhash_list.h: Likewise.
8210         * lib/gl_list.c: Likewise.
8211         * lib/gl_list.h: Likewise.
8212         * lib/gl_oset.c: Likewise.
8213         * lib/gl_oset.h: Likewise.
8214         * lib/gl_rbtree_list.c: Likewise.
8215         * lib/gl_rbtree_list.h: Likewise.
8216         * lib/gl_rbtree_oset.c: Likewise.
8217         * lib/gl_rbtree_oset.h: Likewise.
8218         * lib/gl_rbtreehash_list.c: Likewise.
8219         * lib/gl_rbtreehash_list.h: Likewise.
8220         * lib/gl_sublist.c: Likewise.
8221         * lib/gl_sublist.h: Likewise.
8222         * lib/group-member.c: Likewise.
8223         * lib/group-member.h: Likewise.
8224         * lib/hard-locale.c: Likewise.
8225         * lib/hard-locale.h: Likewise.
8226         * lib/hash-pjw.c: Likewise.
8227         * lib/hash-pjw.h: Likewise.
8228         * lib/hash-triple.c: Likewise.
8229         * lib/hash.c: Likewise.
8230         * lib/hash.h: Likewise.
8231         * lib/human.c: Likewise.
8232         * lib/human.h: Likewise.
8233         * lib/i-ring.c: Likewise.
8234         * lib/i-ring.h: Likewise.
8235         * lib/idcache.c: Likewise.
8236         * lib/imaxabs.c: Likewise.
8237         * lib/imaxdiv.c: Likewise.
8238         * lib/inet_pton.c: Likewise.
8239         * lib/inet_pton.h: Likewise.
8240         * lib/intprops.h: Likewise.
8241         * lib/inttostr.c: Likewise.
8242         * lib/inttostr.h: Likewise.
8243         * lib/inttypes.in.h: Likewise.
8244         * lib/isapipe.c: Likewise.
8245         * lib/isdir.c: Likewise.
8246         * lib/isnan.c: Likewise.
8247         * lib/isnan.h: Likewise.
8248         * lib/isnanf.c: Likewise.
8249         * lib/isnanf.h: Likewise.
8250         * lib/isnanl-nolibm.h: Likewise.
8251         * lib/isnanl.c: Likewise.
8252         * lib/isnanl.h: Likewise.
8253         * lib/javacomp.c: Likewise.
8254         * lib/javacomp.h: Likewise.
8255         * lib/javaexec.c: Likewise.
8256         * lib/javaexec.h: Likewise.
8257         * lib/javaversion.c: Likewise.
8258         * lib/javaversion.h: Likewise.
8259         * lib/javaversion.java: Likewise.
8260         * lib/lbrkprop.h: Likewise.
8261         * lib/lchmod.h: Likewise.
8262         * lib/lchown.c: Likewise.
8263         * lib/ldexpl.c: Likewise.
8264         * lib/linebreak.c: Likewise.
8265         * lib/linebreak.h: Likewise.
8266         * lib/linebuffer.c: Likewise.
8267         * lib/linebuffer.h: Likewise.
8268         * lib/locale.in.h: Likewise.
8269         * lib/logl.c: Likewise.
8270         * lib/long-options.c: Likewise.
8271         * lib/long-options.h: Likewise.
8272         * lib/lstat.c: Likewise.
8273         * lib/lstat.h: Likewise.
8274         * lib/math.in.h: Likewise.
8275         * lib/mbchar.c: Likewise.
8276         * lib/mbchar.h: Likewise.
8277         * lib/mbfile.h: Likewise.
8278         * lib/mbiter.h: Likewise.
8279         * lib/mbscasecmp.c: Likewise.
8280         * lib/mbscasestr.c: Likewise.
8281         * lib/mbschr.c: Likewise.
8282         * lib/mbscspn.c: Likewise.
8283         * lib/mbslen.c: Likewise.
8284         * lib/mbsncasecmp.c: Likewise.
8285         * lib/mbsnlen.c: Likewise.
8286         * lib/mbspbrk.c: Likewise.
8287         * lib/mbspcasecmp.c: Likewise.
8288         * lib/mbsrchr.c: Likewise.
8289         * lib/mbssep.c: Likewise.
8290         * lib/mbsspn.c: Likewise.
8291         * lib/mbsstr.c: Likewise.
8292         * lib/mbstok_r.c: Likewise.
8293         * lib/mbswidth.c: Likewise.
8294         * lib/mbswidth.h: Likewise.
8295         * lib/mbuiter.h: Likewise.
8296         * lib/memcasecmp.c: Likewise.
8297         * lib/memcasecmp.h: Likewise.
8298         * lib/memchr.c: Likewise.
8299         * lib/memcmp.c: Likewise.
8300         * lib/memcoll.c: Likewise.
8301         * lib/memcoll.h: Likewise.
8302         * lib/memcpy.c: Likewise.
8303         * lib/memrchr.c: Likewise.
8304         * lib/mkancesdirs.c: Likewise.
8305         * lib/mkdir-p.c: Likewise.
8306         * lib/mkdir-p.h: Likewise.
8307         * lib/mkdir.c: Likewise.
8308         * lib/mkdirat.c: Likewise.
8309         * lib/mkdtemp.c: Likewise.
8310         * lib/mkstemp-safer.c: Likewise.
8311         * lib/mkstemp.c: Likewise.
8312         * lib/modechange.c: Likewise.
8313         * lib/modechange.h: Likewise.
8314         * lib/mountlist.c: Likewise.
8315         * lib/mountlist.h: Likewise.
8316         * lib/mpsort.c: Likewise.
8317         * lib/nanosleep.c: Likewise.
8318         * lib/obstack.c: Likewise.
8319         * lib/obstack.h: Likewise.
8320         * lib/open-safer.c: Likewise.
8321         * lib/open.c: Likewise.
8322         * lib/openat-die.c: Likewise.
8323         * lib/openat-priv.h: Likewise.
8324         * lib/openat-proc.c: Likewise.
8325         * lib/openat.c: Likewise.
8326         * lib/openat.h: Likewise.
8327         * lib/pagealign_alloc.c: Likewise.
8328         * lib/pagealign_alloc.h: Likewise.
8329         * lib/physmem.c: Likewise.
8330         * lib/physmem.h: Likewise.
8331         * lib/pipe-safer.c: Likewise.
8332         * lib/pipe.c: Likewise.
8333         * lib/pipe.h: Likewise.
8334         * lib/posixtm.c: Likewise.
8335         * lib/posixtm.h: Likewise.
8336         * lib/posixver.c: Likewise.
8337         * lib/printf-frexp.c: Likewise.
8338         * lib/printf-frexp.h: Likewise.
8339         * lib/printf-frexpl.c: Likewise.
8340         * lib/printf-frexpl.h: Likewise.
8341         * lib/printf.c: Likewise.
8342         * lib/progname.c: Likewise.
8343         * lib/progname.h: Likewise.
8344         * lib/progreloc.c: Likewise.
8345         * lib/putenv.c: Likewise.
8346         * lib/quote.c: Likewise.
8347         * lib/quote.h: Likewise.
8348         * lib/quotearg.c: Likewise.
8349         * lib/quotearg.h: Likewise.
8350         * lib/raise.c: Likewise.
8351         * lib/readline.c: Likewise.
8352         * lib/readline.h: Likewise.
8353         * lib/readlink.c: Likewise.
8354         * lib/readtokens.c: Likewise.
8355         * lib/readtokens.h: Likewise.
8356         * lib/readtokens0.c: Likewise.
8357         * lib/readtokens0.h: Likewise.
8358         * lib/readutmp.c: Likewise.
8359         * lib/readutmp.h: Likewise.
8360         * lib/realloc.c: Likewise.
8361         * lib/relocwrapper.c: Likewise.
8362         * lib/rename-dest-slash.c: Likewise.
8363         * lib/rename.c: Likewise.
8364         * lib/rmdir.c: Likewise.
8365         * lib/rpmatch.c: Likewise.
8366         * lib/safe-read.c: Likewise.
8367         * lib/safe-read.h: Likewise.
8368         * lib/safe-write.c: Likewise.
8369         * lib/safe-write.h: Likewise.
8370         * lib/same-inode.h: Likewise.
8371         * lib/same.c: Likewise.
8372         * lib/same.h: Likewise.
8373         * lib/save-cwd.c: Likewise.
8374         * lib/save-cwd.h: Likewise.
8375         * lib/savedir.c: Likewise.
8376         * lib/savedir.h: Likewise.
8377         * lib/savewd.c: Likewise.
8378         * lib/savewd.h: Likewise.
8379         * lib/search.in.h: Likewise.
8380         * lib/setenv.c: Likewise.
8381         * lib/setenv.h: Likewise.
8382         * lib/settime.c: Likewise.
8383         * lib/sh-quote.c: Likewise.
8384         * lib/sh-quote.h: Likewise.
8385         * lib/sig2str.c: Likewise.
8386         * lib/sig2str.h: Likewise.
8387         * lib/signal.in.h: Likewise.
8388         * lib/signbitd.c: Likewise.
8389         * lib/signbitf.c: Likewise.
8390         * lib/signbitl.c: Likewise.
8391         * lib/sigprocmask.c: Likewise.
8392         * lib/sincosl.c: Likewise.
8393         * lib/sleep.c: Likewise.
8394         * lib/sprintf.c: Likewise.
8395         * lib/sqrtl.c: Likewise.
8396         * lib/stat-time.h: Likewise.
8397         * lib/stdio--.h: Likewise.
8398         * lib/stdio-safer.h: Likewise.
8399         * lib/stdlib--.h: Likewise.
8400         * lib/stdlib-safer.h: Likewise.
8401         * lib/stdlib.in.h: Likewise.
8402         * lib/stpcpy.c: Likewise.
8403         * lib/stpncpy.c: Likewise.
8404         * lib/strchrnul.c: Likewise.
8405         * lib/strcspn.c: Likewise.
8406         * lib/strerror.c: Likewise.
8407         * lib/strftime.c: Likewise.
8408         * lib/strftime.h: Likewise.
8409         * lib/striconveh.c: Likewise.
8410         * lib/striconveh.h: Likewise.
8411         * lib/striconveha.c: Likewise.
8412         * lib/striconveha.h: Likewise.
8413         * lib/stripslash.c: Likewise.
8414         * lib/strnlen1.c: Likewise.
8415         * lib/strnlen1.h: Likewise.
8416         * lib/strtod.c: Likewise.
8417         * lib/strtoimax.c: Likewise.
8418         * lib/strtok_r.c: Likewise.
8419         * lib/strtol.c: Likewise.
8420         * lib/strtoll.c: Likewise.
8421         * lib/strtoul.c: Likewise.
8422         * lib/strtoull.c: Likewise.
8423         * lib/sysexits.in.h: Likewise.
8424         * lib/tempname.c: Likewise.
8425         * lib/tempname.h: Likewise.
8426         * lib/timespec.h: Likewise.
8427         * lib/tls.c: Likewise.
8428         * lib/tls.h: Likewise.
8429         * lib/tmpdir.c: Likewise.
8430         * lib/tmpdir.h: Likewise.
8431         * lib/tmpfile-safer.c: Likewise.
8432         * lib/tmpfile.c: Likewise.
8433         * lib/trigl.c: Likewise.
8434         * lib/trigl.h: Likewise.
8435         * lib/trim.c: Likewise.
8436         * lib/trim.h: Likewise.
8437         * lib/trunc.c: Likewise.
8438         * lib/truncf.c: Likewise.
8439         * lib/truncl.c: Likewise.
8440         * lib/tsearch.c: Likewise.
8441         * lib/unicodeio.c: Likewise.
8442         * lib/unicodeio.h: Likewise.
8443         * lib/unistd--.h: Likewise.
8444         * lib/unistd-safer.h: Likewise.
8445         * lib/unistdio/ulc-fprintf.c: Likewise.
8446         * lib/unistdio/ulc-vfprintf.c: Likewise.
8447         * lib/unlinkdir.c: Likewise.
8448         * lib/unlinkdir.h: Likewise.
8449         * lib/unlocked-io.h: Likewise.
8450         * lib/unsetenv.c: Likewise.
8451         * lib/userspec.c: Likewise.
8452         * lib/utime.c: Likewise.
8453         * lib/utimecmp.c: Likewise.
8454         * lib/utimecmp.h: Likewise.
8455         * lib/utimens.c: Likewise.
8456         * lib/verify.h: Likewise.
8457         * lib/verror.c: Likewise.
8458         * lib/verror.h: Likewise.
8459         * lib/version-etc-fsf.c: Likewise.
8460         * lib/version-etc.c: Likewise.
8461         * lib/version-etc.h: Likewise.
8462         * lib/vfprintf.c: Likewise.
8463         * lib/vprintf.c: Likewise.
8464         * lib/vsprintf.c: Likewise.
8465         * lib/w32spawn.h: Likewise.
8466         * lib/wait-process.c: Likewise.
8467         * lib/wait-process.h: Likewise.
8468         * lib/wcwidth.c: Likewise.
8469         * lib/write-any-file.c: Likewise.
8470         * lib/xalloc-die.c: Likewise.
8471         * lib/xalloc.h: Likewise.
8472         * lib/xasprintf.c: Likewise.
8473         * lib/xgetcwd.c: Likewise.
8474         * lib/xgetcwd.h: Likewise.
8475         * lib/xgetdomainname.c: Likewise.
8476         * lib/xgetdomainname.h: Likewise.
8477         * lib/xgethostname.c: Likewise.
8478         * lib/xmalloc.c: Likewise.
8479         * lib/xmalloca.c: Likewise.
8480         * lib/xmalloca.h: Likewise.
8481         * lib/xmemcoll.c: Likewise.
8482         * lib/xnanosleep.c: Likewise.
8483         * lib/xreadlink.c: Likewise.
8484         * lib/xreadlink.h: Likewise.
8485         * lib/xsetenv.c: Likewise.
8486         * lib/xsetenv.h: Likewise.
8487         * lib/xstriconv.c: Likewise.
8488         * lib/xstriconv.h: Likewise.
8489         * lib/xstrndup.c: Likewise.
8490         * lib/xstrndup.h: Likewise.
8491         * lib/xstrtod.c: Likewise.
8492         * lib/xstrtod.h: Likewise.
8493         * lib/xstrtol-error.c: Likewise.
8494         * lib/xstrtol.c: Likewise.
8495         * lib/xstrtol.h: Likewise.
8496         * lib/xtime.h: Likewise.
8497         * lib/xvasprintf.c: Likewise.
8498         * lib/xvasprintf.h: Likewise.
8499         * lib/yesno.c: Likewise.
8500         * lib/yesno.h: Likewise.
8501         * posix-modules: Likewise.
8502         * tests/test-alloca-opt.c: Likewise.
8503         * tests/test-arcfour.c: Likewise.
8504         * tests/test-arctwo.c: Likewise.
8505         * tests/test-argmatch.c: Likewise.
8506         * tests/test-argp-2.sh: Likewise.
8507         * tests/test-argp.c: Likewise.
8508         * tests/test-arpa_inet.c: Likewise.
8509         * tests/test-array_list.c: Likewise.
8510         * tests/test-array_oset.c: Likewise.
8511         * tests/test-atexit.c: Likewise.
8512         * tests/test-avltree_list.c: Likewise.
8513         * tests/test-avltree_oset.c: Likewise.
8514         * tests/test-avltreehash_list.c: Likewise.
8515         * tests/test-base64.c: Likewise.
8516         * tests/test-binary-io.c: Likewise.
8517         * tests/test-byteswap.c: Likewise.
8518         * tests/test-c-ctype.c: Likewise.
8519         * tests/test-c-strcasecmp.c: Likewise.
8520         * tests/test-c-strcasestr.c: Likewise.
8521         * tests/test-c-strncasecmp.c: Likewise.
8522         * tests/test-c-strstr.c: Likewise.
8523         * tests/test-canonicalize-lgpl.c: Likewise.
8524         * tests/test-canonicalize.c: Likewise.
8525         * tests/test-carray_list.c: Likewise.
8526         * tests/test-ceilf.c: Likewise.
8527         * tests/test-ceill.c: Likewise.
8528         * tests/test-count-one-bits.c: Likewise.
8529         * tests/test-crc.c: Likewise.
8530         * tests/test-dirname.c: Likewise.
8531         * tests/test-fbufmode.c: Likewise.
8532         * tests/test-fcntl.c: Likewise.
8533         * tests/test-fflush.c: Likewise.
8534         * tests/test-floorf.c: Likewise.
8535         * tests/test-floorl.c: Likewise.
8536         * tests/test-fopen.c: Likewise.
8537         * tests/test-fprintf-posix.c: Likewise.
8538         * tests/test-fprintf-posix.h: Likewise.
8539         * tests/test-fpurge.c: Likewise.
8540         * tests/test-freadable.c: Likewise.
8541         * tests/test-freadahead.c: Likewise.
8542         * tests/test-freading.c: Likewise.
8543         * tests/test-freopen.c: Likewise.
8544         * tests/test-frexp.c: Likewise.
8545         * tests/test-frexpl.c: Likewise.
8546         * tests/test-fseek.c: Likewise.
8547         * tests/test-fseeko.c: Likewise.
8548         * tests/test-fseterr.c: Likewise.
8549         * tests/test-fstrcmp.c: Likewise.
8550         * tests/test-ftell.c: Likewise.
8551         * tests/test-ftello.c: Likewise.
8552         * tests/test-fwritable.c: Likewise.
8553         * tests/test-fwriting.c: Likewise.
8554         * tests/test-getaddrinfo.c: Likewise.
8555         * tests/test-getpass.c: Likewise.
8556         * tests/test-gettimeofday.c: Likewise.
8557         * tests/test-hmac-md5.c: Likewise.
8558         * tests/test-hmac-sha1.c: Likewise.
8559         * tests/test-iconv.c: Likewise.
8560         * tests/test-iconvme.c: Likewise.
8561         * tests/test-inttypes.c: Likewise.
8562         * tests/test-isnan.c: Likewise.
8563         * tests/test-isnanf.c: Likewise.
8564         * tests/test-isnanl-nolibm.c: Likewise.
8565         * tests/test-isnanl.c: Likewise.
8566         * tests/test-isnanl.h: Likewise.
8567         * tests/test-ldexpl.c: Likewise.
8568         * tests/test-linked_list.c: Likewise.
8569         * tests/test-linkedhash_list.c: Likewise.
8570         * tests/test-locale.c: Likewise.
8571         * tests/test-localename.c: Likewise.
8572         * tests/test-lock.c: Likewise.
8573         * tests/test-lseek.c: Likewise.
8574         * tests/test-malloca.c: Likewise.
8575         * tests/test-math.c: Likewise.
8576         * tests/test-mbscasecmp.c: Likewise.
8577         * tests/test-mbscasestr1.c: Likewise.
8578         * tests/test-mbscasestr2.c: Likewise.
8579         * tests/test-mbscasestr3.c: Likewise.
8580         * tests/test-mbscasestr4.c: Likewise.
8581         * tests/test-mbschr.c: Likewise.
8582         * tests/test-mbscspn.c: Likewise.
8583         * tests/test-mbsncasecmp.c: Likewise.
8584         * tests/test-mbspbrk.c: Likewise.
8585         * tests/test-mbspcasecmp.c: Likewise.
8586         * tests/test-mbsrchr.c: Likewise.
8587         * tests/test-mbsspn.c: Likewise.
8588         * tests/test-mbsstr1.c: Likewise.
8589         * tests/test-mbsstr2.c: Likewise.
8590         * tests/test-mbsstr3.c: Likewise.
8591         * tests/test-md5.c: Likewise.
8592         * tests/test-memmem.c: Likewise.
8593         * tests/test-netinet_in.c: Likewise.
8594         * tests/test-open.c: Likewise.
8595         * tests/test-printf-frexp.c: Likewise.
8596         * tests/test-printf-frexpl.c: Likewise.
8597         * tests/test-printf-posix.c: Likewise.
8598         * tests/test-printf-posix.h: Likewise.
8599         * tests/test-rbtree_list.c: Likewise.
8600         * tests/test-rbtree_oset.c: Likewise.
8601         * tests/test-rbtreehash_list.c: Likewise.
8602         * tests/test-read-file.c: Likewise.
8603         * tests/test-rijndael.c: Likewise.
8604         * tests/test-search.c: Likewise.
8605         * tests/test-signbit.c: Likewise.
8606         * tests/test-sleep.c: Likewise.
8607         * tests/test-snprintf-posix.c: Likewise.
8608         * tests/test-snprintf-posix.h: Likewise.
8609         * tests/test-snprintf.c: Likewise.
8610         * tests/test-sprintf-posix.c: Likewise.
8611         * tests/test-sprintf-posix.h: Likewise.
8612         * tests/test-stat-time.c: Likewise.
8613         * tests/test-stdbool.c: Likewise.
8614         * tests/test-stdint.c: Likewise.
8615         * tests/test-stdio.c: Likewise.
8616         * tests/test-stdlib.c: Likewise.
8617         * tests/test-stpncpy.c: Likewise.
8618         * tests/test-strcasestr.c: Likewise.
8619         * tests/test-striconv.c: Likewise.
8620         * tests/test-striconveh.c: Likewise.
8621         * tests/test-striconveha.c: Likewise.
8622         * tests/test-string.c: Likewise.
8623         * tests/test-sys_select.c: Likewise.
8624         * tests/test-sys_socket.c: Likewise.
8625         * tests/test-sys_stat.c: Likewise.
8626         * tests/test-sys_time.c: Likewise.
8627         * tests/test-sysexits.c: Likewise.
8628         * tests/test-time.c: Likewise.
8629         * tests/test-tls.c: Likewise.
8630         * tests/test-trunc.c: Likewise.
8631         * tests/test-truncf.c: Likewise.
8632         * tests/test-truncl.c: Likewise.
8633         * tests/test-unistd.c: Likewise.
8634         * tests/test-vasnprintf-posix.c: Likewise.
8635         * tests/test-vasnprintf-posix2.c: Likewise.
8636         * tests/test-vasnprintf.c: Likewise.
8637         * tests/test-vasprintf-posix.c: Likewise.
8638         * tests/test-vasprintf.c: Likewise.
8639         * tests/test-verify.c: Likewise.
8640         * tests/test-vfprintf-posix.c: Likewise.
8641         * tests/test-vprintf-posix.c: Likewise.
8642         * tests/test-vsnprintf-posix.c: Likewise.
8643         * tests/test-vsnprintf.c: Likewise.
8644         * tests/test-vsprintf-posix.c: Likewise.
8645         * tests/test-wchar.c: Likewise.
8646         * tests/test-wctype.c: Likewise.
8647         * tests/test-wcwidth.c: Likewise.
8648         * tests/test-xstrtol.c: Likewise.
8649         * tests/test-xvasprintf.c: Likewise.
8650         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
8651         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
8652         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
8653         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
8654         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
8655         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
8656         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
8657         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
8658         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
8659         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
8660         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
8661         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
8662         * tests/uniname/test-uninames.c: Likewise.
8663         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
8664         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
8665         * tests/unistdio/test-u16-printf1.h: Likewise.
8666         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
8667         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
8668         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
8669         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
8670         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
8671         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
8672         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
8673         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
8674         * tests/unistdio/test-u32-printf1.h: Likewise.
8675         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
8676         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
8677         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
8678         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
8679         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
8680         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
8681         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
8682         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
8683         * tests/unistdio/test-u8-printf1.h: Likewise.
8684         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
8685         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
8686         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
8687         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
8688         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
8689         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
8690         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
8691         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
8692         * tests/unistdio/test-ulc-printf1.h: Likewise.
8693         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
8694         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
8695         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
8696         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
8697         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
8698         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
8699         * tests/uniwidth/test-u16-strwidth.c: Likewise.
8700         * tests/uniwidth/test-u16-width.c: Likewise.
8701         * tests/uniwidth/test-u32-strwidth.c: Likewise.
8702         * tests/uniwidth/test-u32-width.c: Likewise.
8703         * tests/uniwidth/test-u8-strwidth.c: Likewise.
8704         * tests/uniwidth/test-u8-width.c: Likewise.
8705         * tests/uniwidth/test-uc_width.c: Likewise.
8706         * config/srclist-update: Likewise.
8707         (fixlicense): Update to GPLv3+.
8708
8709         Change copyright notice from LGPLv2.1+ to LGPLv3+.
8710         * tests/test-tsearch.c: Change copyright notice.
8711
8712         Change copyright notice from LGPLv2.0+ to LGPLv3+.
8713         * lib/c-strcaseeq.h: Change copyright notice.
8714         * lib/streq.h: Likewise.
8715         * lib/uniconv.h: Likewise.
8716         * lib/uniconv/u-conv-from-enc.h: Likewise.
8717         * lib/uniconv/u-conv-to-enc.h: Likewise.
8718         * lib/uniconv/u-strconv-from-enc.h: Likewise.
8719         * lib/uniconv/u-strconv-to-enc.h: Likewise.
8720         * lib/uniconv/u16-conv-from-enc.c: Likewise.
8721         * lib/uniconv/u16-conv-to-enc.c: Likewise.
8722         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
8723         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
8724         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
8725         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
8726         * lib/uniconv/u32-conv-from-enc.c: Likewise.
8727         * lib/uniconv/u32-conv-to-enc.c: Likewise.
8728         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
8729         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
8730         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
8731         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
8732         * lib/uniconv/u8-conv-from-enc.c: Likewise.
8733         * lib/uniconv/u8-conv-to-enc.c: Likewise.
8734         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
8735         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
8736         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
8737         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
8738         * lib/uniname.h: Likewise.
8739         * lib/uniname/uniname.c: Likewise.
8740         * lib/unistdio.h: Likewise.
8741         * lib/unistdio/u-asnprintf.h: Likewise.
8742         * lib/unistdio/u-asprintf.h: Likewise.
8743         * lib/unistdio/u-printf-args.c: Likewise.
8744         * lib/unistdio/u-printf-args.h: Likewise.
8745         * lib/unistdio/u-printf-parse.h: Likewise.
8746         * lib/unistdio/u-snprintf.h: Likewise.
8747         * lib/unistdio/u-sprintf.h: Likewise.
8748         * lib/unistdio/u-vasprintf.h: Likewise.
8749         * lib/unistdio/u-vsnprintf.h: Likewise.
8750         * lib/unistdio/u-vsprintf.h: Likewise.
8751         * lib/unistdio/u16-asnprintf.c: Likewise.
8752         * lib/unistdio/u16-asprintf.c: Likewise.
8753         * lib/unistdio/u16-printf-parse.c: Likewise.
8754         * lib/unistdio/u16-snprintf.c: Likewise.
8755         * lib/unistdio/u16-sprintf.c: Likewise.
8756         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
8757         * lib/unistdio/u16-u16-asprintf.c: Likewise.
8758         * lib/unistdio/u16-u16-snprintf.c: Likewise.
8759         * lib/unistdio/u16-u16-sprintf.c: Likewise.
8760         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
8761         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
8762         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
8763         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
8764         * lib/unistdio/u16-vasnprintf.c: Likewise.
8765         * lib/unistdio/u16-vasprintf.c: Likewise.
8766         * lib/unistdio/u16-vsnprintf.c: Likewise.
8767         * lib/unistdio/u16-vsprintf.c: Likewise.
8768         * lib/unistdio/u32-asnprintf.c: Likewise.
8769         * lib/unistdio/u32-asprintf.c: Likewise.
8770         * lib/unistdio/u32-printf-parse.c: Likewise.
8771         * lib/unistdio/u32-snprintf.c: Likewise.
8772         * lib/unistdio/u32-sprintf.c: Likewise.
8773         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
8774         * lib/unistdio/u32-u32-asprintf.c: Likewise.
8775         * lib/unistdio/u32-u32-snprintf.c: Likewise.
8776         * lib/unistdio/u32-u32-sprintf.c: Likewise.
8777         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
8778         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
8779         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
8780         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
8781         * lib/unistdio/u32-vasnprintf.c: Likewise.
8782         * lib/unistdio/u32-vasprintf.c: Likewise.
8783         * lib/unistdio/u32-vsnprintf.c: Likewise.
8784         * lib/unistdio/u32-vsprintf.c: Likewise.
8785         * lib/unistdio/u8-asnprintf.c: Likewise.
8786         * lib/unistdio/u8-asprintf.c: Likewise.
8787         * lib/unistdio/u8-printf-parse.c: Likewise.
8788         * lib/unistdio/u8-snprintf.c: Likewise.
8789         * lib/unistdio/u8-sprintf.c: Likewise.
8790         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
8791         * lib/unistdio/u8-u8-asprintf.c: Likewise.
8792         * lib/unistdio/u8-u8-snprintf.c: Likewise.
8793         * lib/unistdio/u8-u8-sprintf.c: Likewise.
8794         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
8795         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
8796         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
8797         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
8798         * lib/unistdio/u8-vasnprintf.c: Likewise.
8799         * lib/unistdio/u8-vasprintf.c: Likewise.
8800         * lib/unistdio/u8-vsnprintf.c: Likewise.
8801         * lib/unistdio/u8-vsprintf.c: Likewise.
8802         * lib/unistdio/ulc-asnprintf.c: Likewise.
8803         * lib/unistdio/ulc-asprintf.c: Likewise.
8804         * lib/unistdio/ulc-printf-parse.c: Likewise.
8805         * lib/unistdio/ulc-snprintf.c: Likewise.
8806         * lib/unistdio/ulc-sprintf.c: Likewise.
8807         * lib/unistdio/ulc-vasnprintf.c: Likewise.
8808         * lib/unistdio/ulc-vasprintf.c: Likewise.
8809         * lib/unistdio/ulc-vsnprintf.c: Likewise.
8810         * lib/unistdio/ulc-vsprintf.c: Likewise.
8811         * lib/unistr.h: Likewise.
8812         * lib/unistr/u-cpy-alloc.h: Likewise.
8813         * lib/unistr/u-cpy.h: Likewise.
8814         * lib/unistr/u-endswith.h: Likewise.
8815         * lib/unistr/u-move.h: Likewise.
8816         * lib/unistr/u-set.h: Likewise.
8817         * lib/unistr/u-startswith.h: Likewise.
8818         * lib/unistr/u-stpcpy.h: Likewise.
8819         * lib/unistr/u-stpncpy.h: Likewise.
8820         * lib/unistr/u-strcat.h: Likewise.
8821         * lib/unistr/u-strcpy.h: Likewise.
8822         * lib/unistr/u-strcspn.h: Likewise.
8823         * lib/unistr/u-strdup.h: Likewise.
8824         * lib/unistr/u-strlen.h: Likewise.
8825         * lib/unistr/u-strncat.h: Likewise.
8826         * lib/unistr/u-strncpy.h: Likewise.
8827         * lib/unistr/u-strnlen.h: Likewise.
8828         * lib/unistr/u-strpbrk.h: Likewise.
8829         * lib/unistr/u-strspn.h: Likewise.
8830         * lib/unistr/u-strstr.h: Likewise.
8831         * lib/unistr/u-strtok.h: Likewise.
8832         * lib/unistr/u16-check.c: Likewise.
8833         * lib/unistr/u16-chr.c: Likewise.
8834         * lib/unistr/u16-cmp.c: Likewise.
8835         * lib/unistr/u16-cpy-alloc.c: Likewise.
8836         * lib/unistr/u16-cpy.c: Likewise.
8837         * lib/unistr/u16-endswith.c: Likewise.
8838         * lib/unistr/u16-mblen.c: Likewise.
8839         * lib/unistr/u16-mbsnlen.c: Likewise.
8840         * lib/unistr/u16-mbtouc-aux.c: Likewise.
8841         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
8842         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
8843         * lib/unistr/u16-mbtouc.c: Likewise.
8844         * lib/unistr/u16-mbtoucr.c: Likewise.
8845         * lib/unistr/u16-move.c: Likewise.
8846         * lib/unistr/u16-next.c: Likewise.
8847         * lib/unistr/u16-prev.c: Likewise.
8848         * lib/unistr/u16-set.c: Likewise.
8849         * lib/unistr/u16-startswith.c: Likewise.
8850         * lib/unistr/u16-stpcpy.c: Likewise.
8851         * lib/unistr/u16-stpncpy.c: Likewise.
8852         * lib/unistr/u16-strcat.c: Likewise.
8853         * lib/unistr/u16-strchr.c: Likewise.
8854         * lib/unistr/u16-strcmp.c: Likewise.
8855         * lib/unistr/u16-strcpy.c: Likewise.
8856         * lib/unistr/u16-strcspn.c: Likewise.
8857         * lib/unistr/u16-strdup.c: Likewise.
8858         * lib/unistr/u16-strlen.c: Likewise.
8859         * lib/unistr/u16-strmblen.c: Likewise.
8860         * lib/unistr/u16-strmbtouc.c: Likewise.
8861         * lib/unistr/u16-strncat.c: Likewise.
8862         * lib/unistr/u16-strncmp.c: Likewise.
8863         * lib/unistr/u16-strncpy.c: Likewise.
8864         * lib/unistr/u16-strnlen.c: Likewise.
8865         * lib/unistr/u16-strpbrk.c: Likewise.
8866         * lib/unistr/u16-strrchr.c: Likewise.
8867         * lib/unistr/u16-strspn.c: Likewise.
8868         * lib/unistr/u16-strstr.c: Likewise.
8869         * lib/unistr/u16-strtok.c: Likewise.
8870         * lib/unistr/u16-to-u32.c: Likewise.
8871         * lib/unistr/u16-to-u8.c: Likewise.
8872         * lib/unistr/u16-uctomb-aux.c: Likewise.
8873         * lib/unistr/u16-uctomb.c: Likewise.
8874         * lib/unistr/u32-check.c: Likewise.
8875         * lib/unistr/u32-chr.c: Likewise.
8876         * lib/unistr/u32-cmp.c: Likewise.
8877         * lib/unistr/u32-cpy-alloc.c: Likewise.
8878         * lib/unistr/u32-cpy.c: Likewise.
8879         * lib/unistr/u32-endswith.c: Likewise.
8880         * lib/unistr/u32-mblen.c: Likewise.
8881         * lib/unistr/u32-mbsnlen.c: Likewise.
8882         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
8883         * lib/unistr/u32-mbtouc.c: Likewise.
8884         * lib/unistr/u32-mbtoucr.c: Likewise.
8885         * lib/unistr/u32-move.c: Likewise.
8886         * lib/unistr/u32-next.c: Likewise.
8887         * lib/unistr/u32-prev.c: Likewise.
8888         * lib/unistr/u32-set.c: Likewise.
8889         * lib/unistr/u32-startswith.c: Likewise.
8890         * lib/unistr/u32-stpcpy.c: Likewise.
8891         * lib/unistr/u32-stpncpy.c: Likewise.
8892         * lib/unistr/u32-strcat.c: Likewise.
8893         * lib/unistr/u32-strchr.c: Likewise.
8894         * lib/unistr/u32-strcmp.c: Likewise.
8895         * lib/unistr/u32-strcpy.c: Likewise.
8896         * lib/unistr/u32-strcspn.c: Likewise.
8897         * lib/unistr/u32-strdup.c: Likewise.
8898         * lib/unistr/u32-strlen.c: Likewise.
8899         * lib/unistr/u32-strmblen.c: Likewise.
8900         * lib/unistr/u32-strmbtouc.c: Likewise.
8901         * lib/unistr/u32-strncat.c: Likewise.
8902         * lib/unistr/u32-strncmp.c: Likewise.
8903         * lib/unistr/u32-strncpy.c: Likewise.
8904         * lib/unistr/u32-strnlen.c: Likewise.
8905         * lib/unistr/u32-strpbrk.c: Likewise.
8906         * lib/unistr/u32-strrchr.c: Likewise.
8907         * lib/unistr/u32-strspn.c: Likewise.
8908         * lib/unistr/u32-strstr.c: Likewise.
8909         * lib/unistr/u32-strtok.c: Likewise.
8910         * lib/unistr/u32-to-u16.c: Likewise.
8911         * lib/unistr/u32-to-u8.c: Likewise.
8912         * lib/unistr/u32-uctomb.c: Likewise.
8913         * lib/unistr/u8-check.c: Likewise.
8914         * lib/unistr/u8-chr.c: Likewise.
8915         * lib/unistr/u8-cmp.c: Likewise.
8916         * lib/unistr/u8-cpy-alloc.c: Likewise.
8917         * lib/unistr/u8-cpy.c: Likewise.
8918         * lib/unistr/u8-endswith.c: Likewise.
8919         * lib/unistr/u8-mblen.c: Likewise.
8920         * lib/unistr/u8-mbsnlen.c: Likewise.
8921         * lib/unistr/u8-mbtouc-aux.c: Likewise.
8922         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
8923         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
8924         * lib/unistr/u8-mbtouc.c: Likewise.
8925         * lib/unistr/u8-mbtoucr.c: Likewise.
8926         * lib/unistr/u8-move.c: Likewise.
8927         * lib/unistr/u8-next.c: Likewise.
8928         * lib/unistr/u8-prev.c: Likewise.
8929         * lib/unistr/u8-set.c: Likewise.
8930         * lib/unistr/u8-startswith.c: Likewise.
8931         * lib/unistr/u8-stpcpy.c: Likewise.
8932         * lib/unistr/u8-stpncpy.c: Likewise.
8933         * lib/unistr/u8-strcat.c: Likewise.
8934         * lib/unistr/u8-strchr.c: Likewise.
8935         * lib/unistr/u8-strcmp.c: Likewise.
8936         * lib/unistr/u8-strcpy.c: Likewise.
8937         * lib/unistr/u8-strcspn.c: Likewise.
8938         * lib/unistr/u8-strdup.c: Likewise.
8939         * lib/unistr/u8-strlen.c: Likewise.
8940         * lib/unistr/u8-strmblen.c: Likewise.
8941         * lib/unistr/u8-strmbtouc.c: Likewise.
8942         * lib/unistr/u8-strncat.c: Likewise.
8943         * lib/unistr/u8-strncmp.c: Likewise.
8944         * lib/unistr/u8-strncpy.c: Likewise.
8945         * lib/unistr/u8-strnlen.c: Likewise.
8946         * lib/unistr/u8-strpbrk.c: Likewise.
8947         * lib/unistr/u8-strrchr.c: Likewise.
8948         * lib/unistr/u8-strspn.c: Likewise.
8949         * lib/unistr/u8-strstr.c: Likewise.
8950         * lib/unistr/u8-strtok.c: Likewise.
8951         * lib/unistr/u8-to-u16.c: Likewise.
8952         * lib/unistr/u8-to-u32.c: Likewise.
8953         * lib/unistr/u8-uctomb-aux.c: Likewise.
8954         * lib/unistr/u8-uctomb.c: Likewise.
8955         * lib/unitypes.h: Likewise.
8956         * lib/uniwidth.h: Likewise.
8957         * lib/uniwidth/cjk.h: Likewise.
8958         * lib/uniwidth/u16-strwidth.c: Likewise.
8959         * lib/uniwidth/u16-width.c: Likewise.
8960         * lib/uniwidth/u32-strwidth.c: Likewise.
8961         * lib/uniwidth/u32-width.c: Likewise.
8962         * lib/uniwidth/u8-strwidth.c: Likewise.
8963         * lib/uniwidth/u8-width.c: Likewise.
8964         * lib/uniwidth/width.c: Likewise.
8965
8966 2007-10-07  Bruno Haible  <bruno@clisp.org>
8967
8968         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
8969         The file is still under LGPL (see modules/inttypes).
8970
8971 2007-10-06  Bruno Haible  <bruno@clisp.org>
8972
8973         * modules/trunc (Dependencies): Add 'extensions'.
8974         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
8975         Reported by Ben Pfaff <blp@gnu.org>.
8976
8977 2007-10-06  Bruno Haible  <bruno@clisp.org>
8978
8979         * modules/freopen-tests: New file.
8980         * tests/test-freopen.c: New file.
8981
8982         * modules/fopen-tests: New file.
8983         * tests/test-fopen.c: New file.
8984
8985         * modules/fopen: New file.
8986         * lib/fopen.c: New file.
8987         * m4/fopen.m4: New file.
8988         * modules/freopen: New file.
8989         * lib/freopen.c: New file.
8990         * m4/freopen.m4: New file.
8991         * lib/stdio.in.h (fopen, freopen): New declarations.
8992         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
8993         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
8994         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
8995         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
8996         * doc/functions/fopen.texi: Mention the 'fopen' module.
8997         * doc/functions/freopen.texi: Mention the 'freopen' module.
8998
8999 2007-10-06  Bruno Haible  <bruno@clisp.org>
9000
9001         * modules/open-tests: New file.
9002         * tests/test-open.c: New file.
9003
9004         * modules/open: New file.
9005         * lib/open.c: New file.
9006         * m4/open.m4: New file.
9007         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
9008         lib/open.c does.
9009         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
9010         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
9011         macros.
9012         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
9013         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
9014         REPLACE_OPEN.
9015         * doc/functions/open.texi: Mention the 'open' module.
9016
9017 2007-10-04  Bruno Haible  <bruno@clisp.org>
9018
9019         * modules/ceill-tests: New file.
9020         * tests/test-ceill.c: New file.
9021
9022         * modules/ceill: New file.
9023         * lib/ceill.c: Replace entire file.
9024         * m4/ceill.m4: New file.
9025         * lib/math.in.h (ceill): Replace declaration.
9026         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
9027         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
9028         * doc/functions/ceill.texi: Mention the 'ceill' module.
9029         * modules/mathl (Files): Remove lib/ceill.c.
9030         (Depends-on): Add ceill.
9031
9032 2007-10-04  Bruno Haible  <bruno@clisp.org>
9033
9034         * modules/ceilf-tests: New file.
9035         * tests/test-ceilf.c: New file.
9036
9037         * modules/ceilf: New file.
9038         * lib/ceil.c: New file.
9039         * lib/ceilf.c: New file.
9040         * m4/ceilf.m4: New file.
9041         * lib/math.in.h (ceilf): New declaration.
9042         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
9043         HAVE_DECL_CEILF.
9044         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
9045         HAVE_DECL_CEILF.
9046         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
9047
9048 2007-10-04  Bruno Haible  <bruno@clisp.org>
9049
9050         * modules/floorl-tests: New file.
9051         * tests/test-floorl.c: New file.
9052
9053         * modules/floorl: New file.
9054         * lib/floorl.c: Replace entire file.
9055         * m4/floorl.m4: New file.
9056         * lib/math.in.h (floorl): Replace declaration.
9057         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
9058         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
9059         * doc/functions/floorl.texi: Mention the 'floorl' module.
9060         * modules/mathl (Files): Remove lib/floorl.c.
9061         (Depends-on): Add floorl.
9062
9063 2007-10-04  Bruno Haible  <bruno@clisp.org>
9064
9065         * modules/floorf-tests: New file.
9066         * tests/test-floorf.c: New file.
9067
9068         * modules/floorf: New file.
9069         * lib/floor.c: New file.
9070         * lib/floorf.c: New file.
9071         * m4/floorf.m4: New file.
9072         * lib/math.in.h (floorf): New declaration.
9073         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
9074         HAVE_DECL_FLOORF.
9075         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
9076         HAVE_DECL_FLOORF.
9077         * doc/functions/floorf.texi: Mention the 'floorf' module.
9078
9079 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
9080             Bruno Haible  <bruno@clisp.org>
9081
9082         Advertise for the Git server instead of the CVS server.
9083         * doc/gnulib-intro.texi (Steady Development): Mention the Git
9084         repository instead of the CVS one.
9085         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
9086         about all VCS systems generically.
9087         * doc/gnulib.texi (Introduction): Capitalize `Git'.
9088
9089 2007-10-04  Bruno Haible  <bruno@clisp.org>
9090
9091         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
9092         means.
9093         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
9094
9095 2007-10-04  Bruno Haible  <bruno@clisp.org>
9096
9097         * modules/truncl-tests: New file.
9098         * tests/test-truncl.c: New file.
9099
9100         * modules/truncl: New file.
9101         * lib/truncl.c: New file.
9102         * m4/truncl.m4: New file.
9103         * lib/math.in.h (truncl): New declaration.
9104         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
9105         HAVE_DECL_TRUNCL.
9106         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
9107         HAVE_DECL_TRUNCL.
9108         * doc/functions/truncl.texi: Mention the 'truncl' module.
9109
9110 2007-10-04  Bruno Haible  <bruno@clisp.org>
9111
9112         * modules/truncf-tests: New file.
9113         * tests/test-truncf.c: New file.
9114
9115         * modules/truncf: New file.
9116         * lib/trunc.c: Make paramerizable through USE_* macros.
9117         * lib/truncf.c: New file.
9118         * m4/truncf.m4: New file.
9119         * lib/math.in.h (truncf): New declaration.
9120         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
9121         HAVE_DECL_TRUNCF.
9122         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
9123         HAVE_DECL_TRUNCF.
9124         * doc/functions/truncf.texi: Mention the 'truncf' module.
9125
9126 2007-10-03  Bruno Haible  <bruno@clisp.org>
9127
9128         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
9129         augmentation also for tests modules.
9130         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
9131         * modules/atexit-tests (Makefile.am): Likewise.
9132         * modules/binary-io-tests (Makefile.am): Likewise.
9133         * modules/c-strcase-tests (Makefile.am): Likewise.
9134         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
9135         * modules/canonicalize-tests (Makefile.am): Likewise.
9136         * modules/closein-tests (Makefile.am): Likewise.
9137         * modules/fprintf-posix-tests (Makefile.am): Likewise.
9138         * modules/freadahead-tests (Makefile.am): Likewise.
9139         * modules/fseek-tests (Makefile.am): Likewise.
9140         * modules/fseeko-tests (Makefile.am): Likewise.
9141         * modules/ftell-tests (Makefile.am): Likewise.
9142         * modules/ftello-tests (Makefile.am): Likewise.
9143         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
9144         * modules/isnanl-tests (Makefile.am): Likewise.
9145         * modules/lseek-tests (Makefile.am): Likewise.
9146         * modules/mbscasecmp-tests (Makefile.am): Likewise.
9147         * modules/mbscasestr-tests (Makefile.am): Likewise.
9148         * modules/mbschr-tests (Makefile.am): Likewise.
9149         * modules/mbscspn-tests (Makefile.am): Likewise.
9150         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
9151         * modules/mbspbrk-tests (Makefile.am): Likewise.
9152         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
9153         * modules/mbsrchr-tests (Makefile.am): Likewise.
9154         * modules/mbsspn-tests (Makefile.am): Likewise.
9155         * modules/mbsstr-tests (Makefile.am): Likewise.
9156         * modules/printf-posix-tests (Makefile.am): Likewise.
9157         * modules/snprintf-posix-tests (Makefile.am): Likewise.
9158         * modules/sprintf-posix-tests (Makefile.am): Likewise.
9159         * modules/tsearch-tests (Makefile.am): Likewise.
9160         * modules/uniname/uniname-tests (Makefile.am): Likewise.
9161         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
9162         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
9163         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
9164         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
9165         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
9166         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
9167         * modules/vprintf-posix-tests (Makefile.am): Likewise.
9168         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
9169         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
9170         * modules/xstrtoimax-tests (Makefile.am): Likewise.
9171         * modules/xstrtol-tests (Makefile.am): Likewise.
9172         * modules/xstrtoumax-tests (Makefile.am): Likewise.
9173         * modules/yesno-tests (Makefile.am): Likewise.
9174
9175 2007-10-03  Bruno Haible  <bruno@clisp.org>
9176
9177         * modules/trunc-tests: New file.
9178         * tests/test-trunc.c: New file.
9179
9180         * modules/trunc: New file.
9181         * lib/trunc.c: New file.
9182         * m4/trunc.m4: New file.
9183         * lib/math.in.h (trunc): New declaration.
9184         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
9185         HAVE_DECL_TRUNC.
9186         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
9187         HAVE_DECL_TRUNC.
9188         * doc/functions/trunc.texi: Mention the 'trunc' module.
9189
9190 2007-10-03  Bruno Haible  <bruno@clisp.org>
9191
9192         * tests/test-fpending.c: New file, mostly copied
9193         from coreutils/lib/t-fpending.c.
9194         * modules/fpending-tests: New file.
9195
9196 2007-10-03  Bruno Haible  <bruno@clisp.org>
9197
9198         Port the stdio extensions to QNX (untested).
9199         * lib/fseterr.c (fseterr): Add support for QNX.
9200         * lib/fbufmode.c (fbufmode): Likewise.
9201         * lib/freadable.c (freadable): Likewise.
9202         * lib/fwritable.c (fwritable): Likewise.
9203         * lib/freading.c (freading): Likewise.
9204         * lib/fwriting.c (fwriting): Likewise.
9205         * lib/freadahead.c (freadahed): Likewise.
9206         * lib/fpurge.c (fpurge): Likewise.
9207         * lib/fseeko.c (rpl_fseeko): Likewise.
9208
9209 2007-10-03  Bruno Haible  <bruno@clisp.org>
9210             Jim Meyering  <jim@meyering.net>
9211             Eric Blake  <ebb9@byu.net>
9212
9213         * doc/relocatable.texi: Use @command instead of @program.
9214
9215 2007-10-02  Jim Meyering  <jim@meyering.net>
9216
9217         Perform one more "_.h" -> ".in.h" substitution.
9218         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
9219         instead of unistd_.h here, too.
9220
9221 2007-10-01  Bruno Haible  <bruno@clisp.org>
9222
9223         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
9224         Needed for the alloca-opt module.
9225
9226 2007-09-30  Bruno Haible  <bruno@clisp.org>
9227
9228         * lib/alloca.in.h: Renamed from lib/alloca_.h.
9229         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
9230         alloca_.h.
9231         * lib/argz.in.h: Renamed from lib/argz_.h.
9232         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
9233         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
9234         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
9235         byteswap_.h.
9236         * lib/dirent.in.h: Renamed from lib/dirent_.h.
9237         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
9238         dirent_.h.
9239         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
9240         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
9241         fcntl_.h.
9242         * lib/float.in.h: Renamed from lib/float_.h.
9243         * modules/float (Files, Makefile.am): Use float.in.h instead of
9244         float_.h.
9245         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
9246         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
9247         fnmatch_.h.
9248         * lib/getopt.in.h: Renamed from lib/getopt_.h.
9249         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
9250         getopt_.h.
9251         * lib/glob.in.h: Renamed from lib/glob_.h.
9252         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
9253         * lib/iconv.in.h: Renamed from lib/iconv_.h.
9254         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
9255         iconv_.h.
9256         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
9257         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
9258         inttypes_.h.
9259         * lib/locale.in.h: Renamed from lib/locale_.h.
9260         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
9261         locale_.h.
9262         * lib/math.in.h: Renamed from lib/math_.h.
9263         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
9264         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
9265         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
9266         of netinet_in_.h. Add dependency.
9267         * lib/poll.in.h: Renamed from lib/poll_.h.
9268         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
9269         * lib/search.in.h: Renamed from lib/search_.h.
9270         * modules/search (Files, Makefile.am): Use search.in.h instead of
9271         search_.h.
9272         * lib/signal.in.h: Renamed from lib/signal_.h.
9273         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
9274         _signal.h.
9275         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
9276         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
9277         stdbool_.h.
9278         * lib/stdint.in.h: Renamed from lib/stdint_.h.
9279         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
9280         stdint_.h.
9281         * lib/stdio.in.h: Renamed from lib/stdio_.h.
9282         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
9283         stdio_.h.
9284         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
9285         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
9286         stdlib_.h.
9287         * lib/string.in.h: Renamed from lib/string_.h.
9288         * modules/string (Files, Makefile.am): Use string.in.h instead of
9289         string_.h.
9290         * doc/gnulib-tool.texi (Initial import): Update.
9291         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
9292         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
9293         of sys_select_.h. Add dependency.
9294         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
9295         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
9296         of sys_socket_.h.
9297         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
9298         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
9299         sys_stat_.h.
9300         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
9301         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
9302         sys_time_.h.
9303         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
9304         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
9305         sysexits_.h.
9306         * lib/time.in.h: Renamed from lib/time_.h.
9307         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
9308         * lib/unistd.in.h: Renamed from lib/unistd_.h.
9309         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
9310         unistd_.h.
9311         * lib/wchar.in.h: Renamed from lib/wchar_.h.
9312         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
9313         wchar_.h.
9314         * lib/wctype.in.h: Renamed from lib/wctype_.h.
9315         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
9316         wctype_.h.
9317         * build-aux/bootstrap (slurp): Update.
9318         * lib/.cppi-disable: Update.
9319
9320 2007-09-30  Bruno Haible  <bruno@clisp.org>
9321
9322         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
9323         Needed on BeOS.
9324
9325 2007-09-30  Bruno Haible  <bruno@clisp.org>
9326
9327         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
9328
9329 2007-09-29  Bruno Haible  <bruno@clisp.org>
9330
9331         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
9332
9333 2007-09-29  Bruno Haible  <bruno@clisp.org>
9334
9335         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
9336         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
9337         * build-aux/install-reloc: Compile also areadlink.c.
9338         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
9339
9340 2007-09-29  Bruno Haible  <bruno@clisp.org>
9341
9342         * gnulib-tool (func_emit_initmacro_done): Indentation.
9343
9344 2007-09-29  Bruno Haible  <bruno@clisp.org>
9345
9346         * README: Add CVS checkout update instructions.
9347         Info from Bob Proulx <bob@proulx.com>.
9348
9349 2007-09-28  Eric Blake  <ebb9@byu.net>
9350
9351         Provide move-if-change.
9352         * build-aux/move-if-change: New file, based on best practice
9353         rather than any canonical upstream location.
9354
9355 2007-09-28  Jim Meyering  <jim@meyering.net>
9356
9357         Fix canonicalize loop-detection corner case.
9358         Do not attempt to stat the symlink values stored via seen_triple.
9359         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
9360         on linux-2.6.18, (but not 2.6.22).
9361         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
9362         triple_compare.  The former compares dev,ino,filename, while the latter
9363         would actually stat dirname(filename) when dev and ino were equal.
9364         * lib/hash-triple.c: Install <string.h>.
9365         (STREQ): Define.
9366         (triple_compare_ino_str): New function.
9367         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
9368
9369 2007-09-28  Eric Blake  <ebb9@byu.net>
9370
9371         Enforce that AC_REPLACE_FUNCS files exist.
9372         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
9373         override check for typos.
9374
9375         Fix test-closein on Solaris 10.
9376         * tests/test-closein.c (main): Don't assume stdin can be inherited
9377         closed on all systems.
9378         * tests/test-closein.sh: Likewise.
9379         Reported by Piotr Tarnowski.
9380
9381 2007-09-28  Jim Meyering  <jim@meyering.net>
9382
9383         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
9384
9385 2007-09-27  Jim Meyering  <jim@meyering.net>
9386
9387         canonicalize: Avoid a false-positive cycle failure.
9388         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
9389         Sort.  Remove cycle-check.
9390         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
9391         not cycle-check.h.
9392         (seen_triple): New function.
9393         (canonicalize_filename_mode): Use it instead of cycle-check.
9394         * tests/test-canonicalize.c: Add a test for this bug.
9395         * tests/test-canonicalize.sh: Set up and run the test.
9396
9397         New module, file-set, from coreutils.
9398         * modules/file-set: Define it.
9399         * lib/file-set.c, lib/file-set.h: Implement.
9400
9401         New module, hash-triple, from coreutils.
9402         * modules/hash-triple: Define it.
9403         * lib/hash-triple.c, lib/hash-triple.h: Implement.
9404
9405 2007-09-25  Eric Blake  <ebb9@byu.net>
9406
9407         Fix strerror on Interix.
9408         * lib/string_.h (strerror): Declare replacement.
9409         * doc/functions/strerror.texi (strerror): Document the Interix
9410         shortcoming.
9411         * modules/string (Makefile.am): Support new hooks.
9412         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
9413         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
9414         gl_FUNC_STRERROR_SEPARATE.
9415         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
9416         * lib/strerror.c (rpl_strerror): Provide replacement.
9417         * modules/strerror (Depends-on): Add string.
9418         (configure.ac): Detect use of module.
9419         * tests/test-strerror.c: New file.
9420         * modules/strerror-tests: New test module.
9421         * modules/argp (Depends-on): Add strerror.
9422         * modules/error (Depends-on): Likewise.
9423         Reported by Martin Koeppe.
9424
9425 2007-09-24  Bruno Haible  <bruno@clisp.org>
9426
9427         * README: Update git instructions.
9428
9429 2007-09-24  Eric Blake  <ebb9@byu.net>
9430
9431         Revert fpending breakage from 2007-09-08.
9432         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
9433         __fpending.c.
9434
9435 2007-09-24  Jim Meyering  <jim@meyering.net>
9436
9437         filenamecat.c: Add a test.
9438         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
9439         showing how the function works when DIR is the empty string.
9440
9441 2007-09-21  Simon Josefsson  <simon@josefsson.org>
9442
9443         * tests/test-canonicalize.sh: Turn on executable bit.
9444
9445 2007-09-19  Eric Blake  <ebb9@byu.net>
9446
9447         * README: Update CVS instructions.
9448
9449 2007-09-18  Bruno Haible  <bruno@clisp.org>
9450
9451         * modules/areadlink: New file.
9452         * lib/areadlink.h (areadlink): New declaration.
9453         * lib/areadlink.c: New file, based on lib/xreadlink.c.
9454
9455 2007-09-17  Jim Meyering  <jim@meyering.net>
9456
9457         * lib/savewd.c (ESTALE) [!defined]: Define.
9458         Reported to be required on Interix by Martin Koeppe.
9459
9460 2007-09-17  Bruno Haible  <bruno@clisp.org>
9461
9462         * gnulib-tool (func_version): Use $version.
9463
9464 2007-09-16  Bruno Haible  <bruno@clisp.org>
9465
9466         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
9467         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
9468         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
9469         Reported by Greg Schafer <gschafer@zip.com.au>.
9470
9471 2007-09-15  Bruno Haible  <bruno@clisp.org>
9472
9473         * gnulib-tool (sed): Try a little harder to make bash understand the
9474         alias.
9475         Reported by Bruce Korb <bruce.korb@gmail.com>.
9476
9477 2007-09-13  Eric Blake  <ebb9@byu.net>
9478
9479         * ChangeLog: Remove conflict markers.
9480
9481 2007-09-13  Simon Josefsson  <simon@josefsson.org>
9482
9483         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
9484         Reported by Bruno Haible <bruno@clisp.org>.
9485
9486 2007-09-12  Bruno Haible  <bruno@clisp.org>
9487
9488         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
9489         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
9490         is not defined.
9491
9492 2007-09-12  Eric Blake  <ebb9@byu.net>
9493
9494         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
9495         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
9496         Autoconf definition.
9497         * modules/euidaccess (Depends-on): Add extensions, for
9498         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
9499         * modules/fnmatch (Depends-on): Likewise.
9500         * modules/getaddrinfo (Depends-on): Likewise.
9501         * modules/getdelim (Depends-on): Likewise.
9502         * modules/getline (Depends-on): Likewise.
9503         * modules/getsubopt (Depends-on): Likewise.
9504         * modules/gettext (Depends-on): Likewise.
9505         * modules/group-member (Depends-on): Likewise.
9506         * modules/mbchar (Depends-on): Likewise.
9507         * modules/memmem (Depends-on): Likewise.
9508         * modules/mempcpy (Depends-on): Likewise.
9509         * modules/memrchr (Depends-on): Likewise.
9510         * modules/pagealign_alloc (Depends-on): Likewise.
9511         * modules/readutmp (Depends-on): Likewise.
9512         * modules/stpcpy (Depends-on): Likewise.
9513         * modules/stpncpy (Depends-on): Likewise.
9514         * modules/strchrnul (Depends-on): Likewise.
9515         * modules/strndup (Depends-on): Likewise.
9516         * modules/strsep (Depends-on): Likewise.
9517         * modules/strverscmp (Depends-on): Likewise.
9518         * modules/vasprintf (Depends-on): Likewise.
9519         * modules/wcwidth (Depends-on): Likewise.
9520         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
9521         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
9522         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
9523         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
9524         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
9525         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
9526         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
9527         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
9528         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
9529         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
9530         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
9531         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
9532         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
9533         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
9534         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
9535         * m4/readutmp.m4 (gl_READUTMP): Likewise.
9536         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
9537         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
9538         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
9539         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
9540         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
9541         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
9542         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
9543         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
9544         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
9545         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
9546         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
9547         so that lock.m4 can be used in gettext without extensions module.
9548
9549 2007-09-11  Bruno Haible  <bruno@clisp.org>
9550
9551         * m4/isc-posix.m4: Remove file.
9552         Suggested by Eric Blake.
9553
9554 2007-09-11  Eric Blake  <ebb9@byu.net>
9555
9556         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
9557
9558 2007-09-10  Bruno Haible  <bruno@clisp.org>
9559
9560         * posix-modules: Fix typo in error message.
9561         Reported by Matt <mkraai@beckman.com>.
9562
9563 2007-09-09  Bruno Haible  <bruno@clisp.org>
9564
9565         * doc/functions/getdelim.texi: Update list of platforms lacking the
9566         function.
9567         * doc/functions/getline.texi: Likewise.
9568
9569 2007-09-09  Jim Meyering  <jim@meyering.net>
9570
9571         * lib/hash.c (hash_initialize): Detect calloc failure.
9572         Reported by Bruno Haible.
9573
9574 2007-09-09  Bruno Haible  <bruno@clisp.org>
9575
9576         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
9577         malloc or realloc fails.
9578
9579 2007-09-09  Bruno Haible  <bruno@clisp.org>
9580
9581         * modules/getcwd (Depends-on): Add malloc-posix.
9582         * modules/glob (Depends-on): Likewise.
9583         * modules/putenv (Depends-on): Likewise.
9584         * modules/strdup (Depends-on): Likewise.
9585         * modules/getdelim (Depends-on): Add realloc-posix.
9586         * modules/read-file (Depends-on): Likewise.
9587
9588 2007-09-09  Bruno Haible  <bruno@clisp.org>
9589
9590         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
9591         (gl_FUNC_MALLOC_POSIX): Require it.
9592         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
9593         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
9594         * modules/realloc (Files): Add m4/malloc.m4.
9595         * modules/calloc (Files): Likewise.
9596
9597 2007-09-09  Bruno Haible  <bruno@clisp.org>
9598
9599         * modules/malloc-posix: New file.
9600         * modules/malloc (Depends-on): Add malloc-posix.
9601         * lib/malloc.c: Include errno.h.
9602         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
9603         and a POSIX-compatible malloc into a single function. Set ENOMEM
9604         when returning NULL.
9605         * m4/malloc.m4: New file.
9606         * doc/functions/malloc.texi: Mention the malloc-posix module.
9607         * lib/stdlib_.h (malloc): New declaration.
9608         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
9609         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
9610         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
9611         and HAVE_MALLOC_POSIX.
9612
9613 2007-09-09  Bruno Haible  <bruno@clisp.org>
9614
9615         * modules/realloc-posix: New file.
9616         * modules/realloc (Depends-on): Add realloc-posix.
9617         * lib/realloc.c: Include errno.h.
9618         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
9619         and a POSIX-compatible realloc into a single function. Set ENOMEM
9620         when returning NULL.
9621         * m4/realloc.m4: New file.
9622         * doc/functions/realloc.texi: Mention the realloc-posix module.
9623         * lib/stdlib_.h (realloc): New declaration.
9624         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
9625         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
9626         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
9627         and HAVE_REALLOC_POSIX.
9628
9629 2007-09-09  Bruno Haible  <bruno@clisp.org>
9630
9631         * modules/calloc-posix: New file.
9632         * modules/calloc (Depends-on): Add calloc-posix.
9633         * lib/calloc.c: Include errno.h.
9634         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
9635         and a POSIX-compatible calloc into a single function. Set ENOMEM
9636         when returning NULL.
9637         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
9638         * doc/functions/calloc.texi: Mention the calloc-posix module.
9639         * lib/stdlib_.h (calloc): New declaration.
9640         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
9641         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
9642         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
9643         and HAVE_CALLOC_POSIX.
9644
9645 2007-09-09  Bruno Haible  <bruno@clisp.org>
9646
9647         Allow for modules to show an arbitrary notice.
9648         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
9649         * gnulib-tool: New option --extract-notice.
9650         (func_usage): Document it.
9651         (sed_extract_prog): Update.
9652         (func_get_notice): New function.
9653         (func_modules_notice): New function.
9654         (func_import, func_create_testdir): Invoke it.
9655         Suggested by Jim Meyering.
9656
9657 2007-09-09  Bruno Haible  <bruno@clisp.org>
9658
9659         * gnulib-tool: New options --verbose, --quiet.
9660         (func_usage): Document them.
9661         (verbose): New variable.
9662         (func_execute_command): New function.
9663         (func_import): Don't show the module list and the file list if
9664         $verbose < 0.
9665         (func_create_testdir): Likewise. Use func_execute_command.
9666         (func_create_megatestdir): Use func_execute_command.
9667
9668 2007-09-08  Bruno Haible  <bruno@clisp.org>
9669
9670         * gnulib-tool (func_import): Prefer rsync over wget when available,
9671         for fetching the PO files.
9672
9673 2007-09-08  Bruno Haible  <bruno@clisp.org>
9674
9675         * posix-modules: New file. Portions copied from gnulib-tool.
9676         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
9677
9678 2007-09-08  Jim Meyering  <jim@meyering.net>
9679
9680         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
9681         * lib/fpending.h: Rename from __fpending.h.
9682         * lib/fpending.c: Rename from __fpending.c.
9683         Include "fpending.h", not "__fpending.h".
9684         * lib/__fpending.h, lib/__fpending.c: Remove files.
9685         * modules/fpending (Files): Reflect new file names.
9686         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
9687
9688 2007-09-08  Bruno Haible  <bruno@clisp.org>
9689
9690         * m4/inttypes-h.m4: Remove stub file.
9691
9692 2007-09-07  Simon Josefsson  <simon@josefsson.org>
9693
9694         * doc/headers/stdint.texi: Discuss #include_next issue.
9695
9696 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
9697
9698         * build-aux/bootstrap: Remove obsolete comment about wget --help.
9699
9700 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9701
9702         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
9703         in variable name.
9704
9705 2007-09-03  Jim Meyering  <jim@meyering.net>
9706
9707         New module: git-version-gen.
9708         * modules/git-version-gen: New file.
9709
9710         Import changes from coreutils for bootstrap script.
9711
9712         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
9713
9714         bootstrap: uses rsync to download the .po files
9715         * build-aux/bootstrap (po_download_command_format): New global.
9716         (download_po_files): Use rsync.
9717         (update_po_files): Don't remove .po files after download,
9718         so future rsync runs can take advantage of the copies.
9719
9720         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
9721
9722         Solve the unnecessary-.po-file-regeneration problem once and for all.
9723         * build-aux/bootstrap (download_po_files): New function, renamed from
9724         get_translations.  Now, downloads, but doesn't update LINGUAS.
9725         (update_po_files): New function.
9726
9727         bootstrap: Ignore more.
9728         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
9729         uniwidth to e.g., lib/.gitignore.
9730         (slurp): Handle the sys_stat_.h -> sys mapping, too.
9731
9732         * build-aux/bootstrap: New setting: vc_ignore.
9733         (insert_sorted_if_absent): Create $file if absent.
9734         Adapt to new, possibly empty, list: $vc_ignore.
9735
9736         bootstrap: generate more ignorable names
9737         * build-aux/bootstrap (slurp): When generating ignorable names,
9738         also map .sin to .sed, .gperf to .c, and .y to .c.
9739
9740 2007-09-03  Jim Meyering  <jim@meyering.net>
9741
9742         * build-aux/git-version-gen: New file, from coreutils.  For details, see
9743         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
9744
9745 2007-09-02  Bruno Haible  <bruno@clisp.org>
9746
9747         Fix mis-recognition of 'mcs' on QNX 6.
9748         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
9749         output contains the string "Mono".
9750         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
9751         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
9752
9753 2007-09-01  Bruno Haible  <bruno@clisp.org>
9754
9755         Fix collision between uniwidth/* and linebreak modules.
9756         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
9757         u32_width): Remove declarations.
9758         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
9759         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
9760         streq3, streq2, streq1, streq0): Remove functions.
9761         (STREQ): Remove macro.
9762         (is_cjk_encoding): Remove function.
9763         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
9764         (uc_width, u8_width, u16_width, u32_width): Remove functions.
9765         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
9766         * NEWS: Document the change.
9767
9768 2007-09-01  Bruno Haible  <bruno@clisp.org>
9769
9770         * lib/streq.h: Add double-inclusion guard.
9771
9772 2007-09-01  Karl Berry  <karl@gnu.org>
9773
9774         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
9775
9776 2007-08-28  Jim Meyering  <jim@meyering.net>
9777
9778         Rename mreadlink_with_size to areadlink_with_size.
9779         * NEWS: Document the change.
9780         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
9781         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
9782         * lib/mreadlink.h: Rename this to...
9783         * lib/areadlink.h: ...this.
9784         * modules/mreadlink-with-size: Rename this to...
9785         * modules/areadlink-with-size: ...this.
9786         * lib/canonicalize.c: Reflect the renaming.
9787         * modules/canonicalize: Likewise.
9788
9789 2007-08-26  Bruno Haible  <bruno@clisp.org>
9790
9791         * gnulib-tool (func_import): When deciding which files to remove,
9792         consider also dangling symbolic links.
9793         Reported by Eric Blake.
9794
9795 2007-08-26  Bruno Haible  <bruno@clisp.org>
9796
9797         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
9798
9799 2007-08-23  Simon Josefsson  <simon@josefsson.org>
9800
9801         * lib/readline.c: Don't include getline.h, the prototype is now
9802         found in stdio.h.
9803
9804 2007-08-23  Jim Meyering  <jim@meyering.net>
9805
9806         Getdelim touchup.
9807         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
9808         around the funlockfile call, since funlockfile never sets errno.
9809         Don't set errno upon failed realloc.
9810
9811 2007-08-22  Eric Blake  <ebb9@byu.net>
9812
9813         Getline touchups.
9814         * lib/getdelim.c (getdelim): Revert regression that required *n to
9815         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
9816         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
9817         getdelim, rather than whether implementation is missing.
9818         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
9819         * lib/stdio_.h (getline): Also declare if replacement is
9820         required.
9821         * doc/functions/getdelim.texi: New file.
9822         * doc/functions/getline.texi: Likewise.
9823         * doc/gnulib.texi (Function Substitutes): Add new files.
9824         Reported by Bruno Haible.
9825
9826 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
9827
9828         * users.txt: Add Guile.
9829
9830 2007-08-22  Eric Blake  <ebb9@byu.net>
9831
9832         * tests/test-getdelim.c (main): Use remove, not unlink.
9833         * tests/test-getline.c (main): Likewise.
9834
9835         Move getline and getdelim into stdio.h, per POSIX 200x.
9836         * modules/getline (Files): Remove getline.h.
9837         (Depends-on): Add stdio.
9838         (configure.ac): Add module indicator.
9839         * modules/getdelim (Files): Remove getdelim.h.
9840         (Depends-on): Add stdio.
9841         (configure.ac): Add module indicator.
9842         * modules/stdio (Makefile.am): Work with new indicators.
9843         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
9844         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
9845         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
9846         * lib/getdelim.h: Delete.
9847         * lib/getline.h: Delete.
9848         * lib/stdio_.h (getdelim, getline): Declare.
9849         * modules/getdelim-tests: New module.
9850         * modules/getline-tests: Likewise.
9851         * tests/test-getdelim.c: New file.
9852         * tests/test-getline.c: Likewise.
9853         * NEWS: Document the change.
9854         * lib/getline.c: Update choice of header.
9855         * lib/csharpcomp.c: Likewise.
9856         * lib/getpass.c: Likewise.
9857         * lib/javacomp.c: Likewise.
9858         * lib/javaversion.c: Likewise.
9859         * lib/yesno.c: Likewise.
9860         * lib/getdelim.c: Likewise.
9861         (getdelim): Set errno on failure, and avoid memory leak.
9862
9863 2007-08-19  Bruno Haible  <bruno@clisp.org>
9864
9865         * modules/closein (Depends-on): Add freadahead.
9866         * lib/closein.c: Include freadahead.h.
9867         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
9868         is zero.
9869
9870 2007-08-19  Bruno Haible  <bruno@clisp.org>
9871
9872         * modules/freadahead-tests: New file.
9873         * tests/test-freadahead.sh: New file.
9874         * tests/test-freadahead.c: New file.
9875
9876         * modules/freadahead: New file.
9877         * lib/freadahead.h: New file.
9878         * lib/freadahead.c: New file.
9879         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
9880         fbufmode, fpurge, freadable, fwritable.
9881
9882 2007-08-19  Eric Blake  <ebb9@byu.net>
9883
9884         Test yesno in combination with closein.
9885         * lib/yesno.c (yesno): Document use of stdin.
9886         * modules/yesno-tests (Files): New module.
9887         * tests/test-yesno.c (main): New file.
9888         * tests/test-yesno.sh: Likewise.
9889
9890 2007-08-19  Bruno Haible  <bruno@clisp.org>
9891
9892         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
9893         * lib/fseeko.c (rpl_fseeko): Likewise.
9894         * lib/fseterr.c (fseterr): Likewise.
9895
9896 2007-08-19  Bruno Haible  <bruno@clisp.org>
9897
9898         * tests/test-lseek.c (main): Disable a test for BeOS.
9899         * doc/functions/lseek.texi: Document the BeOS bug.
9900
9901 2007-08-19  Bruno Haible  <bruno@clisp.org>
9902             Eric Blake  <ebb9@byu.net>
9903
9904         * lib/lseek.c: Include <sys/stat.h>.
9905         (rpl_lseek): Add workaround code also for Unix platforms.
9906         Needed for BeOS.
9907         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
9908         * doc/functions/lseek.texi: Document BeOS definiency.
9909
9910 2007-08-18  Bruno Haible  <bruno@clisp.org>
9911
9912         * modules/fstrcmp-tests: New file.
9913         * tests/test-fstrcmp.c: New file.
9914
9915 2007-08-18  Bruno Haible  <bruno@clisp.org>
9916
9917         * modules/fstrcmp: New file, from GNU gettext with modifications.
9918         * lib/fstrcmp.h: New file, from GNU gettext.
9919         * lib/fstrcmp.c: New file, from GNU gettext.
9920         * MODULES.html.sh (String handling): Add fstrcmp.
9921
9922 2007-08-18  Bruno Haible  <bruno@clisp.org>
9923
9924         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
9925         'bool'.
9926         (diag, compareseq): Remove const from the ctxt argument.
9927         (USE_HEURISTIC): Undefine at the end.
9928
9929 2007-08-18  Jim Meyering  <jim@meyering.net>
9930
9931         New file: lib/idcache.h
9932         * NEWS: Mention the addition.
9933         * modules/idcache (Files): Add lib/idcache.h
9934         * lib/idcache.c: Include "idcache.h".
9935         Don't include <sys/types.h>.
9936         Add a FIXME comment.
9937         Move file-scoped "static" declarations to the top.
9938         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
9939
9940 2007-08-17  Bruno Haible  <bruno@clisp.org>
9941         and Paul Eggert  <eggert@cs.ucla.edu>
9942
9943         * MODULES.html.sh: Add diffseq.
9944         * modules/diffseq: New file.
9945         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
9946         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
9947
9948 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
9949
9950         Import changes from coreutils for bootstrap script.
9951
9952         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
9953
9954         * build-aux/bootstrap (slurp): Work even in environments where
9955         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
9956         current code does not slurp files whose names start with ".", and
9957         this looks like it might be a troublesome area.
9958
9959         2007-07-11  Jim Meyering  <jim@meyering.net>
9960
9961         If there's a GPL vN copyright comment, require that N == 3.
9962
9963         2007-07-08  Jim Meyering  <jim@meyering.net>
9964
9965         Run the coreutils-specific code only if tests/Makefile.am.in exists.
9966         * build-aux/bootstrap (mam_template): Move definition out of loop.
9967
9968         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
9969
9970         * build-aux/bootstrap (symlink_to_dir): Rename function from
9971         symlink_to_gnulib.  Add a directory parameter.  Update all
9972         callers.
9973         (cp_mark_as_generated): Also check for -- and link to -- files in
9974         gl/.
9975
9976         2007-07-08  Jim Meyering  <jim@meyering.net>
9977
9978         Adapt to deeper hierarchy in gnulib.
9979         * build-aux/bootstrap (symlink_to_dir): If the destination
9980         directory doesn't exist, create it. This is required at least for
9981         "lib/uniwidth/cjk.h".
9982
9983         2007-05-15  Jim Meyering  <jim@meyering.net>
9984
9985         * build-aux/bootstrap: Now that generated Makefile.am files
9986         are no longer under version control, they must be created at
9987         bootstrap time.
9988
9989 2007-08-14  Ben Pfaff  <blp@gnu.org>
9990
9991         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
9992
9993 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
9994
9995         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
9996         given the changes below.
9997         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
9998         even on hosts that have padding bits beyond the supported 64.
9999
10000 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
10001
10002         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
10003         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
10004         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
10005         depends on it.
10006         (xstrtol_error): Remove.
10007         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
10008         but with a different signature.
10009         (ATTRIBUTE_NORETURN, __attribute__): New macros.
10010         * lib/xstrtol-error.c: Include exitfail.h.
10011         (xstrtol_fatal): New function, with a different signature from the
10012         old xstrtol_error, so that the caller need not worry about passing
10013         in an exit status, or about storage management of the option argument.
10014         (xstrtol_error): Now a static function.  Redo signature to
10015         implement xstrtol_fatal.  Output the correct number of hyphens in
10016         front of the option so that the caller need not worry about
10017         storage management.
10018         (N_): New macro.
10019         (_): Remove; not used now.
10020         * modules/xstrtol: Depend on getopt.
10021         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
10022         of old STRTOL_FATAL_ERROR macro.
10023         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
10024         of test program.
10025         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
10026         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
10027
10028 2007-08-08  Eric Blake  <ebb9@byu.net>
10029
10030         * lib/xstrtol-error.c: Add missing include.
10031
10032         Move xstrtol messages into gnulib domain, when --pobase is used.
10033         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
10034         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
10035         * modules/xstrtol (Files): Distribute new file.
10036         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
10037         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
10038         * tests/test-xstrtol.c: ...into new file.
10039         * tests/test-xstrtoul.c: Also test xstrtoul.
10040         * tests/test-xstrtoimax.c: Also test xstrtoimax.
10041         * tests/test-xstrtoumax.c: Also test xstrtoumax.
10042         * tests/test-xstrtol.sh: Drive the tests.
10043         * tests/test-xstrtoimax.sh: Likewise.
10044         * tests/test-xstrtoumax.sh: Likewise.
10045         * modules/xstrtol-tests: New module.
10046         * modules/xstrtoimax-tests: Likewise.
10047         * modules/xstrtoumax-tests: Likewise.
10048
10049 2007-08-08  Jim Meyering  <jim@meyering.net>
10050
10051         New function: mfile_name_concat.
10052         * lib/filenamecat.c (mfile_name_concat): New function, just like
10053         file_name_concat, but return NULL upon failure rather than exiting
10054         with a diagnostic.
10055         * lib/filenamecat.h: Declare it.
10056
10057 2007-08-07  Bruno Haible  <bruno@clisp.org>
10058
10059         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
10060         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
10061         warning from gcc.
10062         Reported by Eric Blake.
10063
10064 2007-08-07  Simon Josefsson  <simon@josefsson.org>
10065
10066         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
10067         * modules/crypto/arcfour (License): Likewise.
10068         * modules/crypto/des-tests (License): Likewise.
10069         * modules/crypto/gc-arctwo-tests (License): Likewise.
10070         * modules/crypto/gc-des-tests (License): Likewise.
10071         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
10072         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
10073         * modules/crypto/gc-md2-tests (License): Likewise.
10074         * modules/crypto/gc-md4-tests (License): Likewise.
10075         * modules/crypto/gc-md5-tests (License): Likewise.
10076         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
10077         * modules/crypto/gc-rijndael-tests (License): Likewise.
10078         * modules/crypto/gc-sha1-tests (License): Likewise.
10079         * modules/crypto/gc-tests (License): Likewise.
10080         * modules/crypto/hmac-md5 (License): Likewise.
10081         * modules/crypto/hmac-sha1 (License): Likewise.
10082         * modules/crypto/md2-tests (License): Likewise.
10083         * modules/crypto/md4-tests (License): Likewise.
10084         * modules/crypto/md5 (License): Likewise.
10085         * modules/crypto/rijndael (License): Likewise.
10086         * modules/crypto/sha1 (License): Likewise.
10087         * modules/memxor (License): Likewise.
10088
10089 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
10090         and Bruno Haible  <bruno@clisp.org>
10091
10092         * NEWS: Describe interface changes to human, xstrtol.
10093         * lib/human.h: Include <xstrtol.h>.
10094         (human_options): Return enum strtol_error, not int.  Remove
10095         bool arg; take int * instead.
10096         * lib/human.c: Don't include "gettext.h".
10097         (_): Remove; no longer used.
10098         Don't include <xstrtol.h>, since human.h does it.
10099         (human_options): Adjust to abovementioned interface changes.
10100         Do not report error to stderr; that's now the caller's
10101         responsibility.
10102         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
10103         interface change.
10104         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
10105         Str, Argument_type_string.  All uses changed.  Put " argument"
10106         in diagnostics to make them clearer.  Change wording of suffix
10107         message for clarity.
10108         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
10109         Argument_type_string.
10110         (STRTOL_FATAL_WARN): Remove; no longer used.
10111         * modules/human (Depends-on): Remove gettext-h.
10112
10113 2007-08-06  Simon Josefsson  <simon@josefsson.org>
10114
10115         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
10116
10117 2007-07-31  Bruno Haible  <bruno@clisp.org>
10118
10119         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
10120         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
10121         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
10122
10123 2007-07-31  Bruno Haible  <bruno@clisp.org>
10124
10125         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
10126         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
10127
10128 2007-07-30  Bruno Haible  <bruno@clisp.org>
10129
10130         * modules/base64 (License): Use the synonymous term "LGPLv2+".
10131         * modules/c-ctype (License): Likewise.
10132         * modules/c-strcase (License): Likewise.
10133         * modules/check-version (License): Likewise.
10134         * modules/iconv (License): Likewise.
10135         * modules/iconv_open (License): Likewise.
10136         * modules/read-file (License): Likewise.
10137         * modules/striconv (License): Likewise.
10138         * modules/strverscmp (License): Likewise.
10139         * modules/vasprintf (License): Likewise.
10140         * modules/crypto/des (License): Likewise.
10141         * modules/crypto/gc (License): Likewise.
10142         * modules/crypto/gc-arcfour (License): Likewise.
10143         * modules/crypto/gc-arctwo (License): Likewise.
10144         * modules/crypto/gc-des (License): Likewise.
10145         * modules/crypto/gc-hmac-md5 (License): Likewise.
10146         * modules/crypto/gc-hmac-sha1 (License): Likewise.
10147         * modules/crypto/gc-md2 (License): Likewise.
10148         * modules/crypto/gc-md4 (License): Likewise.
10149         * modules/crypto/gc-md5 (License): Likewise.
10150         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
10151         * modules/crypto/gc-random (License): Likewise.
10152         * modules/crypto/gc-rijndael (License): Likewise.
10153         * modules/crypto/gc-sha1 (License): Likewise.
10154         * modules/crypto/md2 (License): Likewise.
10155         * modules/crypto/md4 (License): Likewise.
10156
10157 2007-07-30  Jim Meyering  <jim@meyering.net>
10158
10159         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
10160         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
10161         it has valid stat data.  This bug would cause du not to count the
10162         sizes of inaccessible directories.
10163         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
10164         in <http://bugzilla.redhat.com/250077>.
10165
10166 2007-07-25  Peter O'Gorman  <peter@pogma.com>
10167             Bruno Haible  <bruno@clisp.org>
10168
10169         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
10170         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
10171         #include_next, gives a diagnostic about it, but reports no error in
10172         the exit code.
10173         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
10174
10175 2007-07-24  Ben Pfaff  <blp@gnu.org>
10176
10177         Improve name: "count-one-bits" is better than "popcount".
10178         * MODULES.html.sh: Update name.
10179         * lib/popcount.h: Renamed lib/count-one-bits.h.
10180         (popcount): Renamed count_one_bits.
10181         (popcountl): Renamed count_one_bits_l.
10182         (popcountll): Renamed count_one_bits_ll.
10183         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
10184         * modules/popcount: Renamed module/count-one-bits.
10185         * modules/popcount-tests: Renamed module/count-one-bits-tests.
10186         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
10187
10188 2007-07-23  Ben Pfaff  <blp@gnu.org>
10189
10190         * lib/popcount.h (popcount32): Reduce size of constants, to allow
10191         better code generation, and add U to large constants to avoid
10192         warnings, in non-GCC case.
10193         Suggested by Bruno Haible.
10194
10195 2007-07-23  Ben Pfaff  <blp@gnu.org>
10196
10197         * lib/popcount.h: Use verify_true instead of if...abort.
10198         * modules/popcount: Depend on verify module.
10199         Suggested by Jim Meyering.
10200
10201 2007-07-23  Bruno Haible  <bruno@clisp.org>
10202
10203         * gnulib-tool (func_import): Create a .cvsignore file also when the
10204         directory is not yet in CVS but the toplevel directory is. When
10205         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
10206         Reported by Karl Berry.
10207
10208 2007-07-22  Ben Pfaff  <blp@gnu.org>
10209
10210         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
10211         case.
10212         Suggested by Eric Blake.
10213
10214 2007-07-22  Ben Pfaff  <blp@gnu.org>
10215
10216         New module: popcount.
10217         * MODULES.html.sh: Add popcount.
10218         * modules/popcount: New file.
10219         * modules/popcount-tests: New file.
10220         * tests/test-popcount.c: New file.
10221         * lib/popcount.h: New file.
10222         * m4/popcount.m4: New file.
10223
10224 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
10225
10226         * build-aux/announce-gen: Update to GPLv3.
10227
10228         * build-aux/config.guess: Update from config.
10229
10230 2007-07-21  Bruno Haible  <bruno@clisp.org>
10231
10232         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
10233         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
10234
10235 2007-07-20  Jim Meyering  <jim@meyering.net>
10236
10237         * check-module: Diagnose a self-dependency.
10238
10239 2007-07-19  Bruno Haible  <bruno@clisp.org>
10240
10241         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
10242         empty.
10243         Reported by Eric Blake.
10244
10245 2007-07-18  Bruno Haible  <bruno@clisp.org>
10246
10247         * gnulib-tool: New options --po-base, --po-domain.
10248         (func_usage): Document them.
10249         (pobase, po_domain): New variables.
10250         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
10251         DEFAULT_TEXT_DOMAIN.
10252         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
10253         (func_import): Consider pobase and po_domain. Create a po/ directory.
10254         (func_create_testdir): Set pobase and po_domain to empty.
10255         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
10256         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
10257
10258 2007-07-18  Bruno Haible  <bruno@clisp.org>
10259
10260         * gnulib-tool (func_get_automake_snippet): Synthesize also an
10261         EXTRA_DIST augmentation for files in build-aux/.
10262
10263 2007-07-16  Bruno Haible  <bruno@clisp.org>
10264
10265         * modules/lseek (License): Use the synonymous term "LGPLv2+".
10266         * modules/getdelim (License): Likewise.
10267
10268 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10269
10270         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
10271         * modules/d-type (License): Likewise.
10272         * modules/extensions (License): Likewise.
10273         * modules/fnmatch (License): Likewise.
10274         * modules/fseeko (License): Likewise.
10275         * modules/getaddrinfo (License): Likewise.
10276         * modules/getline (License): Likewise.
10277         * modules/getlogin_r (License): Likewise.
10278         * modules/getpass (License): Likewise.
10279         * modules/gettimeofday (License): Likewise.
10280         * modules/glob (License): Likewise.
10281         * modules/inet_ntop (License): Likewise.
10282         * modules/malloc (License): Likewise.
10283         * modules/malloca (License): Likewise.
10284         * modules/memmem (License): Likewise.
10285         * modules/mempcpy (License): Likewise.
10286         * modules/memset (License): Likewise.
10287         * modules/minmax (License): Likewise.
10288         * modules/mktime (License): Likewise.
10289         * modules/netinet_in (License): Likewise.
10290         * modules/pathmax (License): Likewise.
10291         * modules/poll (License): Likewise.
10292         * modules/regex (License): Likewise.
10293         * modules/snprintf (License): Likewise.
10294         * modules/stdbool (License): Likewise.
10295         * modules/stdint (License): Likewise.
10296         * modules/stdio (License): Likewise.
10297         * modules/strcase (License): Likewise.
10298         * modules/strcasestr (License): Likewise.
10299         * modules/strdup (License): Likewise.
10300         * modules/string (License): Likewise.
10301         * modules/strndup (License): Likewise.
10302         * modules/strnlen (License): Likewise.
10303         * modules/strpbrk (License): Likewise.
10304         * modules/strptime (License): Likewise.
10305         * modules/strsep (License): Likewise.
10306         * modules/sys_select (License): Likewise.
10307         * modules/sys_socket (License): Likewise.
10308         * modules/sys_stat (License): Likewise.
10309         * modules/sys_time (License): Likewise.
10310         * modules/time (License): Likewise.
10311         * modules/time_r (License): Likewise.
10312         * modules/timegm (License): Likewise.
10313         * modules/unistd (License): Likewise.
10314         * modules/vsnprintf (License): Likewise.
10315         * modules/wctype (License): Likewise.
10316
10317 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10318
10319         * modules/argz (License): LGPLv2+.
10320
10321 2007-07-15  Karl Berry  <karl@gnu.org>
10322
10323         * doc/gnulib.texi: revise node structure per new fdl.texi.
10324
10325 2007-07-14  Bruno Haible  <bruno@clisp.org>
10326
10327         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
10328         the output file.
10329         * lib/uniname/uninames.h: Regenerated.
10330
10331 2007-07-14  Karl Berry  <karl@gnu.org>
10332
10333         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
10334         omitting sectioning and index commands.
10335
10336 2007-07-13  Bruno Haible  <bruno@clisp.org>
10337
10338         New gnulib-tool option --more-symlinks.
10339         * gnulib-tool (func_usage): Document --more-symlinks.
10340         (do_copyrights): New variable.
10341         Recognize option --more-symlinks.
10342         (func_import): Don't add a copyright notice transform to
10343         sed_transform_lib_file if do_copyrights is empty.
10344
10345 2007-07-13  Bruno Haible  <bruno@clisp.org>
10346
10347         * lib/vasnprintf.c (decimal_point_char): Define also if
10348         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
10349         && !NEED_PRINTF_DIRECTIVE_A.
10350         Reported by Clemens Koller <clemens.koller@anagramm.de> via
10351         Gary V. Vaughan <gary@gnu.org>.
10352
10353 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
10354
10355         * lib/inttypes_.h: Undo previous change, since it was fixed
10356         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
10357
10358 2007-07-13  Bruno Haible  <bruno@clisp.org>
10359
10360         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
10361         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
10362
10363 2007-07-13  Jim Meyering  <jim@meyering.net>
10364
10365         df: Don't fail for Tru64's "file-on-file mount".
10366         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
10367         so we fall through and use statfs instead.  Details here:
10368         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
10369         Reported by Albert Chin.
10370
10371 2007-07-13  Bruno Haible  <bruno@clisp.org>
10372
10373         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
10374         * modules/configmake (License): Likewise.
10375         * modules/gettext (License): Likewise.
10376         * modules/gettext-h (License): Likewise.
10377         * modules/include_next (License): Likewise.
10378         * modules/link-warning (License): Likewise.
10379         * modules/localcharset (License): Likewise.
10380         * modules/localename (License): Likewise.
10381         * modules/lock (License): Likewise.
10382         * modules/relocatable-lib-lgpl (License): Likewise.
10383         * modules/size_max (License): Likewise.
10384         * modules/vasnprintf (License): Likewise.
10385         * modules/wchar (License): Likewise.
10386         * modules/xsize (License): Likewise.
10387
10388 2007-07-13  Bruno Haible  <bruno@clisp.org>
10389
10390         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
10391         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
10392
10393 2007-07-12  Bruno Haible  <bruno@clisp.org>
10394
10395         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
10396         in the modules files.
10397
10398 2007-07-11  Karl Berry  <karl@gnu.org>
10399
10400         * MODULES.html.sh (func_module): use
10401          sed -e '\|^'"${includefile}"'$|d'
10402          instead of /.../d, to avoid errors on $includefile's containing /.
10403
10404 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
10405
10406         * gnulib-tool (func_import): Avoid duplication of --avoid
10407         statements
10408         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
10409         names to `_' in variable names.
10410
10411 2007-07-10  Eric Blake  <ebb9@byu.net>
10412
10413         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
10414         * NEWS: Document this change.
10415
10416 2007-07-08  Bruno Haible  <bruno@clisp.org>
10417
10418         Update to Unicode 5.0.
10419         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
10420         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
10421         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
10422         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
10423         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
10424         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
10425         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
10426         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
10427         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
10428         U+10A3F, U+1D242..U+1D244.
10429         (nonspacing_table_ind): Update.
10430         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
10431         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
10432
10433 2007-07-08  Bruno Haible  <bruno@clisp.org>
10434
10435         Update to Unicode 5.0.
10436         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
10437         code transform. Extend the name index field of unicode_name_to_code and
10438         unicode_code_to_name from 16 to 24 bits.
10439         * lib/uniname/uniname.c (unicode_character_name,
10440         unicode_name_character): Add the range 0x12xxx to the code transform.
10441         * lib/uniname/uninames.h: Regenerated.
10442         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
10443
10444 2007-07-07  Bruno Haible  <bruno@clisp.org>
10445
10446         * modules/wcwidth-tests: New file.
10447         * tests/test-wcwidth.c: New file.
10448
10449         Work around MacOS X wcwidth() bug.
10450         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
10451         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
10452         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
10453         original wcwidth in non-UTF-8 locales.
10454         * modules/wcwidth (Depends-on): Add localcharset, streq,
10455         uniwidth/width.
10456         * doc/functions/wcwidth.texi: Update.
10457
10458 2007-07-07  Bruno Haible  <bruno@clisp.org>
10459
10460         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
10461         (wcwidth): New declaration.
10462         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
10463         macros.
10464         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
10465         here. Prepare for creating <wchar.h> unconditionally.
10466         * modules/wchar (Depends-on): Add link-warning.
10467         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
10468         REPLACE_WCWIDTH, and GL_LINK_WARNING.
10469         * lib/wcwidth.h: Remove file.
10470         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
10471         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
10472         * modules/wcwidth (Files): Remove lib/wcwidth.h.
10473         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
10474         (Include): Replace wcwidth.h with <wchar.h>.
10475         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
10476         * lib/mbchar.h: Don't include wcwidth.h.
10477         * lib/mbswidth.c: Likewise.
10478         * NEWS: Mention the change.
10479
10480 2007-07-07  Bruno Haible  <bruno@clisp.org>
10481
10482         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
10483         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
10484         definition with an external declaration.
10485         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
10486         defined as a function. Remove AC_C_INLINE requirement.
10487         * modules/wcwidth (Files): Add lib/wcwidth.c.
10488         (Makefile.am): Remove redundant statement.
10489
10490 2007-07-07  Bruno Haible  <bruno@clisp.org>
10491
10492         * MODULES.html.sh (Unicode string functions): Add the new modules.
10493
10494         * tests/uniwidth/test-u32-strwidth.c: New file.
10495         * modules/uniwidth/u32-strwidth-tests: New file.
10496
10497         * lib/uniwidth/u32-strwidth.c: New file.
10498         * modules/uniwidth/u32-strwidth: New file.
10499
10500         * tests/uniwidth/test-u16-strwidth.c: New file.
10501         * modules/uniwidth/u16-strwidth-tests: New file.
10502
10503         * lib/uniwidth/u16-strwidth.c: New file.
10504         * modules/uniwidth/u16-strwidth: New file.
10505
10506         * tests/uniwidth/test-u8-strwidth.c: New file.
10507         * modules/uniwidth/u8-strwidth-tests: New file.
10508
10509         * lib/uniwidth/u8-strwidth.c: New file.
10510         * modules/uniwidth/u8-strwidth: New file.
10511
10512         * tests/uniwidth/test-u32-width.c: New file.
10513         * modules/uniwidth/u32-width-tests: New file.
10514
10515         * lib/uniwidth/u32-width.c: New file.
10516         * modules/uniwidth/u32-width: New file.
10517
10518         * tests/uniwidth/test-u16-width.c: New file.
10519         * modules/uniwidth/u16-width-tests: New file.
10520
10521         * lib/uniwidth/u16-width.c: New file.
10522         * modules/uniwidth/u16-width: New file.
10523
10524         * tests/uniwidth/test-u8-width.c: New file.
10525         * modules/uniwidth/u8-width-tests: New file.
10526
10527         * lib/uniwidth/u8-width.c: New file.
10528         * modules/uniwidth/u8-width: New file.
10529
10530         * tests/uniwidth/test-uc_width.c: New file.
10531         * modules/uniwidth/width-tests: New file.
10532
10533         * lib/uniwidth/width.c: New file, from GNU libiconv.
10534         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
10535         * modules/uniwidth/width: New file.
10536
10537         * lib/uniwidth.h: New file, from GNU libiconv.
10538         * modules/uniwidth/base: New file.
10539
10540 2007-07-07  Bruno Haible  <bruno@clisp.org>
10541
10542         * lib/uniname.h: New file, from GNU gettext.
10543         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
10544         * lib/uniname/uninames.h: New file, from GNU gettext.
10545         * lib/uniname/uniname.c: New file, from GNU gettext.
10546         * tests/uniname/test-uninames.sh: New file.
10547         * tests/uniname/test-uninames.c: New file, from GNU gettext.
10548         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
10549         * modules/uniname/base: New file.
10550         * modules/uniname/uniname: New file.
10551         * modules/uniname/uniname-tests: New file.
10552         * MODULES.html.sh (Unicode string functions): Add the new modules.
10553
10554 2007-07-06  Bruno Haible  <bruno@clisp.org>
10555
10556         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
10557
10558 2007-07-06  Bruno Haible  <bruno@clisp.org>
10559
10560         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
10561         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
10562         includes <cygwin/sys_time.h> which includes <sys/select.h> which
10563         include <sys/time.h>.
10564         Reported by Eric Blake.
10565
10566 2007-07-06  Eric Blake  <ebb9@byu.net>
10567
10568         Fix testing canonicalize on cygwin.
10569         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
10570         Revert patch from 2007-06-19.
10571         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
10572         canonicalize module is also in use.
10573         * tests/test-canonicalize.c: New file.
10574         * tests/test-canonicalize.sh: Likewise.
10575         * modules/canonicalize-tests: Likewise.
10576
10577 2007-07-06  Jim Meyering  <jim@meyering.net>
10578
10579         * lib/getugroups.c (getugroups): Detect getgrent failure.
10580         Adjust comment to reflect reality: this function may return -1.
10581
10582 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
10583
10584         * build-aux/bootstrap (TP_URL,get_translations): Update to use
10585         the new TP address.
10586         (usage): Fix typo
10587         (gnulib_mk): New variable.
10588
10589 2007-07-05  Jim Meyering  <jim@meyering.net>
10590
10591         Don't let endgrent clobber errno, no matter how improbable.
10592         * lib/getugroups.c (getugroups): Save and restore errno around
10593         endgrent call.
10594
10595         Close the group DB even when failing with 2^31 or more members.
10596         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
10597
10598 2007-07-04  Jim Meyering  <jim@meyering.net>
10599
10600         * lib/getugroups.h: New file.
10601         * lib/getugroups.c: Include "getugroups.h".
10602         Remove uses of "register" keyword.
10603         Move local variable, "cp", down into scope where used.
10604         Give "username" parameter the "const" attribute.
10605         * modules/getugroups (Files): Add lib/getugroups.h
10606
10607 2007-07-04  Karl Berry  <karl@gnu.org>
10608
10609         * MODULES.html.sh (func_all_modules): Complete rename of
10610         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
10611
10612 2007-07-02  Bruno Haible  <bruno@clisp.org>
10613
10614         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
10615         mode, when inttypes.h comes from gnulib.
10616         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
10617
10618 2007-07-02  Simon Josefsson  <simon@josefsson.org>
10619
10620         * NEWS: Mention lgpl module name change.
10621
10622         * modules/lgpl-2.1: Renamed from lgpl.
10623
10624         * NEWS: Mention gpl module name change.
10625
10626         * modules/gpl-3.0: New file, based on gpl-2.0.
10627
10628         * modules/gpl-2.0: Renamed from gpl.
10629
10630         * modules/gpl: Fix filename, doc/gpl.texi is now found at
10631         doc/gpl-2.0.texi.
10632
10633 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
10634
10635         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
10636         #define __STDC_LIMIT_MACROS temporarily while including
10637         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
10638         Problem reported by Joel E. Denny in
10639         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
10640
10641 2007-07-01  Bruno Haible  <bruno@clisp.org>
10642
10643         * lib/unistdio.h: New file.
10644         * lib/unistdio/u-asnprintf.h: New file.
10645         * lib/unistdio/u-asprintf.h: New file.
10646         * lib/unistdio/u-printf-args.c: New file.
10647         * lib/unistdio/u-printf-args.h: New file.
10648         * lib/unistdio/u-printf-parse.h: New file.
10649         * lib/unistdio/u-snprintf.h: New file.
10650         * lib/unistdio/u-sprintf.h: New file.
10651         * lib/unistdio/u-vasprintf.h: New file.
10652         * lib/unistdio/u-vsnprintf.h: New file.
10653         * lib/unistdio/u-vsprintf.h: New file.
10654         * lib/unistdio/ulc-asnprintf.c: New file.
10655         * lib/unistdio/ulc-asprintf.c: New file.
10656         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
10657         * lib/unistdio/ulc-printf-parse.c: New file.
10658         * lib/unistdio/ulc-snprintf.c: New file.
10659         * lib/unistdio/ulc-sprintf.c: New file.
10660         * lib/unistdio/ulc-vasnprintf.c: New file.
10661         * lib/unistdio/ulc-vasprintf.c: New file.
10662         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
10663         * lib/unistdio/ulc-vsnprintf.c: New file.
10664         * lib/unistdio/ulc-vsprintf.c: New file.
10665         * lib/unistdio/u8-asnprintf.c: New file.
10666         * lib/unistdio/u8-asprintf.c: New file.
10667         * lib/unistdio/u8-printf-parse.c: New file.
10668         * lib/unistdio/u8-snprintf.c: New file.
10669         * lib/unistdio/u8-sprintf.c: New file.
10670         * lib/unistdio/u8-vasnprintf.c: New file.
10671         * lib/unistdio/u8-vasprintf.c: New file.
10672         * lib/unistdio/u8-vsnprintf.c: New file.
10673         * lib/unistdio/u8-vsprintf.c: New file.
10674         * lib/unistdio/u8-u8-asnprintf.c: New file.
10675         * lib/unistdio/u8-u8-asprintf.c: New file.
10676         * lib/unistdio/u8-u8-snprintf.c: New file.
10677         * lib/unistdio/u8-u8-sprintf.c: New file.
10678         * lib/unistdio/u8-u8-vasnprintf.c: New file.
10679         * lib/unistdio/u8-u8-vasprintf.c: New file.
10680         * lib/unistdio/u8-u8-vsnprintf.c: New file.
10681         * lib/unistdio/u8-u8-vsprintf.c: New file.
10682         * lib/unistdio/u16-asnprintf.c: New file.
10683         * lib/unistdio/u16-asprintf.c: New file.
10684         * lib/unistdio/u16-printf-parse.c: New file.
10685         * lib/unistdio/u16-snprintf.c: New file.
10686         * lib/unistdio/u16-sprintf.c: New file.
10687         * lib/unistdio/u16-vasnprintf.c: New file.
10688         * lib/unistdio/u16-vasprintf.c: New file.
10689         * lib/unistdio/u16-vsnprintf.c: New file.
10690         * lib/unistdio/u16-vsprintf.c: New file.
10691         * lib/unistdio/u16-u16-asnprintf.c: New file.
10692         * lib/unistdio/u16-u16-asprintf.c: New file.
10693         * lib/unistdio/u16-u16-snprintf.c: New file.
10694         * lib/unistdio/u16-u16-sprintf.c: New file.
10695         * lib/unistdio/u16-u16-vasnprintf.c: New file.
10696         * lib/unistdio/u16-u16-vasprintf.c: New file.
10697         * lib/unistdio/u16-u16-vsnprintf.c: New file.
10698         * lib/unistdio/u16-u16-vsprintf.c: New file.
10699         * lib/unistdio/u32-asnprintf.c: New file.
10700         * lib/unistdio/u32-asprintf.c: New file.
10701         * lib/unistdio/u32-printf-parse.c: New file.
10702         * lib/unistdio/u32-snprintf.c: New file.
10703         * lib/unistdio/u32-sprintf.c: New file.
10704         * lib/unistdio/u32-vasnprintf.c: New file.
10705         * lib/unistdio/u32-vasprintf.c: New file.
10706         * lib/unistdio/u32-vsnprintf.c: New file.
10707         * lib/unistdio/u32-vsprintf.c: New file.
10708         * lib/unistdio/u32-u32-asnprintf.c: New file.
10709         * lib/unistdio/u32-u32-asprintf.c: New file.
10710         * lib/unistdio/u32-u32-snprintf.c: New file.
10711         * lib/unistdio/u32-u32-sprintf.c: New file.
10712         * lib/unistdio/u32-u32-vasnprintf.c: New file.
10713         * lib/unistdio/u32-u32-vasprintf.c: New file.
10714         * lib/unistdio/u32-u32-vsnprintf.c: New file.
10715         * lib/unistdio/u32-u32-vsprintf.c: New file.
10716         * tests/unistdio/test-ulc-asnprintf1.c: New file.
10717         * tests/unistdio/test-ulc-asnprintf1.h: New file.
10718         * tests/unistdio/test-ulc-printf1.h: New file.
10719         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
10720         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
10721         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
10722         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
10723         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
10724         * tests/unistdio/test-ulc-vasprintf1.c: New file.
10725         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
10726         * tests/unistdio/test-ulc-vsprintf1.c: New file.
10727         * tests/unistdio/test-u8-asnprintf1.c: New file.
10728         * tests/unistdio/test-u8-asnprintf1.h: New file.
10729         * tests/unistdio/test-u8-printf1.h: New file.
10730         * tests/unistdio/test-u8-vasnprintf1.c: New file.
10731         * tests/unistdio/test-u8-vasnprintf2.c: New file.
10732         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
10733         * tests/unistdio/test-u8-vasnprintf3.c: New file.
10734         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
10735         * tests/unistdio/test-u8-vasprintf1.c: New file.
10736         * tests/unistdio/test-u8-vsnprintf1.c: New file.
10737         * tests/unistdio/test-u8-vsprintf1.c: New file.
10738         * tests/unistdio/test-u16-asnprintf1.c: New file.
10739         * tests/unistdio/test-u16-asnprintf1.h: New file.
10740         * tests/unistdio/test-u16-printf1.h: New file.
10741         * tests/unistdio/test-u16-vasnprintf1.c: New file.
10742         * tests/unistdio/test-u16-vasnprintf2.c: New file.
10743         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
10744         * tests/unistdio/test-u16-vasnprintf3.c: New file.
10745         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
10746         * tests/unistdio/test-u16-vasprintf1.c: New file.
10747         * tests/unistdio/test-u16-vsnprintf1.c: New file.
10748         * tests/unistdio/test-u16-vsprintf1.c: New file.
10749         * tests/unistdio/test-u32-asnprintf1.c: New file.
10750         * tests/unistdio/test-u32-asnprintf1.h: New file.
10751         * tests/unistdio/test-u32-printf1.h: New file.
10752         * tests/unistdio/test-u32-vasnprintf1.c: New file.
10753         * tests/unistdio/test-u32-vasnprintf2.c: New file.
10754         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
10755         * tests/unistdio/test-u32-vasnprintf3.c: New file.
10756         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
10757         * tests/unistdio/test-u32-vasprintf1.c: New file.
10758         * tests/unistdio/test-u32-vsnprintf1.c: New file.
10759         * tests/unistdio/test-u32-vsprintf1.c: New file.
10760         * modules/unistdio/base: New file.
10761         * modules/unistdio/u-printf-args: New file.
10762         * modules/unistdio/ulc-asnprintf: New file.
10763         * modules/unistdio/ulc-asprintf: New file.
10764         * modules/unistdio/ulc-fprintf: New file.
10765         * modules/unistdio/ulc-printf-parse: New file.
10766         * modules/unistdio/ulc-snprintf: New file.
10767         * modules/unistdio/ulc-sprintf: New file.
10768         * modules/unistdio/ulc-vasnprintf: New file.
10769         * modules/unistdio/ulc-vasprintf: New file.
10770         * modules/unistdio/ulc-vfprintf: New file.
10771         * modules/unistdio/ulc-vsnprintf: New file.
10772         * modules/unistdio/ulc-vsprintf: New file.
10773         * modules/unistdio/u8-asnprintf: New file.
10774         * modules/unistdio/u8-asprintf: New file.
10775         * modules/unistdio/u8-printf-parse: New file.
10776         * modules/unistdio/u8-snprintf: New file.
10777         * modules/unistdio/u8-sprintf: New file.
10778         * modules/unistdio/u8-vasnprintf: New file.
10779         * modules/unistdio/u8-vasprintf: New file.
10780         * modules/unistdio/u8-vsnprintf: New file.
10781         * modules/unistdio/u8-vsprintf: New file.
10782         * modules/unistdio/u8-u8-asnprintf: New file.
10783         * modules/unistdio/u8-u8-asprintf: New file.
10784         * modules/unistdio/u8-u8-snprintf: New file.
10785         * modules/unistdio/u8-u8-sprintf: New file.
10786         * modules/unistdio/u8-u8-vasnprintf: New file.
10787         * modules/unistdio/u8-u8-vasprintf: New file.
10788         * modules/unistdio/u8-u8-vsnprintf: New file.
10789         * modules/unistdio/u8-u8-vsprintf: New file.
10790         * modules/unistdio/u16-asnprintf: New file.
10791         * modules/unistdio/u16-asprintf: New file.
10792         * modules/unistdio/u16-printf-parse: New file.
10793         * modules/unistdio/u16-snprintf: New file.
10794         * modules/unistdio/u16-sprintf: New file.
10795         * modules/unistdio/u16-vasnprintf: New file.
10796         * modules/unistdio/u16-vasprintf: New file.
10797         * modules/unistdio/u16-vsnprintf: New file.
10798         * modules/unistdio/u16-vsprintf: New file.
10799         * modules/unistdio/u16-u16-asnprintf: New file.
10800         * modules/unistdio/u16-u16-asprintf: New file.
10801         * modules/unistdio/u16-u16-snprintf: New file.
10802         * modules/unistdio/u16-u16-sprintf: New file.
10803         * modules/unistdio/u16-u16-vasnprintf: New file.
10804         * modules/unistdio/u16-u16-vasprintf: New file.
10805         * modules/unistdio/u16-u16-vsnprintf: New file.
10806         * modules/unistdio/u16-u16-vsprintf: New file.
10807         * modules/unistdio/u32-asnprintf: New file.
10808         * modules/unistdio/u32-asprintf: New file.
10809         * modules/unistdio/u32-printf-parse: New file.
10810         * modules/unistdio/u32-snprintf: New file.
10811         * modules/unistdio/u32-sprintf: New file.
10812         * modules/unistdio/u32-vasnprintf: New file.
10813         * modules/unistdio/u32-vasprintf: New file.
10814         * modules/unistdio/u32-vsnprintf: New file.
10815         * modules/unistdio/u32-vsprintf: New file.
10816         * modules/unistdio/u32-u32-asnprintf: New file.
10817         * modules/unistdio/u32-u32-asprintf: New file.
10818         * modules/unistdio/u32-u32-snprintf: New file.
10819         * modules/unistdio/u32-u32-sprintf: New file.
10820         * modules/unistdio/u32-u32-vasnprintf: New file.
10821         * modules/unistdio/u32-u32-vasprintf: New file.
10822         * modules/unistdio/u32-u32-vsnprintf: New file.
10823         * modules/unistdio/u32-u32-vsprintf: New file.
10824         * modules/unistdio/ulc-asnprintf-tests: New file.
10825         * modules/unistdio/ulc-vasnprintf-tests: New file.
10826         * modules/unistdio/ulc-vasprintf-tests: New file.
10827         * modules/unistdio/ulc-vsnprintf-tests: New file.
10828         * modules/unistdio/ulc-vsprintf-tests: New file.
10829         * modules/unistdio/u8-asnprintf-tests: New file.
10830         * modules/unistdio/u8-vasnprintf-tests: New file.
10831         * modules/unistdio/u8-vasprintf-tests: New file.
10832         * modules/unistdio/u8-vsnprintf-tests: New file.
10833         * modules/unistdio/u8-vsprintf-tests: New file.
10834         * modules/unistdio/u16-asnprintf-tests: New file.
10835         * modules/unistdio/u16-vasnprintf-tests: New file.
10836         * modules/unistdio/u16-vasprintf-tests: New file.
10837         * modules/unistdio/u16-vsnprintf-tests: New file.
10838         * modules/unistdio/u16-vsprintf-tests: New file.
10839         * modules/unistdio/u32-asnprintf-tests: New file.
10840         * modules/unistdio/u32-vasnprintf-tests: New file.
10841         * modules/unistdio/u32-vasprintf-tests: New file.
10842         * modules/unistdio/u32-vsnprintf-tests: New file.
10843         * modules/unistdio/u32-vsprintf-tests: New file.
10844         * MODULES.html.sh (Unicode string functions): Add the new modules.
10845
10846 2007-07-01  Bruno Haible  <bruno@clisp.org>
10847
10848         * lib/sprintf.c (sprintf): Limit the available length estimation,
10849         to avoid address wraparound.
10850         * lib/vsprintf.c (vsprintf): Likewise.
10851         * modules/sprintf-posix (Dependencies): Add stdint.
10852         * modules/vsprintf-posix (Dependencies): Likewise.
10853
10854 2007-07-01  Bruno Haible  <bruno@clisp.org>
10855
10856         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
10857         Windows PATH as well. Conservative double-quoting. Comments.
10858
10859 2007-07-01  Bruno Haible  <bruno@clisp.org>
10860             Eric Blake  <ebb9@byu.net>
10861             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10862
10863         * gnulib-tool (self_abspathname): Fix algorithm to cope with
10864         empty components in $PATH, denoting '.'.
10865
10866 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10867
10868         * gnulib-tool: Fix indentation.
10869         (func_create_megatestdir): Likewise.
10870         Report by Bruno Haible.
10871
10872 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10873
10874         Sync from Automake.
10875         * build-aux/gnupload: Fix shell portability issues with for loops.
10876         Report by Karl Berry.
10877
10878 2007-06-29  Simon Josefsson  <simon@josefsson.org>
10879
10880         * build-aux/maint.mk (POURL): Use translationproject.org.
10881
10882 2007-06-27  Simon Josefsson  <simon@josefsson.org>
10883             Bruno Haible  <bruno@clisp.org>
10884
10885         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
10886         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
10887         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
10888         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
10889         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
10890
10891 2007-06-27  Bruno Haible  <bruno@clisp.org>
10892
10893         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
10894         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
10895
10896 2007-06-26  Karl Berry  <karl@gnu.org>
10897
10898         * MODULES.html.sh: remove xreadlink-with-size.
10899
10900 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
10901
10902         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
10903         method that I hope also handles the double-include problem noted
10904         by Bruno Haible in
10905         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
10906
10907 2007-06-23  Bruno Haible  <bruno@clisp.org>
10908
10909         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
10910         Don't let the 'mostlyclean' target fail if the last subdirectory could
10911         not be removed.
10912         Reported by Karl Berry.
10913
10914 2007-06-23  Bruno Haible  <bruno@clisp.org>
10915
10916         * gnulib-tool (echo): Add a speedier workaround for ksh.
10917         * tests/test-echo.sh: Likewise.
10918
10919 2007-06-23  Bruno Haible  <bruno@clisp.org>
10920
10921         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
10922         * tests/test-echo.sh: Likewise.
10923
10924 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10925
10926         * gnulib-tool (IFS): Initialize early, so we don't set it to
10927         empty later.
10928         (self_abspathname): Rewrite algorithm to set it, reindent.
10929         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
10930         (func_create_megatestdir): Merge some sed scripts.
10931
10932 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
10933
10934         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
10935         exposed by Sun Studio 11 cc on Solaris 8.
10936
10937 2007-06-22  Bruno Haible  <bruno@clisp.org>
10938
10939         * gnulib-tool (echo): Ensure the echo primitive does not interpret
10940         backslashes.
10941         * tests/test-echo.sh: New file.
10942
10943 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10944
10945         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
10946         simplify `sed_replace_build_aux' scripts, they are portable but
10947         echoing them with `echo' is not.
10948         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
10949
10950 2007-06-21  Karl Berry  <karl@gnu.org>
10951
10952         * config/srclist.txt: guess we can't handle the licenses via
10953         srclist at the moment.
10954
10955 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
10956
10957         * MODULES.html.sh: Add include_next.
10958         * modules/include_next: New file.
10959
10960 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
10961
10962         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
10963         INCLUDE_NEXT.
10964         (gl_CHECK_NEXT_HEADERS): New macro.
10965         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
10966         the obsolescent gl_ABSOLUTE_HEADER.
10967         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
10968         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
10969         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
10970         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
10971         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
10972         * m4/math_h.m4 (gl_MATH_H): Likewise.
10973         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
10974         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
10975         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
10976         * m4/stdint.m4 (gl_STDINT_H): Likewise.
10977         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
10978         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
10979         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
10980         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
10981         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
10982         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
10983         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
10984         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
10985         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
10986         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
10987         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
10988         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
10989         * m4/inttypes.m4 (gl_INTTYPES_H): Define
10990         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
10991         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
10992         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
10993         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
10994         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
10995         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
10996         * lib/float_.h: Likewise.
10997         * lib/inttypes_.h: Likewise.
10998         * lib/math_.h: Likewise.
10999         * lib/search_.h: Likewise.
11000         * lib/signal_.h: Likewise.
11001         * lib/stdint_.h: Likewise.
11002         * lib/stdio_.h: Likewise.
11003         * lib/stdlib_.h: Likewise.
11004         * lib/string_.h: Likewise.
11005         * lib/sys_stat_.h: Likewise.
11006         * lib/sys_time_.h: Likewise.
11007         * lib/time_.h: Likewise.
11008         * lib/unistd_.h: Likewise.
11009         * lib/wchar_.h: Likewise.
11010         * lib/wctype_.h: Likewise.
11011         * lib/dirent_.h: Likewise.
11012         * lib/iconv_.h: Likewise.
11013         * lib/locale_.h: Likewise.
11014         * lib/netinet_in_.h: Likewise.
11015         * lib/sys_select_.h: Likewise.
11016         * lib/sys_socket_.h: Likewise.
11017         * lib/sysexits_.h: Likewise.
11018         * modules/fcntl (Depends-on): Depend on include_next, not
11019         absolute_header.
11020         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
11021         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
11022         * modules/fchdir: Likewise.
11023         * modules/float: Likewise.
11024         * modules/iconv_open: Likewise.
11025         * modules/inttypes: Likewise.
11026         * modules/locale: Likewise.
11027         * modules/math: Likewise.
11028         * modules/netinet_in: Likewise.
11029         * modules/search: Likewise.
11030         * modules/signal: Likewise.
11031         * modules/stdint: Likewise.
11032         * modules/stdio: Likewise.
11033         * modules/stdlib: Likewise.
11034         * modules/string: Likewise.
11035         * modules/sys_select: Likewise.
11036         * modules/sys_socket: Likewise.
11037         * modules/sys_stat: Likewise.
11038         * modules/sys_time: Likewise.
11039         * modules/sysexits: Likewise.
11040         * modules/time: Likewise.
11041         * modules/unistd: Likewise.
11042         * modules/wchar: Likewise.
11043         * modules/wctype: Likewise.
11044         * modules/sys_stat: Change maintainer to "all".
11045         * modules/unistd: Likewise.
11046
11047 2007-06-20  Karl Berry  <karl@gnu.org>
11048
11049         * config/srclist.txt: track www changes in license files.
11050
11051 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
11052
11053         * build-aux/bootstrap: Remove stray dot.
11054         Make sure build_aux settings are honored when linking
11055         gnulib_extra_files.
11056
11057 2007-06-19  Eric Blake  <ebb9@byu.net>
11058
11059         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
11060         Allow compilation on cygwin.
11061
11062 2007-06-19  Jim Meyering  <jim@meyering.net>
11063
11064         xreadlink-with-size: Remove module.  No longer used.
11065         Ex-callers now use xreadlink or mreadlink-with-size.
11066         * modules/xreadlink-with-size: Remove module.
11067         * lib/xreadlink-with-size.c: Remove file.
11068         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
11069         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
11070         just before the function definition *is* accurate.
11071
11072         Eliminate one way canonicalize_filename_mode could exit.
11073         * lib/canonicalize.c (canonicalize_filename_mode):
11074         Use mreadlink_with_size, not xreadlink_with_size.
11075
11076 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
11077
11078         Detect porting problems to FreeBSD/arm, which has time_t wider than
11079         long int.  Original problem reported for GNU diff by Xin Li in
11080         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
11081         * modules/getdate (Depends-on): Add intprops, verify.
11082         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
11083         is an integer type no wider than long int.
11084
11085 2007-06-18  Jim Meyering  <jim@meyering.net>
11086
11087         New module: mreadlink-with-size.
11088         * MODULES.html.sh: Add mreadlink-with-size.
11089         * modules/mreadlink-with-size: New module
11090         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
11091         not xreadlink-with-size.
11092         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
11093
11094 2007-06-16  Bruno Haible  <bruno@clisp.org>
11095
11096         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
11097         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
11098         Reported by Gary V. Vaughan <gary@gnu.org>.
11099
11100 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
11101
11102         Revamp lchown so that it lives in unistd.h where it belongs.
11103         * lib/lchown.h: Remove.
11104         * lib/dirchownmod.c: Don't include lib/lchown.h.
11105         * lib/fchownat.c: Likewise.
11106         * lib/openat.c: Likewise.
11107         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
11108         does not follow symlinks.
11109         (EOPNOTSUPP): Define if not defined.
11110         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
11111         is defined to 0.
11112         (lchown): New decl.
11113         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
11114         Do not check for lchown decl.
11115         Set REPLACE_LCHOWN.
11116         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
11117         REPLACE_LCHOWN.
11118         * modules/chown: Make it clear it follows symlinks.
11119         * modules/lchown: Make it clear it doesn't follow symlinks.
11120         (Files): Remove lib/lchown.h
11121         (Depends-on): Add unistd.
11122         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
11123         (Include): Include <unistd.h>, not "lchown.h".
11124         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
11125         REPLACE_LCHOWN.
11126
11127 2007-06-15  Jim Meyering  <jim@meyering.net>
11128
11129         Change license (GPL to LGPL) of fsusage and dependents.
11130         * modules/fsusage (License): Change to LGPL.
11131         * modules/full-read (License): Likewise.
11132         * modules/full-write (License): Likewise.
11133         * modules/safe-read (License): Likewise.
11134         * modules/safe-write (License): Likewise.
11135
11136 2007-06-14  Ben Pfaff  <blp@gnu.org>
11137
11138         Missing part of allocsa -> malloca transition.
11139         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
11140         gl_MALLOCA.
11141
11142 2007-06-12  Bruno Haible  <bruno@clisp.org>
11143
11144         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
11145         to ia64, x86_64, i386.
11146         Reported by Eric Blake.
11147
11148 2007-06-12  Bruno Haible  <bruno@clisp.org>
11149
11150         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
11151         cross-compiling to x86_64.
11152
11153 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
11154
11155         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
11156         glitch reported by Ralf Wildenhues in
11157         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
11158
11159         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
11160         Vin Shelton.
11161
11162 2007-06-11  Bruno Haible  <bruno@clisp.org>
11163
11164         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
11165         replacement string.
11166         Reported by Eric Blake.
11167
11168 2007-06-10  Bruno Haible  <bruno@clisp.org>
11169
11170         Prepare vasnprintf code for use with Unicode strings.
11171         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
11172         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
11173         TYPE_U32_STRING.
11174         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
11175         a_u32_string variants.
11176         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
11177         * lib/printf-args.c: Don't include config.h and the specification
11178         header if PRINTF_FETCHARGS is already defined.
11179         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
11180         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
11181         TYPE_U16_STRING, TYPE_U32_STRING.
11182         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
11183         u16_directive, u16_directives, u32_directive, u32_directives): New
11184         types.
11185         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
11186         New declarations.
11187         * lib/printf-parse.c: Don't include config.h and the specification
11188         header if PRINTF_PARSE is already defined. Eliminate the set of
11189         parameters for WIDE_CHAR_VERSION; the user of this file must provide
11190         them now. Include c-ctype.h.
11191         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
11192         directive and CHAR_T_ONLY_ASCII.
11193         * lib/vasnprintf.c: Don't include config.h and the specification header
11194         if VASNPRINTF is already defined.
11195         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
11196         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
11197         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
11198         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
11199         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
11200         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
11201         code accordingly.
11202         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
11203         pad_ourselves also in this case, with the 'c' and 's' directives, and
11204         with a different notion of "width".
11205         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
11206
11207 2007-06-10  Bruno Haible  <bruno@clisp.org>
11208
11209         * modules/unistr/u32-mbsnlen: New file.
11210         * lib/unistr/u32-mbsnlen.c: New file.
11211
11212         * modules/unistr/u16-mbsnlen: New file.
11213         * lib/unistr/u16-mbsnlen.c: New file.
11214
11215         * modules/unistr/u8-mbsnlen: New file.
11216         * lib/unistr/u8-mbsnlen.c: New file.
11217
11218         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
11219         declarations.
11220
11221 2007-06-10  Bruno Haible  <bruno@clisp.org>
11222
11223         * lib/string_.h (mbsnlen): New declaration.
11224         * lib/mbsnlen.c: New file.
11225         * m4/mbsnlen.m4: New file.
11226         * modules/mbsnlen: New file.
11227         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
11228         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
11229         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
11230
11231 2007-06-10  Bruno Haible  <bruno@clisp.org>
11232
11233         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
11234
11235 2007-06-10  Bruno Haible  <bruno@clisp.org>
11236
11237         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
11238         * lib/mbuiter.h: Likewise.
11239
11240 2007-06-10  Bruno Haible  <bruno@clisp.org>
11241
11242         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
11243         declaration.
11244
11245 2007-06-10  Karl Berry  <karl@gnu.org>
11246
11247         * config/srclist.txt: remove gettext entries, Bruno prefers
11248         to update individually.
11249
11250 2007-06-10  Bruno Haible  <bruno@clisp.org>
11251
11252         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
11253         'maxlen'. Ensure only length + width bytes are allocated, not
11254         length + 1 + width.
11255
11256 2007-06-09  Bruno Haible  <bruno@clisp.org>
11257
11258         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
11259         (CHAR_T): Remove macro.
11260         (VASNPRINTF): Update.
11261
11262 2007-06-09  Bruno Haible  <bruno@clisp.org>
11263
11264         * MODULES.html.sh (Unicode string functions): Add the new modules.
11265
11266         * modules/uniconv/u32-conv-to-enc: New file.
11267         * lib/uniconv/u32-conv-to-enc.c: New file.
11268         * modules/uniconv/u32-conv-to-enc-tests: New file.
11269         * tests/uniconv/test-u32-conv-to-enc.c: New file.
11270
11271         * modules/uniconv/u16-conv-to-enc: New file.
11272         * lib/uniconv/u16-conv-to-enc.c: New file.
11273         * lib/uniconv/u-conv-to-enc.h: New file.
11274         * modules/uniconv/u16-conv-to-enc-tests: New file.
11275         * tests/uniconv/test-u16-conv-to-enc.c: New file.
11276
11277         * modules/uniconv/u8-conv-to-enc: New file.
11278         * lib/uniconv/u8-conv-to-enc.c: New file.
11279         * modules/uniconv/u8-conv-to-enc-tests: New file.
11280         * tests/uniconv/test-u8-conv-to-enc.c: New file.
11281
11282         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
11283         u32_conv_to_encoding): New declarations.
11284
11285 2007-06-09  Bruno Haible  <bruno@clisp.org>
11286
11287         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
11288
11289 2007-06-09  Bruno Haible  <bruno@clisp.org>
11290
11291         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
11292         * modules/malloca: Renamed from modules/allocsa, updated.
11293         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
11294         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
11295         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
11296         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
11297         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
11298         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
11299         * modules/xmalloca: Renamed from modules/xallocsa, updated.
11300         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
11301         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
11302         * modules/c-strcasestr (Depends-on): Update.
11303         * lib/c-strcasestr.c: Update.
11304         * modules/c-strstr (Depends-on): Update.
11305         * lib/c-strstr.c: Update.
11306         * modules/canonicalize-lgpl (Depends-on): Update.
11307         * lib/canonicalize-lgpl.c: Update.
11308         * modules/clean-temp (Depends-on): Update.
11309         * lib/clean-temp.c: Update.
11310         * modules/csharpcomp (Depends-on): Update.
11311         * lib/csharpcomp.c: Update.
11312         * modules/csharpexec (Depends-on): Update.
11313         * lib/csharpexec.c: Update.
11314         * modules/javacomp (Depends-on): Update.
11315         * lib/javacomp.c: Update.
11316         * modules/javaexec (Depends-on): Update.
11317         * lib/javaexec.c: Update.
11318         * modules/mbscasestr (Depends-on): Update.
11319         * lib/mbscasestr.c: Update.
11320         * modules/mbsstr (Depends-on): Update.
11321         * lib/mbsstr.c: Update.
11322         * modules/setenv (Depends-on): Update.
11323         * lib/setenv.c: Update.
11324         * modules/strcasestr (Depends-on): Update.
11325         * lib/strcasestr.c: Update.
11326         * modules/striconveha (Depends-on): Update.
11327         * lib/striconveha.c: Update.
11328         * modules/relocatable-prog-wrapper (Files): Update.
11329         * lib/relocwrapper.c: Update.
11330         * build-aux/install-reloc: Update.
11331         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
11332
11333 2007-06-08  Bruno Haible  <bruno@clisp.org>
11334
11335         Port to uClibc.
11336         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
11337         * lib/fpurge.c (fpurge): Likewise.
11338         * lib/freading.c (freading): Likewise.
11339         * lib/fseeko.c (rpl_fseeko): Likewise.
11340         * lib/fseterr.c (fseterr): Likewise.
11341         * lib/fwriting.c (fwriting): Likewise.
11342         * tests/test-fflush.c (main): Avoid a failure on uClibc.
11343
11344 2007-06-08  Bruno Haible  <bruno@clisp.org>
11345
11346         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
11347         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
11348         * modules/gettext (Files): Add m4/intlmacosx.m4.
11349
11350 2007-06-07  Bruno Haible  <bruno@clisp.org>
11351
11352         * modules/localename-tests: New file.
11353         * tests/test-localename.c: New file.
11354
11355         New module 'localename'.
11356         * lib/localename.h: New file.
11357         * lib/localename.c: New file, from GNU gettext.
11358         * m4/localename.m4: New file.
11359         * modules/localename: New file.
11360
11361 2007-06-07  Bruno Haible  <bruno@clisp.org>
11362
11363         Work around the lack of <wchar.h> on some builds of uClibc.
11364         * doc/headers/wchar.texi: Update.
11365         * lib/wchar_.h: Include <wchar.h> only if it exists.
11366         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
11367         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
11368         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
11369         doesn't exist.
11370         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
11371         * modules/mbfile (Depends-on): Add wchar.
11372         * modules/mbiter (Depends-on): Likewise.
11373         * modules/mbuiter (Depends-on): Likewise.
11374         Reported by Simon Josefsson.
11375
11376 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
11377
11378         Work around problem reported by Steven M. Schweda in
11379         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
11380         Tru64 5.1B with the Compaq compiler environment installed declares
11381         an 'isblank' function but does not define it in the C library.
11382         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
11383         * lib/regex_internal.h (isblank): Likewise.
11384         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
11385         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
11386
11387 2007-06-05  Bruno Haible  <bruno@clisp.org>
11388
11389         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
11390         ia64.
11391         * modules/printf-safe: New file.
11392         * modules/fprintf-posix (Depends-on): Add printf-safe.
11393         * modules/printf-posix (Depends-on): Likewise.
11394         * modules/snprintf-posix (Depends-on): Likewise.
11395         * modules/sprintf-posix (Depends-on): Likewise.
11396         * modules/vasnprintf-posix (Depends-on): Likewise.
11397         * modules/vasprintf-posix (Depends-on): Likewise.
11398         * modules/vfprintf-posix (Depends-on): Likewise.
11399         * modules/vprintf-posix (Depends-on): Likewise.
11400         * modules/vsnprintf-posix (Depends-on): Likewise.
11401         * modules/vsprintf-posix (Depends-on): Likewise.
11402         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
11403         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
11404         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
11405         "no" on i386, x86_64, ia64.
11406         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
11407         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
11408         on i386, x86_64, ia64.
11409         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
11410         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
11411         on i386, x86_64, ia64.
11412         * tests/test-vasnprintf-posix.c: Include float.h.
11413         (LDBL80_WORDS): New macro.
11414         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
11415         on i386, x86_64, ia64.
11416         * tests/test-vasprintf-posix.c: Include float.h.
11417         (LDBL80_WORDS): New macro.
11418         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
11419         on i386, x86_64, ia64.
11420         * tests/test-snprintf-posix.c: Include float.h.
11421         * tests/test-sprintf-posix.c: Likewise.
11422         * tests/test-vsnprintf-posix.c: Likewise.
11423         * tests/test-vsprintf-posix.c: Likewise.
11424
11425 2007-06-05  Bruno Haible  <bruno@clisp.org>
11426
11427         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
11428         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
11429         non-IEEE numbers on i386, x86_64, ia64.
11430         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
11431         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
11432         * tests/test-isnanl.h: Include float.h.
11433         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
11434
11435 2007-06-05  Bruno Haible  <bruno@clisp.org>
11436
11437         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
11438         also the %a / %A. Handle the %a / %A code before this extra handling.
11439
11440 2007-06-05  Bruno Haible  <bruno@clisp.org>
11441
11442         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
11443         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
11444
11445 2007-06-05  Bruno Haible  <bruno@clisp.org>
11446
11447         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
11448         typo in variable name.
11449
11450 2007-06-05  Eric Blake  <ebb9@byu.net>
11451
11452         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
11453         Reported by Simon Josefsson.
11454
11455 2007-06-04  Bruno Haible  <bruno@clisp.org>
11456
11457         Avoid test failures on some PowerPC platforms.
11458         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
11459         Define differently for PowerPC.
11460         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
11461         Reported by Gary V. Vaughan <gary@gnu.org>.
11462
11463 2007-06-02  Bruno Haible  <bruno@clisp.org>
11464
11465         Fix test-stdint failure on FreeBSD/ia64.
11466         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
11467         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
11468         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
11469         * doc/headers/stdint.texi: Update.
11470
11471 2007-06-01  Bruno Haible  <bruno@clisp.org>
11472
11473         * tests/test-binary-io.c (main): Pass a third argument to open().
11474         Reported by Gary V. Vaughan <gary@gnu.org>.
11475
11476 2007-06-01  Bruno Haible  <bruno@clisp.org>
11477
11478         * doc/functions/frexpl.texi: Update for mingw.
11479
11480 2007-06-01  Bruno Haible  <bruno@clisp.org>
11481
11482         * tests/test-lseek.c (main): Disable test of errno for invalid third
11483         argument.
11484         * doc/functions/lseek.texi: Update.
11485         Reported by Gary V. Vaughan <gary@gnu.org>.
11486
11487 2007-05-28  Bruno Haible  <bruno@clisp.org>
11488
11489         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
11490
11491 2007-05-31  Eric Blake  <ebb9@byu.net>
11492
11493         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
11494         cross compiling.
11495
11496 2007-05-30  Eric Blake  <ebb9@byu.net>
11497         and Bruno Haible  <bruno@clisp.org>
11498
11499         Work around mingw test failures exposed by m4-1.4.9b.
11500         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
11501         * tests/test-unistd.c: Disable uid_t and git_t tests for the
11502         moment.
11503
11504 2007-05-30  Bruno Haible  <bruno@clisp.org>
11505
11506         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
11507         assuming that they are closed. Needed on HP-UX 11.
11508
11509 2007-05-29  Bruno Haible  <bruno@clisp.org>
11510
11511         Fix a problem with #include_next.
11512         * lib/dirent_.h: Split the double-inclusion guard.
11513         * lib/fcntl_.h: Likewise.
11514         * lib/float_.h: Likewise.
11515         * lib/iconv_.h: Likewise.
11516         * lib/inttypes_.h: Likewise.
11517         * lib/locale_.h: Likewise.
11518         * lib/math_.h: Likewise.
11519         * lib/netinet_in_.h: Likewise.
11520         * lib/search_.h: Likewise.
11521         * lib/signal_.h: Likewise.
11522         * lib/stdint_.h: Likewise.
11523         * lib/stdio_.h: Likewise.
11524         * lib/stdlib_.h: Likewise.
11525         * lib/string_.h: Likewise.
11526         * lib/sys_select_.h: Likewise.
11527         * lib/sys_socket_.h: Likewise.
11528         * lib/sys_stat_.h: Likewise.
11529         * lib/sys_time_.h: Likewise.
11530         * lib/sysexits_.h: Likewise.
11531         * lib/time_.h: Likewise.
11532         * lib/unistd_.h: Likewise.
11533         * lib/wchar_.h: Likewise.
11534         * lib/wctype_.h: Likewise.
11535
11536 2007-05-29  Bruno Haible  <bruno@clisp.org>
11537
11538         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
11539         for the moment.
11540
11541 2007-05-29  Bruno Haible  <bruno@clisp.org>
11542
11543         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
11544         invocation.
11545         Reported by Eric Blake.
11546
11547 2007-05-29  Bruno Haible  <bruno@clisp.org>
11548
11549         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
11550         compiling case.
11551
11552 2007-05-29  Eric Blake  <ebb9@byu.net>
11553             Bruno Haible  <bruno@clisp.org>
11554
11555         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
11556         cross compiles.
11557
11558 2007-05-28  Eric Blake  <ebb9@byu.net>
11559
11560         * modules/closein-tests (test_closein_LDADD): Support test on
11561         cygwin with libtool.
11562
11563 2007-05-28  Bruno Haible  <bruno@clisp.org>
11564
11565         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
11566         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
11567         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
11568         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
11569         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
11570         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
11571         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
11572         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
11573         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
11574
11575 2007-05-28  Eric Blake  <ebb9@byu.net>
11576
11577         Unconditionally include <config.h> in unit tests.
11578         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
11579         * tests/test-allocsa.c, tests/test-arcfour.c,
11580         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
11581         tests/test-array_list.c, tests/test-array_oset.c,
11582         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
11583         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
11584         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
11585         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
11586         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
11587         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
11588         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
11589         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
11590         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
11591         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
11592         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
11593         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
11594         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
11595         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
11596         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
11597         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
11598         test-md5.c, test-memmem.c, test-printf-posix.c,
11599         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
11600         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
11601         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
11602         test-strcasestr.c, test-striconv.c, test-striconveh.c,
11603         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
11604         test-vasnprintf-posix2.c, test-vasnprintf.c,
11605         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
11606         test-vfprintf-posix.c, test-vprintf-posix.c,
11607         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
11608         test-xvasprintf.c: Likewise.
11609
11610 2007-05-28  Bruno Haible  <bruno@clisp.org>
11611
11612         * gnulib-tool (func_import): Remember the --with-tests command-line
11613         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
11614         Reported by Eric Blake.
11615
11616 2007-05-28  Bruno Haible  <bruno@clisp.org>
11617
11618         * modules/ftell-tests: New file.
11619         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
11620         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
11621
11622         * lib/ftell.c: New file.
11623         * modules/ftell: New file.
11624         * m4/ftell.m4: New file.
11625         * doc/functions/ftell.texi: Update.
11626         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
11627         REPLACE_FTELL.
11628         * lib/stdio_.h (rpl_ftell): New declaration.
11629         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
11630         REPLACE_FTELL.
11631
11632 2007-05-28  Eric Blake  <ebb9@byu.net>
11633
11634         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
11635
11636 2007-05-28  Bruno Haible  <bruno@clisp.org>
11637
11638         * modules/fseek-tests: New file.
11639         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
11640         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
11641
11642         * lib/fseek.c: New file.
11643         * modules/fseek: New file.
11644         * m4/fseek.m4: New file.
11645         * doc/functions/fseek.texi: Update.
11646         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
11647         REPLACE_FSEEK.
11648         * lib/stdio_.h (rpl_fseek): New declaration.
11649         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
11650         REPLACE_FSEEK.
11651
11652 2007-05-28  Bruno Haible  <bruno@clisp.org>
11653
11654         * lib/stdio_.h (fflush): More comments.
11655
11656 2007-05-28  Bruno Haible  <bruno@clisp.org>
11657
11658         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
11659         runtime test.
11660
11661 2007-05-28  Eric Blake  <ebb9@byu.net>
11662
11663         Improve lseek module.
11664         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
11665         * lib/unistd_.h (lseek): Scale back link warning message.
11666         * tests/test-lseek.c: Beef up test.
11667         * tests/test-lseek.sh: Exercise more facets of lseek.
11668         Reported by Bruno Haible.
11669
11670 2007-05-28  Bruno Haible  <bruno@clisp.org>
11671
11672         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
11673         to define.
11674
11675 2007-05-27  Bruno Haible  <bruno@clisp.org>
11676
11677         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
11678
11679 2007-05-27  Bruno Haible  <bruno@clisp.org>
11680
11681         * modules/openmp: New file.
11682         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
11683         Noah Misch.
11684
11685 2007-05-26  Bruno Haible  <bruno@clisp.org>
11686
11687         * modules/chdir-long (Depends-on): Add fchdir.
11688         * modules/chdir-safer (Depends-on): Likewise.
11689         * modules/fts (Depends-on): Likewise.
11690         * modules/fts-lgpl (Depends-on): Likewise.
11691         * modules/openat (Depends-on): Likewise.
11692         * modules/savewd (Depends-on): Likewise.
11693
11694 2007-05-24  Eric Blake  <ebb9@byu.net>
11695
11696         Fix lseek on mingw.
11697         * modules/lseek: New module.
11698         * m4/lseek.m4: New file.
11699         * lib/lseek.c: New file.
11700         * modules/lseek-tests: New file.
11701         * tests/test-lseek.c: New file.
11702         * tests/test-lseek.sh: New file.
11703         * MODULES.html.sh: Document lseek module.
11704         * modules/fflush (Depends-on): Add lseek, fseeko.
11705         * modules/fseeko (Depends-on): Likewise.
11706         * modules/ftello (Depends-on): Likewise.
11707         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
11708         broken.
11709         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
11710         broken.
11711         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
11712         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
11713         * lib/ftello.c (rpl_ftello): Likewise.
11714         * tests/test-fseeko.c (main): Test this.
11715         * tests/test-fseeko.sh: Likewise.
11716         * tests/test-ftello.c (main): Likewise.
11717         * tests/test-ftello.sh: Likewise.
11718         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
11719         implies replacing fseek.
11720         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
11721         HAVE_FTELLO.
11722         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
11723         * modules/unistd (Makefile.am): Likewise.
11724         * lib/unistd_.h (lseek): Declare a replacement.
11725         * doc/functions/lseek.texi (lseek): Document this fix.
11726         * doc/functions/fseek.texi (fseek): Likewise.
11727         * doc/functions/ftell.texi (ftell): Likewise.
11728
11729 2007-05-24  Bruno Haible  <bruno@clisp.org>
11730
11731         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
11732         in the printed representation of a NaN.
11733         * tests/test-vasprintf-posix.c (test_function): Likewise.
11734         * tests/test-snprintf-posix.h (test_function): Likewise.
11735         * tests/test-sprintf-posix.h (test_function): Likewise.
11736         Reported by Eric Blake.
11737
11738 2007-05-23  Eric Blake  <ebb9@byu.net>
11739
11740         Fix fseeko/ftello on cygwin 1.5.24.
11741         * doc/functions/fseeko.texi (fseeko): Document the fix.
11742         * doc/functions/ftello.texi (ftello): Document the fix.
11743         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
11744         * doc/functions/stdout.text (stdout): New file.
11745         * doc/functions/stderr.text (stderr): New file.
11746         * doc/gnulib.texi (Function Substitutes): Use new files.
11747         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
11748         prior to 1.7.0.
11749         * tests/test-ftello.c (main): Likewise for ftello.
11750         * tests/test-fseeko.sh: New file.
11751         * tests/test-ftello.sh: New file.
11752         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
11753         with seekable stdin.
11754         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
11755         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
11756         (gl_REPLACE_FSEEKO): New macro.
11757         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
11758         * modules/fseeko (Files): Distribute fseeko.c.
11759         * modules/ftello (Files): Distribute ftello.c.
11760         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
11761         mode.
11762         * lib/ftello.c (rpl_ftello): New file.
11763         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
11764         fseeko, ftello.
11765         (gl_STDIN_LARGE_OFFSET): New macro.
11766         * modules/stdio (Makefile.am): Perform the replacement.
11767         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
11768
11769 2007-05-23  Bruno Haible  <bruno@clisp.org>
11770
11771         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
11772         GNULIB_POSIXCHECK is defined.
11773
11774 2007-05-21  Bruno Haible  <bruno@clisp.org>
11775
11776         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
11777         Check also the output for NaN arguments. When cross-compiling, guess
11778         no on IRIX.
11779         * lib/vasnprintf.c: Update comments.
11780         * tests/test-vasnprintf-posix.c (strisnan): New function.
11781         (test_function): Use it.
11782         * tests/test-vasprintf-posix.c (strisnan): New function.
11783         (test_function): Use it.
11784         * tests/test-snprintf-posix.h (strisnan): New function.
11785         (test_function): Use it.
11786         * tests/test-sprintf-posix.h (strisnan): New function.
11787         (test_function): Use it.
11788         Reported by Eric Blake.
11789
11790 2007-05-20  Bruno Haible  <bruno@clisp.org>
11791
11792         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
11793         numbers that fails on BeOS.
11794         * doc/functions/frexpl.texi: Update.
11795
11796 2007-05-20  Jim Meyering  <jim@meyering.net>
11797
11798         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
11799         forced upon us by glibc-2.6.
11800
11801 2007-05-20  Bruno Haible  <bruno@clisp.org>
11802
11803         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
11804         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
11805         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
11806         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
11807         NEED_PRINTF_INFINITE.
11808         (is_infinitel): New function.
11809         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
11810         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
11811         gl_PREREQ_VASNPRINTF_INFINITE.
11812         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
11813         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11814         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
11815         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
11816         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
11817         gl_PREREQ_VASNPRINTF_INFINITE.
11818         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11819         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11820         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11821         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11822         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11823         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11824         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11825         * doc/functions/fprintf.texi: Update.
11826         * doc/functions/printf.texi: Update.
11827         * doc/functions/snprintf.texi: Update.
11828         * doc/functions/sprintf.texi: Update.
11829         * doc/functions/vfprintf.texi: Update.
11830         * doc/functions/vprintf.texi: Update.
11831         * doc/functions/vsnprintf.texi: Update.
11832         * doc/functions/vsprintf.texi: Update.
11833
11834 2007-05-20  Bruno Haible  <bruno@clisp.org>
11835
11836         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
11837         was not found in libc.
11838         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
11839
11840 2007-05-20  Bruno Haible  <bruno@clisp.org>
11841
11842         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
11843         printed as "-nan" instead of "nan".
11844         * tests/test-vasprintf-posix.c (test_function): Likewise.
11845         * tests/test-snprintf-posix.h (test_function): Likewise.
11846         * tests/test-sprintf-posix.h (test_function): Likewise.
11847         Needed for HP-UX 11.
11848
11849 2007-05-20  Jim Meyering  <jim@meyering.net>
11850
11851         Fix buggy test for the fchownat-deref bug.
11852         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
11853         symlink required for the run-test.  Without it, this test would
11854         always declare that fchownat doesn't work, and client code would
11855         unnecessarily use the replacement function with fixed libc.
11856         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
11857         Reported by Greg Schafer.
11858
11859 2007-05-19  Bruno Haible  <bruno@clisp.org>
11860
11861         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
11862         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
11863         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
11864         Needed for IRIX 6.5 and Solaris 2.5.1.
11865
11866 2007-05-19  Bruno Haible  <bruno@clisp.org>
11867
11868         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
11869         (test_function): Skip tests involving -0.0 on platforms where
11870         -0.0 = 0.0.
11871         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
11872         (test_function): Skip tests involving -0.0 on platforms where
11873         -0.0 = 0.0.
11874         * tests/test-snprintf-posix.h (have_minus_zero): New function.
11875         (test_function): Skip tests involving -0.0 on platforms where
11876         -0.0 = 0.0.
11877         * tests/test-sprintf-posix.h (have_minus_zero): New function.
11878         (test_function): Skip tests involving -0.0 on platforms where
11879         -0.0 = 0.0.
11880         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
11881         tests.
11882         * tests/test-printf-posix.h (test_function): Likewise.
11883         * tests/test-printf-posix.output: Remove all -0.0 related results.
11884         Needed for IRIX 6.5.
11885
11886 2007-05-19  Bruno Haible  <bruno@clisp.org>
11887
11888         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
11889         printed as "nan0x7fffffff" instead of "nan".
11890         * tests/test-vasprintf-posix.c (test_function): Likewise.
11891         * tests/test-snprintf-posix.h (test_function): Likewise.
11892         * tests/test-sprintf-posix.h (test_function): Likewise.
11893         * tests/test-fprintf-posix.h (NaN): Remove macro.
11894         (test_function): Remove all NaN related tests.
11895         * tests/test-printf-posix.h (NaN): Remove macro.
11896         (test_function): Remove all NaN related tests.
11897         * tests/test-printf-posix.output: Remove all NaN related results.
11898         Needed for IRIX 6.5.
11899
11900 2007-05-19  Bruno Haible  <bruno@clisp.org>
11901
11902         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
11903         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
11904
11905 2007-05-19  Bruno Haible  <bruno@clisp.org>
11906
11907         * lib/float_.h: New file.
11908         * m4/float_h.m4: New file.
11909         * modules/float: New file.
11910         * modules/isnanl (Dependencies): Add float.
11911         * modules/isnanl-nolibm (Dependencies): Likewise.
11912         * modules/mathl (Dependencies): Likewise.
11913         * modules/printf-frexpl (Dependencies): Likewise.
11914         * modules/signbit (Dependencies): Likewise.
11915         * modules/vasnprintf (Dependencies): Likewise.
11916         * doc/headers/float.texi: Update.
11917
11918 2007-05-19  Jim Meyering  <jim@meyering.net>
11919
11920         * lib/utimens.c (gl_futimens): Rename from futimens,
11921         now that glibc-2.6 declares futimens.
11922         * lib/utimens.h: Likewise.
11923
11924 2007-05-19  Bruno Haible  <bruno@clisp.org>
11925
11926         Avoid test failures on mingw.
11927         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
11928         * tests/test-printf-posix.sh: Likewise.
11929         * tests/test-vfprintf-posix.sh: Likewise.
11930         * tests/test-vprintf-posix.sh: Likewise.
11931
11932 2007-05-19  Bruno Haible  <bruno@clisp.org>
11933
11934         Fix *printf result for NaN, Inf, -0.0 on mingw.
11935         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
11936         * lib/vasnprintf.c: Include math.h and isnan.h.
11937         (is_infinite_or_zero): New function.
11938         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
11939         values in the %f, %F, %e, %E, %g, %G directives.
11940         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
11941         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11942         gl_PRINTF_INFINITE and test its result. Invoke
11943         gl_PREREQ_VASNPRINTF_INFINITE.
11944         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11945         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11946         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11947         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11948         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11949         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11950         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11951         * doc/functions/fprintf.texi: Update.
11952         * doc/functions/printf.texi: Update.
11953         * doc/functions/snprintf.texi: Update.
11954         * doc/functions/sprintf.texi: Update.
11955         * doc/functions/vfprintf.texi: Update.
11956         * doc/functions/vprintf.texi: Update.
11957         * doc/functions/vsnprintf.texi: Update.
11958         * doc/functions/vsprintf.texi: Update.
11959
11960 2007-05-19  Bruno Haible  <bruno@clisp.org>
11961
11962         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
11963         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
11964         Instead of multiplying with 10^k, set extra_zeroes to k.
11965         (scale10_round_long_double): Remove function.
11966
11967 2007-05-18  Bruno Haible  <bruno@clisp.org>
11968
11969         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
11970         introduced on 2007-05-06.
11971
11972 2007-05-18  Bruno Haible  <bruno@clisp.org>
11973
11974         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
11975         %g directives.
11976         * tests/test-vasprintf-posix.c (test_function): Likewise.
11977         * tests/test-snprintf-posix.h (test_function): Likewise.
11978         * tests/test-sprintf-posix.h (test_function): Likewise.
11979
11980 2007-05-18  Bruno Haible  <bruno@clisp.org>
11981
11982         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
11983         (strmatch): New function.
11984         (test_function): Test the %f directive on numbers of various exponents.
11985         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
11986         (strmatch): New function.
11987         (test_function): Test the %f directive on numbers of various exponents.
11988         * tests/test-snprintf-posix.h (strmatch): New function.
11989         (test_function): Test the %f directive on numbers of various exponents.
11990         * tests/test-sprintf-posix.h (strmatch): New function.
11991         (test_function): Test the %f directive on numbers of various exponents.
11992         * tests/test-snprintf-posix.c (SIZEOF): New macro.
11993         * tests/test-sprintf-posix.c (SIZEOF): New macro.
11994         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
11995         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
11996
11997 2007-05-18  Bruno Haible  <bruno@clisp.org>
11998
11999         Add support for 'long double' number output.
12000         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
12001         * lib/vasnprintf.c: Include math.h and float+.h.
12002         (mp_limb_t): New type.
12003         (GMP_LIMB_BITS): New macro.
12004         (mp_twolimb_t): New type.
12005         (GMP_TWOLIMB_BITS): New macro.
12006         (mpn_t): New type.
12007         (multiply, divide, convert_to_decimal, decode_long_double,
12008         scale10_round_long_double, scale10_round_decimal_long_double,
12009         floorlog10l): New functions.
12010         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
12011         for the %f, %F, %e, %E, %g, %G directives.
12012         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
12013         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12014         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
12015         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
12016         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12017         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12018         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12019         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12020         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12021         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12022         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12023         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
12024         * modules/snprintf-posix (Depends-on): Likewise.
12025         * modules/sprintf-posix (Depends-on): Likewise.
12026         * modules/vasnprintf-posix (Depends-on): Likewise.
12027         * modules/vasprintf-posix (Depends-on): Likewise.
12028         * modules/vfprintf-posix (Depends-on): Likewise.
12029         * modules/vsnprintf-posix (Depends-on): Likewise.
12030         * modules/vsprintf-posix (Depends-on): Likewise.
12031         * modules/vasnprintf (Files): Add lib/float+.h.
12032         * doc/functions/fprintf.texi: Update.
12033         * doc/functions/printf.texi: Update.
12034         * doc/functions/snprintf.texi: Update.
12035         * doc/functions/sprintf.texi: Update.
12036         * doc/functions/vfprintf.texi: Update.
12037         * doc/functions/vprintf.texi: Update.
12038         * doc/functions/vsnprintf.texi: Update.
12039         * doc/functions/vsprintf.texi: Update.
12040
12041 2007-05-18  Bruno Haible  <bruno@clisp.org>
12042
12043         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
12044
12045 2007-05-18  Bruno Haible  <bruno@clisp.org>
12046
12047         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
12048         for printing 64-bit integers. Needed for mingw.
12049
12050 2007-05-18  Bruno Haible  <bruno@clisp.org>
12051
12052         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
12053         gl_FUNC_FREXPL_WORKS.
12054         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
12055
12056 2007-05-18  Bruno Haible  <bruno@clisp.org>
12057
12058         * modules/frexpl-nolibm-tests: New file.
12059
12060         * modules/frexpl-nolibm: New file.
12061         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
12062
12063 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
12064
12065         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
12066         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
12067         GCC 4.2, which otherwise issues a lot of warnings.
12068         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
12069         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
12070         Likewise.
12071         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
12072         * modules/iconv_open (iconv.h): Likewise.
12073         * modules/locale (locale.h): Likewise.
12074         * modules/netinet_in (netinet/in.h): Likewise.
12075         * modules/sys_select (sys_select.h): Likewise.
12076         * modules/sys_socket (sys/socket.h): Likewise.
12077         * modules/sys_stat (sys/stat.h): Likewise.
12078         * modules/sysexits (sysexits.h): Likewise.
12079         * modules/unistd (unistd.h): Likewise.
12080
12081 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12082
12083         * modules/closein-tests (Makefile.am): Distribute
12084         `test-closein.sh'.
12085
12086 2007-05-17  Bruno Haible  <bruno@clisp.org>
12087
12088         * tests/test-printf-posix.output: Renamed from
12089         tests/test-fprintf-posix.out.
12090         * modules/fprintf-posix-tests: Update.
12091         * modules/printf-posix-tests: Update.
12092         * modules/vfprintf-posix-tests: Update.
12093         * modules/vprintf-posix-tests: Update.
12094         * tests/test-fprintf-posix.sh: Update.
12095         * tests/test-printf-posix.sh: Update.
12096         * tests/test-vfprintf-posix.sh: Update.
12097         * tests/test-vprintf-posix.sh: Update.
12098         Reported by Ralf Wildenhues.
12099
12100 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
12101
12102         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
12103         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
12104         GCC 4.2, which otherwise issues a lot of warnings.
12105         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
12106         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
12107         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
12108         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
12109         it should no longer be needed.
12110         * lib/string_.h: Likewise.
12111         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
12112         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
12113         * modules/inttypes (inttypes.h): Likewise.
12114         * modules/math (math.h): Likewise.
12115         * modules/search (search.h): Likewise.
12116         * modules/signal (signal.h): Likewise.
12117         * modules/stdint (stdint.h): Likewise.
12118         * modules/stdio (stdio.h): Likewise.
12119         * modules/stdlib (stdlib.h): Likewise.
12120         * modules/string (string.h): Likewise.
12121         * modules/sys_time (sys/time.h): Likewise.
12122         * modules/time (time.h): Likewise.
12123         * modules/wchar (wchar.h): Likewise.
12124         * modules/wctype (wtype.h): Likewise.
12125
12126 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
12127
12128         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
12129
12130 2007-05-13  Bruno Haible  <bruno@clisp.org>
12131
12132         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
12133         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
12134         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
12135         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
12136         (gl_PREREQ_STRTOK_R): Don't require it here.
12137
12138 2007-05-13  Bruno Haible  <bruno@clisp.org>
12139
12140         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
12141         when used in C++ mode.
12142
12143 2007-05-12  Bruno Haible  <bruno@clisp.org>
12144
12145         * lib/linebuffer.h: Tweak doc.
12146         * lib/linebuffer.c: Likewise.
12147
12148 2007-05-12  James Youngman  <jay@gnu.org>
12149
12150         * lib/linebuffer.c (readlinebuffer_delim): New function,
12151         like readlinebuffer, but use a caller-specified delimiter.
12152         (readlinebuffer): Just call readlinebuffer_delim with '\n'
12153         as the delimiter.
12154         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
12155
12156 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
12157
12158         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
12159         * modules/openat (Files): Remove openat-die.c.
12160         (Depends-on): Add openat-die.
12161         * modules/openat-die: New module.
12162
12163 2007-05-06  Bruno Haible  <bruno@clisp.org>
12164
12165         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
12166         Update with info about Cygwin.
12167         * doc/functions/fprintf.texi: Update.
12168         * doc/functions/printf.texi: Update.
12169         * doc/functions/snprintf.texi: Update.
12170         * doc/functions/sprintf.texi: Update.
12171         * doc/functions/vfprintf.texi: Update.
12172         * doc/functions/vprintf.texi: Update.
12173         * doc/functions/vsnprintf.texi: Update.
12174         * doc/functions/vsprintf.texi: Update.
12175         Reported by Eric Blake.
12176
12177 2007-05-06  Bruno Haible  <bruno@clisp.org>
12178
12179         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
12180         padding ourselves for the floating-point directives.
12181         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
12182         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
12183         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12184         gl_PRINTF_FLAG_ZERO and test its result. Invoke
12185         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
12186         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12187         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
12188         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12189         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12190         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12191         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12192         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12193         * tests/test-snprintf-posix.h (test_function): Also check the width
12194         and some flags in the %f directive.
12195         * tests/test-sprintf-posix.h (test_function): Likewise.
12196         * tests/test-vasnprintf-posix.c (test_function): Likewise.
12197         * tests/test-vasprintf-posix.c (test_function): Likewise.
12198         * doc/functions/fprintf.texi: Update.
12199         * doc/functions/printf.texi: Update.
12200         * doc/functions/snprintf.texi: Update.
12201         * doc/functions/sprintf.texi: Update.
12202         * doc/functions/vfprintf.texi: Update.
12203         * doc/functions/vprintf.texi: Update.
12204         * doc/functions/vsnprintf.texi: Update.
12205         * doc/functions/vsprintf.texi: Update.
12206
12207 2007-05-06  Bruno Haible  <bruno@clisp.org>
12208
12209         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
12210         pass the ' flag character to sprintf or snprintf.
12211         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
12212         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
12213         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12214         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
12215         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
12216         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12217         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
12218         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12219         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12220         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12221         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12222         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12223         * tests/test-snprintf-posix.h (test_function): Also check the grouping
12224         flag.
12225         * tests/test-sprintf-posix.h (test_function): Likewise.
12226         * tests/test-vasnprintf-posix.c (test_function): Likewise.
12227         * tests/test-vasprintf-posix.c (test_function): Likewise.
12228         * doc/functions/fprintf.texi: Update.
12229         * doc/functions/printf.texi: Update.
12230         * doc/functions/snprintf.texi: Update.
12231         * doc/functions/sprintf.texi: Update.
12232         * doc/functions/vfprintf.texi: Update.
12233         * doc/functions/vprintf.texi: Update.
12234         * doc/functions/vsnprintf.texi: Update.
12235         * doc/functions/vsprintf.texi: Update.
12236
12237 2007-05-01  Bruno Haible  <bruno@clisp.org>
12238
12239         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
12240
12241 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
12242
12243         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
12244         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
12245
12246 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
12247
12248         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
12249         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
12250         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
12251
12252 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
12253
12254         * lib/argp-help.c (struct hol_entry): New member `ord'.
12255         (HOL_ENTRY_PTRCMP): Use ord for comparison
12256         (hol_sort): Initialize ord.
12257
12258 2007-05-01  Bruno Haible  <bruno@clisp.org>
12259
12260         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
12261         Reported by Eric Blake.
12262         * doc/gnulib.texi (Function Substitutes): Update.
12263
12264 2007-05-01  Bruno Haible  <bruno@clisp.org>
12265
12266         * doc/functions.texi: Remove file, now redundant through
12267         doc/functions/*.texi.
12268
12269 2007-05-01  Bruno Haible  <bruno@clisp.org>
12270
12271         * modules/argp (Depends-on): Add sleep.
12272
12273 2007-05-01  Bruno Haible  <bruno@clisp.org>
12274
12275         * modules/sleep-tests: New file.
12276         * tests/test-sleep.c: New file.
12277
12278         * modules/sleep: New file.
12279         * lib/sleep.c: New file.
12280         * m4/sleep.m4: New file.
12281         * lib/unistd_.h (sleep): New declaration.
12282         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
12283         HAVE_SLEEP.
12284         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
12285         * doc/functions/sleep.texi: Document the sleep module.
12286
12287 2007-05-01  Bruno Haible  <bruno@clisp.org>
12288
12289         * lib/sigprocmask.h: Remove file.
12290         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
12291         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
12292         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
12293         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
12294         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
12295         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
12296         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
12297         HAVE_SIGSET_T as a shell variable.
12298         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
12299         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
12300         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
12301         (Depends-on): Add signal. Remove verify.
12302         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
12303         (Include): Mention <signal.h> instead of sigprocmask.h.
12304         * NEWS: Mention the change.
12305         * lib/fatal-signal.c: Don't include sigprocmask.h.
12306
12307 2007-05-01  Bruno Haible  <bruno@clisp.org>
12308
12309         * modules/signal: New file.
12310         * lib/signal_.h: New file.
12311         * m4/signal_h.m4: New file.
12312
12313 2007-05-01  Bruno Haible  <bruno@clisp.org>
12314
12315         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
12316         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
12317         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
12318         HAVE_WCTYPE_CTMP_BUG into wctype.h.
12319
12320 2007-05-01  Bruno Haible  <bruno@clisp.org>
12321
12322         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
12323         configure time.
12324         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
12325         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
12326         * modules/sys_stat (Makefile.am): Substitute their values into
12327         sys/stat.h.
12328
12329 2007-05-01  Bruno Haible  <bruno@clisp.org>
12330
12331         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
12332         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
12333         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
12334
12335 2007-05-01  Bruno Haible  <bruno@clisp.org>
12336
12337         * doc/header/assert.texi: Undo last change: don't mention the gnulib
12338         'assert' module here.
12339
12340 2007-05-01  Bruno Haible  <bruno@clisp.org>
12341
12342         * doc/functions/*.texi: New files.
12343         * doc/functions/google-ranking.txt: New file.
12344         * doc/gnulib.texi (Function Substitutes): New chapter.
12345         (ctime, inet_ntoa): Remove sections.
12346         * doc/ctime.texi: Remove file.
12347         * doc/inet_ntoa.texi: Remove file.
12348         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
12349         dependencies.
12350         (%.info): New rule, specifying a --reference-limit.
12351
12352 2007-05-01  Bruno Haible  <bruno@clisp.org>
12353
12354         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
12355
12356 2007-05-01  Bruno Haible  <bruno@clisp.org>
12357
12358         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
12359         the portability of 'mkdir' to mingw systems.
12360
12361 2007-05-01  Bruno Haible  <bruno@clisp.org>
12362
12363         * doc/headers/google-ranking.txt: New file.
12364
12365 2007-04-30  Eric Blake  <ebb9@byu.net>
12366
12367         Prefer fseeko to fseek.
12368         * modules/getpass (Depends-on): Add fseeko.
12369         * lib/getpass.c (getpass): Use fseeko, not fseek.
12370
12371 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
12372
12373         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
12374         assumes the sorting is stable, while most qsort implementations
12375         are not.  Use argument addresses to ensure they never compare as
12376         equal.
12377
12378         * tests/test-argp-2.sh (usage-indent test): Fix output
12379         (func_compare): Restore diff options
12380         * tests/test-argp.c: Restore #include "progname.h"
12381
12382 2007-04-29  Bruno Haible  <bruno@clisp.org>
12383
12384         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
12385         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12386         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
12387         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12388         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
12389         (configure.ac): Define CHECK_SNPRINTF_POSIX.
12390         (TESTS, check_PROGRAMS): Add test-snprintf.
12391         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
12392         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
12393         (TESTS, check_PROGRAMS): Add test-vsnprintf.
12394         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
12395         assertions that fail on HP-UX, OSF/1, or IRIX.
12396         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
12397
12398 2007-04-29  Bruno Haible  <bruno@clisp.org>
12399
12400         * MODULES.html.sh (posix_functions): Remove 'contents'.
12401
12402 2007-04-29  Karl Berry  <karl@gnu.org>
12403
12404         * config/srclist.txt (gendocs_template_min): new entry.
12405
12406 2007-04-29  Bruno Haible  <bruno@clisp.org>
12407
12408         Work around fpurge bug on BSD systems.
12409         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
12410         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
12411         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
12412         fpurge to rpl_fpurge if the system already has this function.
12413         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
12414         the case where the system already has this function. Correct invariants
12415         on BSD systems.
12416         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
12417         BSD systems.
12418
12419 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
12420
12421         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
12422         proposed by Sven Verdoolaege.
12423
12424         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
12425         options.
12426         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
12427         (usage and help tests): Update
12428
12429 2007-04-29  Bruno Haible  <bruno@clisp.org>
12430
12431         * tests/test-fflush.c (main): Use a file of size 17, not 10.
12432         Print more information in case of failure. Disable a test on BeOS.
12433
12434 2007-04-29  Bruno Haible  <bruno@clisp.org>
12435
12436         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
12437         This helps debugging on systems on which no gdb is available.
12438
12439 2007-04-29  Bruno Haible  <bruno@clisp.org>
12440
12441         * lib/freading.h: Improve comments.
12442         * lib/fwriting.h: Likewise.
12443         * tests/test-freading.c (main): Don't check freading immediately after
12444         repositioning. Needed for glibc.
12445
12446 2007-04-29  Bruno Haible  <bruno@clisp.org>
12447
12448         * lib/freading.c (freading): Trivial simplification.
12449
12450 2007-04-28  Bruno Haible  <bruno@clisp.org>
12451
12452         * tests/test-fwriting.c (main): Also test the interaction between
12453         fflush and fwriting.
12454         * modules/fwriting-tests (Depends-on): Add fflush.
12455
12456         * tests/test-freading.c (main): Also test the interaction between
12457         fflush and freading.
12458         * modules/freading-tests (Depends-on): Add fflush.
12459
12460 2007-04-28  Bruno Haible  <bruno@clisp.org>
12461
12462         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
12463         fseeko and ftello.
12464         Suggested by Eric Blake.
12465
12466 2007-04-28  Jim Meyering  <jim@meyering.net>
12467
12468         Avoid false-negative in gl_STDINT_H's C99 conformance test.
12469         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
12470         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
12471
12472 2007-04-27  Eric Blake  <ebb9@byu.net>
12473
12474         * doc/headers/assert.texi (assert.h): Document assert module use.
12475
12476 2007-04-27  Bruno Haible  <bruno@clisp.org>
12477
12478         * doc/headers/*.texi: New files.
12479         * doc/gnulib.texi (Header File Substitutes): New chapter.
12480         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
12481         dependencies.
12482         (standards.info ,standards.html, standards.dvi): Update dependencies.
12483         (mostlyclean, clean): New targets.
12484
12485 2007-04-27  Bruno Haible  <bruno@clisp.org>
12486
12487         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
12488         * modules/sysexits (Files, Makefile.am): Update.
12489
12490         * lib/sys_socket_.h: Renamed from lib/socket_.h.
12491         * modules/sys_socket (Files, Makefile.am): Update.
12492
12493         * lib/sys_stat_.h: Renamed from lib/stat_.h.
12494         * modules/sys_stat (Files, Makefile.am): Update.
12495
12496 2007-04-27  Eric Blake  <ebb9@byu.net>
12497
12498         * lib/freading.h: Improve comments.
12499         * lib/fwriting.h: Likewise.
12500         * lib/fflush.c: Likewise.
12501
12502         Fix closein for mingw.
12503         * modules/closein-tests: Add tests for closein.
12504         * tests/test-closein.c: New file.
12505         * tests/test-closein.sh: Likewise.
12506         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
12507         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
12508
12509 2007-04-27  Bruno Haible  <bruno@clisp.org>
12510
12511         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
12512         version is < 6.
12513         * lib/math_.h [__DECC]: Likewise.
12514         * lib/stdio_.h [__DECC]: Likewise.
12515         * lib/stdlib_.h [__DECC]: Likewise.
12516         * lib/string_.h [__DECC]: Likewise.
12517         * lib/time_.h [__DECC]: Likewise.
12518         * lib/wchar_.h [__DECC]: Likewise.
12519         * lib/wctype_.h [__DECC]: Likewise.
12520
12521 2007-04-27  Bruno Haible  <bruno@clisp.org>
12522
12523         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
12524
12525 2007-04-27  Bruno Haible  <bruno@clisp.org>
12526
12527         * lib/fflush.c: Add comments.
12528         * modules/fpurge-tests (Depends-on): Add fflush.
12529         * modules/freadable-tests (Depends-on): Likewise.
12530         * modules/fwritable-tests (Depends-on): Likewise.
12531
12532 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
12533
12534         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
12535         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
12536         Report by Bruno Haible <bruno@clisp.org>.
12537
12538 2007-04-26  Eric Blake  <ebb9@byu.net>
12539
12540         Fix fflush on mingw.
12541         * modules/fflush (Depends-on): Add freading.
12542         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
12543         but unread data.
12544
12545 2007-04-26  Eric Blake  <ebb9@byu.net>
12546         and Bruno Haible  <bruno@clisp.org>
12547
12548         Implement freading and fwriting.
12549         * lib/freading.c: New file.
12550         * lib/freading.h: Likewise.
12551         * m4/freading.m4: Likewise.
12552         * modules/freading: Likewise.
12553         * modules/freading-tests: Likewise.
12554         * tests/test-freading.c: Likewise.
12555         * lib/fwriting.c: New file.
12556         * lib/fwriting.h: Likewise.
12557         * m4/fwriting.m4: Likewise.
12558         * modules/fwriting: Likewise.
12559         * modules/fwriting-tests: Likewise.
12560         * tests/test-fwriting.c: Likewise.
12561         * MODULES.html.sh (File stream based Input/Output): Mention them.
12562
12563 2007-04-26  Bruno Haible  <bruno@clisp.org>
12564
12565         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
12566         'long' when we assume it.
12567         Suggested by Eric Blake.
12568
12569 2007-04-26  Bruno Haible  <bruno@clisp.org>
12570
12571         Ensure fseeko, ftello are declared on glibc systems.
12572         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
12573         * modules/fseeko (configure.ac-early): Likewise.
12574         * modules/ftello (configure.ac-early): Likewise.
12575         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
12576         AC_FUNC_FSEEKO for this.
12577         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
12578         (gl_CHECK_FSEEKO): Remove macro.
12579
12580 2007-04-26  Bruno Haible  <bruno@clisp.org>
12581
12582         * tests/test-fflush.c (main): Also check the ftell result after
12583         fflush and fseek/fseeko.
12584         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
12585         file descriptor position cache in the stream.
12586         * lib/fseeko.c (rpl_fseeko): Likewise.
12587
12588 2007-04-26  Bruno Haible  <bruno@clisp.org>
12589
12590         * modules/fflush-tests (Depends-on): Add fseeko.
12591
12592 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
12593             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12594
12595         * lib/argz_.h: ensure error_t definition is obtained in same
12596         mechanism system argz.h would have.
12597         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
12598         argz facilities are known bad.  Err on the side of caution if
12599         cross-compiling.
12600
12601 2007-04-25  Eric Blake  <ebb9@byu.net>
12602
12603         * lib/fpurge.c (includes): Use stdlib.h for free.
12604         * tests/test-fflush.c (main): Also test fflush-fseeko.
12605
12606 2007-04-25  Bruno Haible  <bruno@clisp.org>
12607
12608         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
12609         * lib/fseeko.c: New file.
12610         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
12611         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
12612         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
12613         gl_FUNC_FSEEKO.
12614         (gl_FUNC_FSEEKO): Invoke it.
12615         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
12616         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
12617         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
12618
12619 2007-04-25  Bruno Haible  <bruno@clisp.org>
12620
12621         * modules/fflush (Depends-on): Add ftello.
12622
12623 2007-04-25  Bruno Haible  <bruno@clisp.org>
12624
12625         * modules/ftello-tests: New file.
12626         * tests/test-ftello.c: New file.
12627
12628         * modules/ftello: New file.
12629         * m4/ftello.m4: New file.
12630         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
12631         HAVE_FTELLO.
12632         * lib/stdio_.h (ftello): New declaration.
12633         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
12634         HAVE_FTELLO.
12635
12636 2007-04-25  Bruno Haible  <bruno@clisp.org>
12637
12638         * modules/fseeko-tests: New file.
12639         * tests/test-fseeko.c: New file.
12640
12641         * modules/fseeko: New file.
12642         * m4/fseeko.m4: New file.
12643         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
12644         HAVE_FSEEKO.
12645         * lib/stdio_.h (fseeko): New declaration.
12646         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
12647         HAVE_FSEEKO.
12648
12649 2007-04-25  Bruno Haible  <bruno@clisp.org>
12650
12651         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
12652
12653 2007-04-25  Bruno Haible  <bruno@clisp.org>
12654
12655         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
12656         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
12657         * tests/test-unistd.c: Likewise.
12658         * tests/test-fcntl.c: Likewise.
12659
12660 2007-04-23  Eric Blake  <ebb9@byu.net>
12661
12662         * lib/fflush.c: Fix missing include.
12663         Reported by Bruno Haible.
12664
12665 2007-04-23  Bruno Haible  <bruno@clisp.org>
12666
12667         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
12668         Reported by Eric Blake.
12669
12670 2007-04-23  Bruno Haible  <bruno@clisp.org>
12671
12672         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
12673
12674 2007-04-23  Bruno Haible  <bruno@clisp.org>
12675
12676         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
12677
12678 2007-04-23  Bruno Haible  <bruno@clisp.org>
12679
12680         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
12681         Needed on HP-UX 11.
12682
12683 2007-04-16  Eric Blake  <ebb9@byu.net>
12684
12685         Make fflush rely on fpurge.
12686         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
12687         open coding all variants.
12688         * modules/fflush (Depends-on): Add fpurge and unistd.
12689         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
12690         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
12691
12692         Fix --with-tests compilation on cygwin.
12693         * modules/argmatch-tests (Makefile.am): List gnulib library first
12694         in LDADD.
12695         * modules/argp-tests (Makefile.am): Likewise.
12696         * modules/array-list-tests (Makefile.am): Likewise.
12697         * modules/array-oset-tests (Makefile.am): Likewise.
12698         * modules/avltree-list-tests (Makefile.am): Likewise.
12699         * modules/avltree-oset-tests (Makefile.am): Likewise.
12700         * modules/avltreehash-list-tests (Makefile.am): Likewise.
12701         * modules/carray-list-tests (Makefile.am): Likewise.
12702         * modules/dirname-tests (Makefile.am): Likewise.
12703         * modules/frexp-tests (Makefile.am): Likewise.
12704         * modules/isnanl-tests (Makefile.am): Likewise.
12705         * modules/linked-list-tests (Makefile.am): Likewise.
12706         * modules/linkedhash-list-tests (Makefile.am): Likewise.
12707         * modules/lock-tests (Makefile.am): Likewise.
12708         * modules/rbtree-list-tests (Makefile.am): Likewise.
12709         * modules/rbtree-oset-tests (Makefile.am): Likewise.
12710         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
12711         * modules/tls-tests (Makefile.am): Likewise.
12712         * modules/tsearch-tests (Makefile.am): Likewise.
12713         * modules/xvasprintf-tests (Makefile.am): Likewise.
12714
12715         Fix fpurge for cygwin.
12716         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
12717         value.
12718         * modules/fpurge-tests (Depends-on): Clean up trash.
12719
12720 2007-04-16  Simon Josefsson  <simon@josefsson.org>
12721
12722         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
12723
12724         * m4/autobuild.m4: Re-indent.
12725
12726 2007-04-13  Bruno Haible  <bruno@clisp.org>
12727
12728         * modules/fpurge-tests: New file.
12729         * tests/test-fpurge.c: New file.
12730
12731         * modules/fpurge: New file.
12732         * lib/fpurge.h: New file.
12733         * lib/fpurge.c: New file.
12734         * m4/fpurge.m4: New file.
12735
12736 2007-04-13  Bruno Haible  <bruno@clisp.org>
12737
12738         * modules/fbufmode-tests: New file.
12739         * tests/test-fbufmode.c: New file.
12740
12741         * modules/fbufmode: New file.
12742         * lib/fbufmode.h: New file.
12743         * lib/fbufmode.c: New file.
12744         * m4/fbufmode.m4: New file.
12745
12746 2007-04-13  Bruno Haible  <bruno@clisp.org>
12747
12748         * modules/fwritable-tests: New file.
12749         * tests/test-fwritable.c: New file.
12750
12751         * modules/fwritable: New file.
12752         * lib/fwritable.h: New file.
12753         * lib/fwritable.c: New file.
12754         * m4/fwritable.m4: New file.
12755
12756 2007-04-13  Bruno Haible  <bruno@clisp.org>
12757
12758         * modules/freadable-tests: New file.
12759         * tests/test-freadable.c: New file.
12760
12761         * modules/freadable: New file.
12762         * lib/freadable.h: New file.
12763         * lib/freadable.c: New file.
12764         * m4/freadable.m4: New file.
12765
12766 2007-04-13  Bruno Haible  <bruno@clisp.org>
12767
12768         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
12769         MOSTLYCLEANFILES.
12770
12771 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
12772
12773         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
12774         gzip bootstrap.conf to avoid dragging in i18n machinery.
12775         (gnulib_tool_option): Use it.
12776
12777 2007-04-13  Bruno Haible  <bruno@clisp.org>
12778
12779         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
12780         %F directives.
12781         * tests/test-vasprintf-posix.c (test_function): Likewise.
12782         * tests/test-snprintf-posix.h (test_function): Likewise.
12783         * tests/test-sprintf-posix.h (test_function): Likewise.
12784         * tests/test-fprintf-posix.h (test_function): Likewise.
12785         * tests/test-printf-posix.h (test_function): Likewise.
12786         * tests/test-fprintf-posix.out: Likewise.
12787
12788 2007-04-13  Bruno Haible  <bruno@clisp.org>
12789
12790         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
12791         * modules/tls-tests (configure.ac): Likewise.
12792         Reported by Arto C. Nirkko <anirkko@insel.ch>.
12793
12794 2007-04-13  Bruno Haible  <bruno@clisp.org>
12795
12796         * lib/tls.c (glthread_tls_get): Fix return type.
12797         Patch by Arto C. Nirkko <anirkko@insel.ch>.
12798
12799 2007-04-12  Eric Blake  <ebb9@byu.net>
12800
12801         * modules/gettime (Depends-on): Remove gettime.
12802         Reported by Dmitry V. Levin.
12803
12804 2007-04-12  Bruno Haible  <bruno@clisp.org>
12805
12806         * modules/fflush (Include): Mention <stdio.h>.
12807         * modules/strtoimax (Include): Mention <inttypes.h>.
12808         * modules/strtoumax (Include): Likewise.
12809
12810 2007-04-12  Eric Blake  <ebb9@byu.net>
12811
12812         * .cvsignore: New file.
12813         * .gitignore: Likewise.
12814
12815 2007-04-12  Bruno Haible  <bruno@clisp.org>
12816
12817         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
12818         not before, since $(LDADD) often contains libgnu.a.
12819         * modules/striconv-tests (test_striconv_LDADD): Likewise.
12820         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
12821         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
12822         Needed on Cygwin.
12823
12824 2007-04-12  Eric Blake  <ebb9@byu.net>
12825
12826         Work around glibc's failure to flush stdin on fclose.
12827         * lib/closein.c (close_stdin): Flush stdin before closing.
12828
12829         Work around glibc's failure to reset seekable stdin on exit.
12830         * modules/closein: New module.
12831         * lib/closein.c: New file.
12832         * lib/closein.h: Likewise.
12833         * m4/closein.m4: Likewise.
12834         * MODULES.html.sh (File stream based Input/Output): Document it.
12835
12836 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12837
12838         * gnulib-tool: Rename generated 'autobuild' script to
12839         'do-autobuild' in --create-megatestdir output.
12840
12841         * doc/gnulib.texi (Build robot for gnulib): Fix.
12842
12843 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12844
12845         * modules/sysexits (Depends-on): Add absolute-header.
12846
12847 2007-04-12  Eric Blake  <ebb9@byu.net>
12848
12849         No need to preserve errno on success.
12850         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
12851         Reported by Bruno Haible.
12852
12853 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12854
12855         * MODULES.html.sh (Support for maintaining and releasing
12856         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
12857
12858 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12859
12860         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
12861
12862 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12863
12864         * modules/autobuild: New module.
12865
12866         * m4/autobuild.m4: New file.
12867
12868 2007-04-11  Bruno Haible  <bruno@clisp.org>
12869
12870         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
12871         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
12872         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
12873         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
12874         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12875         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12876         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12877         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12878         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12879         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12880         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
12881         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12882         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12883         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
12884         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12885         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12886         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
12887         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12888         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12889         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
12890         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12891         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12892         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
12893         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12894         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12895         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
12896         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12897         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12898         Reported by Eric Blake.
12899
12900 2007-04-11  Bruno Haible  <bruno@clisp.org>
12901
12902         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
12903
12904 2007-04-10  Bruno Haible  <bruno@clisp.org>
12905
12906         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
12907         for NaN and Infinity. Needed on FreeBSD 6.1.
12908         * tests/test-vasnprintf-posix.c (test_function): Undo last change
12909         regarding results for "%010a" of Infinity and NaN.
12910         * tests/test-vasprintf-posix.c (test_function): Likewise.
12911         * tests/test-snprintf-posix.h (test_function): Likewise.
12912         * tests/test-sprintf-posix.h (test_function): Likewise.
12913         * tests/test-fprintf-posix.h (test_function): Likewise.
12914         * tests/test-printf-posix.h (test_function): Likewise.
12915         * tests/test-fprintf-posix.out: Likewise.
12916
12917 2007-04-10  Bruno Haible  <bruno@clisp.org>
12918
12919         * modules/locale-tests: New file.
12920         * tests/test-locale.c: New file.
12921
12922         * modules/locale: New file.
12923         * lib/locale_.h: New file.
12924         * m4/locale_h.m4: New file.
12925
12926 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
12927             Bruno Haible  <bruno@clisp.org>
12928
12929         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
12930         be determined, test for availability of the copysignf, copysign,
12931         copysignl functions.
12932         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
12933         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
12934         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
12935
12936 2007-04-09  Eric Blake  <ebb9@byu.net>
12937
12938         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
12939         * modules/stdio (Makefile.am): Support fflush.
12940         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
12941         * modules/fflush: New file.
12942         * lib/fflush.c: Likewise.
12943         * m4/fflush.m4: Likewise.
12944         * modules/fflush-tests: New test.
12945         * tests/test-fflush.c: Likewise.
12946         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
12947
12948 2007-04-06  Bruno Haible  <bruno@clisp.org>
12949
12950         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
12951         (VASNPRINTF): Use signbit for faster determination whether to print a
12952         minus sign.
12953         * modules/vasnprintf (Files): Remove lib/float+.h.
12954         * modules/fprintf-posix (Depends-on): Add signbit.
12955         * modules/snprintf-posix (Depends-on): Likewise.
12956         * modules/sprintf-posix (Depends-on): Likewise.
12957         * modules/vasnprintf-posix (Depends-on): Likewise.
12958         * modules/vasprintf-posix (Depends-on): Likewise.
12959         * modules/vfprintf-posix (Depends-on): Likewise.
12960         * modules/vsnprintf-posix (Depends-on): Likewise.
12961         * modules/vsprintf-posix (Depends-on): Likewise.
12962
12963 2007-04-06  Bruno Haible  <bruno@clisp.org>
12964
12965         * tests/test-frexp.c (main): Test also the sign bit of zero results.
12966         * tests/test-frexpl.c (main): Likewise.
12967         * tests/test-ldexpl.c (main): Likewise.
12968         * modules/frexp-tests (Depends-on): Add signbit.
12969         * modules/frexpl-tests (Depdends-on): Likewise.
12970         * modules/ldexpl-tests (Depdends-on): Likewise.
12971
12972 2007-04-06  Bruno Haible  <bruno@clisp.org>
12973
12974         * modules/signbit-tests: New file.
12975         * tests/test-signbit.c: New file.
12976
12977         * modules/signbit: New file.
12978         * lib/signbitf.c: New file.
12979         * lib/signbitd.c: New file.
12980         * lib/signbitl.c: New file.
12981         * m4/signbit.m4: New file.
12982         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
12983         (signbit): New macro.
12984         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
12985         REPLACE_SIGNBIT.
12986         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
12987         REPLACE_FREXPL into math.h.
12988
12989 2007-04-06  Bruno Haible  <bruno@clisp.org>
12990
12991         * modules/isnanf-nolibm-tests: New file.
12992         * tests/test-isnanf.c: New file.
12993
12994         * modules/isnanf-nolibm: New file.
12995         * lib/isnanf.h: New file.
12996         * lib/isnanf.c: New file.
12997         * lib/isnan.c: Consider the USE_FLOAT macro.
12998         * m4/isnanf.m4: New file.
12999
13000 2007-04-06  Bruno Haible  <bruno@clisp.org>
13001
13002         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
13003         (Link): New section.
13004
13005         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
13006
13007 2007-04-06  Bruno Haible  <bruno@clisp.org>
13008
13009         Assume the 'long double' type.
13010         * m4/longdouble.m4: Remove file.
13011         * config/srclist.txt: Don't mention longdouble.m4.
13012         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
13013         * lib/float+.h: Likewise.
13014         * lib/frexp.c: Likewise.
13015         * lib/printf-args.h: Likewise.
13016         * lib/printf-args.c: Likewise.
13017         * lib/printf-frexp.c: Likewise.
13018         * lib/printf-parse.c: Likewise.
13019         * lib/vasnprintf.c: Likewise.
13020         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
13021         * m4/intl.m4: Likewise.
13022         * m4/isnanl.m4: Likewise.
13023         * m4/printf.m4: Likewise.
13024         * m4/printf-frexpl.m4: Likewise.
13025         * m4/vasnprintf.m4: Likewise.
13026         * modules/allocsa (Files): Remove m4/longdouble.m4.
13027         * modules/gettext (Files): Likewise.
13028         * modules/relocatable-prog-wrapper (Files): Likewise.
13029         * modules/vasnprintf (Files): Likewise.
13030         * modules/isnanl (Files): Likewise.
13031         (Include): Simplify.
13032         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
13033         (Include): Simplify.
13034         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
13035         (Include): Simplify.
13036         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
13037         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13038         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
13039         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13040         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
13041         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13042         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
13043         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13044         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
13045         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13046         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
13047         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13048         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
13049         * tests/test-isnanl.c: Likewise.
13050         * tests/test-snprintf-posix.h: Likewise.
13051         * tests/test-sprintf-posix.h: Likewise.
13052         * tests/test-vasnprintf-posix.c: Likewise.
13053         * tests/test-vasnprintf-posix2.c: Likewise.
13054         * tests/test-vasprintf-posix.c: Likewise.
13055
13056 2007-04-06  Bruno Haible  <bruno@clisp.org>
13057
13058         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
13059         * lib/math_.h [__DECC]: Include the overridden include file through
13060         #include_next, outside the double-inclusion guard.
13061         * lib/stdio_.h [__DECC]: Likewise.
13062         * lib/stdlib_.h [__DECC]: Likewise.
13063         * lib/string_.h [__DECC]: Likewise.
13064         * lib/time_.h [__DECC]: Likewise.
13065         * lib/wchar_.h [__DECC]: Likewise.
13066         * lib/wctype_.h [__DECC]: Likewise.
13067         * lib/inttypes_.h [__DECC]: Likewise.
13068         Reported by Albert Chin <china@thewrittenword.com> in
13069         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
13070
13071 2007-04-04  Eric Blake  <ebb9@byu.net>
13072
13073         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
13074         1.5.x.
13075
13076 2007-04-04  Bruno Haible  <bruno@clisp.org>
13077
13078         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
13079         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
13080
13081 2007-04-04  Bruno Haible  <bruno@clisp.org>
13082
13083         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
13084         results for "%010a" of Infinity and NaN.
13085         * tests/test-vasprintf-posix.c (test_function): Likewise.
13086         * tests/test-snprintf-posix.h (test_function): Likewise.
13087         * tests/test-sprintf-posix.h (test_function): Likewise.
13088         * tests/test-fprintf-posix.h (test_function): Remove these tests.
13089         * tests/test-printf-posix.h (test_function): Likewise.
13090         * tests/test-fprintf-posix.out: Update.
13091         Needed for FreeBSD 6.1.
13092
13093 2007-04-04  Bruno Haible  <bruno@clisp.org>
13094
13095         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
13096         directly used by the gnulib modules nor by gnulib-tool.
13097
13098 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
13099
13100         * DEPENDENCIES: Give overall description of version dependency
13101         desirability.  Use more-typical names for apps.
13102         Add shell, coreutils, diffutils, grep, tar, gzip.
13103
13104 2007-04-04  Simon Josefsson  <simon@josefsson.org>
13105
13106         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
13107
13108 2007-04-04  Karl Berry  <karl@gnu.org>
13109
13110         * MODULES.html.sh (func_module): missing '.
13111
13112 2007-04-03  Bruno Haible  <bruno@clisp.org>
13113
13114         * modules/argmatch-tests (Makefile.am): New variable
13115         test_argmatch_LDADD.
13116         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
13117         * modules/array-list-tests (Makefile.am): New variable
13118         test_array_list_LDADD.
13119         * modules/array-oset-tests (Makefile.am): New variable
13120         test_array_oset_LDADD.
13121         * modules/avltree-list-tests (Makefile.am): New variable
13122         test_avltree_list_LDADD.
13123         * modules/avltree-oset-tests (Makefile.am): New variable
13124         test_avltree_oset_LDADD.
13125         * modules/avltreehash-list-tests (Makefile.am): New variable
13126         test_avltreehash_list_LDADD.
13127         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
13128         test_canonicalize_lgpl_LDADD.
13129         * modules/carray-list-tests (Makefile.am): New variable
13130         test_carray_list_LDADD.
13131         * modules/dirname-tests (Makefile.am): New variable
13132         test_dirname_LDADD.
13133         * modules/linked-list-tests (Makefile.am): New variable
13134         test_linked_list_LDADD.
13135         * modules/linkedhash-list-tests (Makefile.am): New variable
13136         test_linkedhash_list_LDADD.
13137         * modules/rbtree-list-tests (Makefile.am): New variable
13138         test_rbtree_list_LDADD.
13139         * modules/rbtree-oset-tests (Makefile.am): New variable
13140         test_rbtree_oset_LDADD.
13141         * modules/rbtreehash-list-tests (Makefile.am): New variable
13142         test_rbtreehash_list_LDADD.
13143         * modules/xvasprintf-tests (Makefile.am): New variable
13144         test_xvasprintf_LDADD.
13145         Reported by Eric Blake.
13146
13147 2007-04-03  Eric Blake  <ebb9@byu.net>
13148
13149         * DEPENDENCIES: Weaken m4 requirements.
13150
13151 2007-04-03  Bruno Haible  <bruno@clisp.org>
13152
13153         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
13154         * modules/isnanl-tests (configure.ac): Likewise.
13155
13156 2007-04-03  Ben Pfaff  <blp@gnu.org>
13157
13158         * modules/iconv_open: Add $(srcdir)/ to source directory
13159         references in Makefile fragments that call gperf, to fix VPATH
13160         builds.
13161
13162 2007-04-03  Bruno Haible  <bruno@clisp.org>
13163
13164         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
13165         * lib/ldexpl.c: Undo last change.
13166
13167 2007-04-03  Bruno Haible  <bruno@clisp.org>
13168
13169         * modules/printf-frexpl (Depends-on): Undo last change.
13170         (Files): Add m4/ldexpl.m4.
13171
13172 2007-04-03  Bruno Haible  <bruno@clisp.org>
13173
13174         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
13175         * modules/isnanl (Link): New section.
13176
13177         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
13178         * modules/frexp (Link): New section.
13179
13180         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
13181         * modules/frexpl (Link): New section.
13182
13183         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
13184         * modules/ldexpl (Link): New section.
13185
13186 2007-04-03  Bruno Haible  <bruno@clisp.org>
13187
13188         * modules/TEMPLATE-EXTENDED: New file.
13189         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
13190
13191 2007-04-03  Bruno Haible  <bruno@clisp.org>
13192
13193         * DEPENDENCIES: New file.
13194         Suggested by Simon Josefsson.
13195
13196 2007-04-03  Bruno Haible  <bruno@clisp.org>
13197
13198         * doc/gnulib.texi: Escape @.
13199
13200 2007-04-03  James Youngman  <jay@gnu.org>
13201         and Paul Eggert  <eggert@cs.ucla.edu>
13202
13203         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
13204         birthtime on all systems that have birthtime, not just those which
13205         use st_birthtimensec rather than st_birthtim.  Putting zero in
13206         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
13207         that the birth time is not available for files on an NFS mount.
13208
13209 2007-04-03  Simon Josefsson  <simon@josefsson.org>
13210
13211         * modules/memxor: Move back from crypto/, suggested by Bruno.
13212         * modules/crypto/hmac-sha1: Fix memxor dependency.
13213
13214         * modules/crypto/gc: Moved from ../.
13215
13216 2007-04-02  Eric Blake  <ebb9@byu.net>
13217
13218         * lib/ldexpl.c (includes): Avoid libm.
13219
13220         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
13221
13222 2007-04-02  Bruno Haible  <bruno@clisp.org>
13223
13224         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
13225         on IRIX.
13226
13227 2007-04-02  Bruno Haible  <bruno@clisp.org>
13228
13229         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
13230         x86 or x86_64 platforms running MacOS X.
13231         Reported by Ryan Schmidt <@ryandesign.com>.
13232
13233 2007-04-02  Bruno Haible  <bruno@clisp.org>
13234
13235         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
13236         i386.
13237
13238 2007-04-01  Simon Josefsson  <simon@josefsson.org>
13239
13240         * modules/crypto/arcfour: Moved from ../.
13241         * modules/crypto/arcfour-tests: Moved from ../.
13242         * modules/crypto/arctwo: Moved from ../.
13243         * modules/crypto/arctwo-tests: Moved from ../.
13244         * modules/crypto/des: Moved from ../.
13245         * modules/crypto/des-tests: Moved from ../.
13246         * modules/crypto/gc-arcfour: Moved from ../.
13247         * modules/crypto/gc-arcfour-tests: Moved from ../.
13248         * modules/crypto/gc-arctwo: Moved from ../.
13249         * modules/crypto/gc-arctwo-tests: Moved from ../.
13250         * modules/crypto/gc-des: Moved from ../.
13251         * modules/crypto/gc-des-tests: Moved from ../.
13252         * modules/crypto/gc-hmac-md5: Moved from ../.
13253         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
13254         * modules/crypto/gc-hmac-sha1: Moved from ../.
13255         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
13256         * modules/crypto/gc-md2: Moved from ../.
13257         * modules/crypto/gc-md2-tests: Moved from ../.
13258         * modules/crypto/gc-md4: Moved from ../.
13259         * modules/crypto/gc-md4-tests: Moved from ../.
13260         * modules/crypto/gc-md5: Moved from ../.
13261         * modules/crypto/gc-md5-tests: Moved from ../.
13262         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
13263         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
13264         * modules/crypto/gc-random: Moved from ../.
13265         * modules/crypto/gc-rijndael: Moved from ../.
13266         * modules/crypto/gc-rijndael-tests: Moved from ../.
13267         * modules/crypto/gc-sha1: Moved from ../.
13268         * modules/crypto/gc-sha1-tests: Moved from ../.
13269         * modules/crypto/gc-tests: Moved from ../.
13270         * modules/crypto/hmac-md5: Moved from ../.
13271         * modules/crypto/hmac-md5-tests: Moved from ../.
13272         * modules/crypto/hmac-sha1: Moved from ../.
13273         * modules/crypto/hmac-sha1-tests: Moved from ../.
13274         * modules/crypto/md2: Moved from ../.
13275         * modules/crypto/md2-tests: Moved from ../.
13276         * modules/crypto/md4: Moved from ../.
13277         * modules/crypto/md4-tests: Moved from ../.
13278         * modules/crypto/md5: Moved from ../.
13279         * modules/crypto/md5-tests: Moved from ../.
13280         * modules/crypto/memxor: Moved from ../.
13281         * modules/crypto/rijndael: Moved from ../.
13282         * modules/crypto/rijndael-tests: Moved from ../.
13283         * modules/crypto/sha1: Moved from ../.
13284
13285 2007-03-30  James Youngman  <jay@gnu.org>
13286
13287         * tests/test-stat-time.c (prepare_test): use chmod() rather than
13288         rename() to change the ctime of a file (because ctime is unaffected
13289         by rename on jfs2 on AIX 5.1).
13290         (main): Start by doing cleanup, in case a previous run failed leaving
13291         test files behind.
13292
13293 2007-03-31  Bruno Haible  <bruno@clisp.org>
13294
13295         Support old proprietary implementations of iconv.
13296         * modules/iconv_open: New file.
13297         * lib/iconv_.h: New file.
13298         * m4/iconv_h.m4: New file.
13299         * lib/iconv_open.c: New file.
13300         * lib/iconv_open-aix.gperf: New file.
13301         * lib/iconv_open-hpux.gperf: New file.
13302         * lib/iconv_open-irix.gperf: New file.
13303         * lib/iconv_open-osf.gperf: New file.
13304         * m4/iconv_open.m4: New file.
13305         * modules/linebreak (Depends-on): Add iconv_open.
13306         * modules/striconv (Depends-on): Likewise.
13307         * modules/striconveh (Depends-on): Likewise.
13308         * modules/unicodeio (Depends-on): Likewise.
13309         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
13310         (iconv_t)(-1).
13311         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
13312         conversion if cd is (iconv_t)(-1).
13313         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
13314         is not possible.
13315
13316 2007-03-31  Bruno Haible  <bruno@clisp.org>
13317
13318         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
13319         work on Solaris either. Protect also second use of "autodetect_jp".
13320
13321 2007-03-31  Bruno Haible  <bruno@clisp.org>
13322
13323         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
13324         the function is not present.
13325
13326 2007-03-31  Bruno Haible  <bruno@clisp.org>
13327
13328         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
13329         the function is not present.
13330
13331 2007-03-31  Bruno Haible  <bruno@clisp.org>
13332
13333         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
13334         a bug in HP-UX iconv_open().
13335
13336 2007-03-31  Bruno Haible  <bruno@clisp.org>
13337
13338         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
13339         (Mathematics <math.h>): New section, add fpieee.
13340         (Input/output <stdio.h>): Add fseterr.
13341         (Mathematics <math.h>): New section, add printf-frexp.
13342         (Container data structures): Add sublist.
13343         (Core language properties): Add fpucw, inline.
13344         (Functions for greatest-width integer types <inttypes.h>): Add
13345         imaxabs, imaxdiv, inttypes.
13346         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
13347         isnanl-nolibm, ldexp.
13348         (Mathematics <math.h>): New section, add printf-frexpl.
13349         (Support for systems lacking POSIX:2001): Add fprintf-posix,
13350         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
13351         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
13352         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
13353         (Unicode string functions): Add unistr/u*-mbtoucr.
13354         (Java): Add javacomp-script, javaexec-script.
13355         (C#): Add csharpcomp-script, csharpexec-script.
13356         (Support for building libraries and executables): Add havelib,
13357         relocatable-*.
13358         (Support for maintaining and releasing projects): Renamed from
13359         'Support for maintaining and release projects'. Add announce-gen.
13360
13361 2007-03-31  Bruno Haible  <bruno@clisp.org>
13362
13363         * README: Talk primarily about git.
13364         (git and CVS): Renamed from CVS.
13365         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
13366         gnulib is available through git.
13367         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
13368
13369 2007-03-30  Bruno Haible  <bruno@clisp.org>
13370
13371         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
13372         * lib/poll_.h: Likewise.
13373         * lib/stat_.h: Likewise.
13374         * lib/sys_time_.h: Likewise.
13375         * lib/sysexit_.h: Likewise.
13376         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
13377         * lib/stdbool_.h: Likewise.
13378         * lib/byteswap_.h: Add double-inclusion guard.
13379
13380 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
13381
13382         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
13383
13384 2007-03-30  Karl Berry  <karl@gnu.org>
13385
13386         * config/srclist-update: double space after USA in the license
13387         substitution, since that's how it's usually (?) written.
13388
13389 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
13390
13391         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
13392         reported by Bruno Haible.
13393
13394 2007-03-29  Bruno Haible  <bruno@clisp.org>
13395
13396         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
13397         a bug in AIX iconv().
13398
13399 2007-03-29  Bruno Haible  <bruno@clisp.org>
13400
13401         * modules/ldexpl-tests: New file.
13402         * tests/test-ldexpl.c: New file.
13403
13404 2007-03-29  Bruno Haible  <bruno@clisp.org>
13405
13406         * lib/ldexpl.c: Include fpucw.h.
13407         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
13408         multiplication.
13409         * modules/ldexpl (Depends-on): Add fpucw.
13410
13411 2007-03-29  Bruno Haible  <bruno@clisp.org>
13412
13413         * modules/ldexpl: New file.
13414         * m4/ldexpl.m4: New file.
13415         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
13416         set.
13417         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
13418         REPLACE_LDEXPL.
13419         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
13420         REPLACE_LDEXPL.
13421         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
13422         gl_FUNC_LDEXPL_WORKS.
13423         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
13424         * modules/mathl (Files): Remove lib/ldexpl.c.
13425         (Depends-on): Add ldexpl.
13426
13427 2007-03-29  Bruno Haible  <bruno@clisp.org>
13428
13429         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
13430
13431 2007-03-29  Bruno Haible  <bruno@clisp.org>
13432
13433         * tests/test-striconveh.c (main): Don't assume that a direct conversion
13434         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
13435         and possibly also HP-UX.
13436         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
13437         work on AIX, IRIX, HP-UX, OSF/1.
13438         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
13439         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
13440         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
13441         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
13442         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
13443         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
13444
13445 2007-03-29  Bruno Haible  <bruno@clisp.org>
13446
13447         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
13448
13449 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
13450
13451         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
13452         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
13453
13454 2007-03-29  Eric Blake  <ebb9@byu.net>
13455
13456         * lib/acl-internal.h: Remove redundant include.
13457         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
13458         Cygwin when a file is locked.
13459
13460 2007-03-29  Bruno Haible  <bruno@clisp.org>
13461
13462         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
13463         file.
13464         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
13465
13466 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
13467
13468         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
13469         try to remove a parent directory if the child couldn't be removed
13470         (except for the first rmdir, which could fail because the child
13471         doesn't exist).  Problem reported by Jeff Blaine in
13472         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
13473
13474 2007-03-28  Bruno Haible  <bruno@clisp.org>
13475
13476         * lib/striconveh.c (utf8conv_carefully): New function.
13477         (mem_cd_iconveh_internal): Invoke it.
13478
13479 2007-03-28  Bruno Haible  <bruno@clisp.org>
13480
13481         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
13482         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
13483         input.
13484         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
13485         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
13486         unistr/u8-uctomb.
13487
13488 2007-03-28  Bruno Haible  <bruno@clisp.org>
13489
13490         * modules/unistr/u8-mbtoucr: New file.
13491         * lib/unistr/u8-mbtoucr.c: New file.
13492         * modules/unistr/u16-mbtoucr: New file.
13493         * lib/unistr/u16-mbtoucr.c: New file.
13494         * modules/unistr/u16-mbtoucr: New file.
13495         * lib/unistr/u16-mbtoucr.c: New file.
13496         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
13497
13498 2007-03-27  Simon Josefsson  <simon@josefsson.org>
13499             Bruno Haible  <bruno@clisp.org>
13500
13501         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
13502         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
13503         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
13504
13505         * m4/stdio_h.m4: Add stubs for vasprintf too.
13506
13507         * modules/stdio: Support vasprintf in sed command.
13508
13509         * modules/vasprintf: Depend on stdio for prototypes.  Remove
13510         vasprintf.h.  Add stdio module indicator.
13511
13512         * lib/stdio_.h: Declare asprintf and vasprintf, based on
13513         vasprintf.h.
13514
13515         * lib/vasprintf.h: File removed.
13516
13517         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
13518         * lib/vasprintf.c: Ditto.
13519         * lib/xvasprintf.c: Ditto.
13520         * tests/test-vasprintf-posix.c: Ditto.
13521         * tests/test-vasprintf.c: Ditto.
13522
13523 2007-03-27  Bruno Haible  <bruno@clisp.org>
13524
13525         Make vasnprintf multithread-safe.
13526         * lib/vasnprintf.c (decimal_point_char): New function.
13527         (VASNPRINTF): Use it.
13528         Suggested by Simon Josefsson.
13529
13530 2007-03-27  Eric Blake  <ebb9@byu.net>
13531
13532         Support sub-second birthtime on cygwin.
13533         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
13534         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
13535         (get_stat_birthtime): Also work with st_birthtim.
13536
13537 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
13538
13539         * lib/stat-time.h (USE_BIRTHTIME): Remove.
13540         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
13541         (get_stat_birthtime_ns): Do not try to use "spare" fields.
13542         (get_stat_birthtime_ns): Simplify compile-time tests.
13543         (get_stat_birthtime): Change the API to look like
13544         get_stat_mtime etc., except return a negative tv_nsec on error.
13545         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
13546         Don't check for "spare" fields.
13547         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
13548         or for struct stat.st_birthtime, as these tests aren't used.
13549         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
13550
13551 2007-03-27  Bruno Haible  <bruno@clisp.org>
13552
13553         * lib/stat-time.h: Include <sys/stat.h>.
13554
13555 2007-03-27  James Youngman  <jay@gnu.org>
13556
13557         * lib/stat-time.h (get_stat_birthtime): New function for
13558           retrieving st_birthtime as provided by UFS2 (hence *BSD).
13559         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
13560           and its variants.
13561         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
13562         * modules/stat-time-test: New file.
13563         * tests/test-stat-time.c: New test, devised by Bruno Haible.
13564
13565 2007-03-26  Bruno Haible  <bruno@clisp.org>
13566
13567         Better support of signalling NaNs.
13568         * lib/atanl.c: Include isnanl.h.
13569         (atanl): Perform test for NaN at the beginning of the function and
13570         through a call to isnanl.
13571         * lib/cosl.c: Include isnanl.h.
13572         (cosl): Perform test for NaN at the beginning of the function and
13573         through a call to isnanl.
13574         * lib/ldexpl.c: Include isnanl.h.
13575         (ldexpl): Perform test for NaN through a call to isnanl.
13576         * lib/logl.c: Include isnanl.h.
13577         (logl): Perform test for NaN at the beginning of the function and
13578         through a call to isnanl.
13579         * lib/sinl.c: Include isnanl.h.
13580         (sinl): Perform test for NaN at the beginning of the function and
13581         through a call to isnanl.
13582         * lib/sqrtl.c: Include isnanl.h.
13583         (sqrtl): Perform test for NaN at the beginning of the function and
13584         through a call to isnanl.
13585         * lib/tanl.c: Include isnanl.h.
13586         (tanl): Perform test for NaN at the beginning of the function and
13587         through a call to isnanl.
13588         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
13589         * modules/mathl (Depends-on): Add isnanl.
13590
13591 2007-03-26  Eric Blake  <ebb9@byu.net>
13592
13593         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
13594         regression in logic sense of previous patch.
13595
13596 2007-03-26  Bruno Haible  <bruno@clisp.org>
13597
13598         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
13599         unportable shell command "if ! ...".
13600         Reported by Ralf Wildenhues.
13601
13602 2007-03-25  Bruno Haible  <bruno@clisp.org>
13603
13604         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
13605         <sysexits.h> file, and only add EX_CONFIG.
13606         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
13607         absolute file name and whether it is sufficient. Substitute also
13608         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
13609         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
13610         ABSOLUTE_SYSEXITS_H into sysexits.h.
13611
13612 2007-03-25  Bruno Haible  <bruno@clisp.org>
13613
13614         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
13615         hints is NULL.
13616
13617 2007-03-25  Bruno Haible  <bruno@clisp.org>
13618
13619         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
13620         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
13621
13622 2007-03-25  Bruno Haible  <bruno@clisp.org>
13623
13624         * lib/vasnprintf.c: Include langinfo.h.
13625         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
13626         multithread-safe.
13627         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
13628         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
13629         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
13630         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13631         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
13632         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
13633         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
13634         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
13635         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
13636         Reported by Simon Josefsson.
13637
13638 2007-03-25  Bruno Haible  <bruno@clisp.org>
13639
13640         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
13641         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
13642         * modules/vasnprintf (Depends-on): Add stdint.
13643
13644 2007-03-25  Bruno Haible  <bruno@clisp.org>
13645
13646         * modules/fpieee: New file.
13647         * m4/fpieee.m4: New file.
13648         * modules/isnan-nolibm (Depends-on): Add fpieee.
13649         * modules/isnanl-nolibm (Depends-on): Add fpieee.
13650         * modules/isnanl (Depends-on): Add fpieee.
13651
13652 2007-03-25  Bruno Haible  <bruno@clisp.org>
13653
13654         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
13655
13656 2007-03-25  Bruno Haible  <bruno@clisp.org>
13657
13658         Avoid test failures on IRIX 6.5.
13659         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
13660         (main): Use it.
13661         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
13662         macros.
13663         (main): Use them.
13664
13665 2007-03-25  Bruno Haible  <bruno@clisp.org>
13666
13667         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
13668         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
13669         exists but doesn't work.
13670         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
13671         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
13672         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
13673         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
13674
13675 2007-03-25  Bruno Haible  <bruno@clisp.org>
13676
13677         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
13678         returns inf. Needed on IRIX 6.5.
13679
13680 2007-03-25  Bruno Haible  <bruno@clisp.org>
13681
13682         * tests/test-frexpl.c: Include isnanl-nolibm.h.
13683         (main): Use isnanl instead of x != x idiom.
13684         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
13685
13686         * tests/test-frexp.c: Include isnan.h.
13687         (main): Use isnan instead of x != x idiom.
13688         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
13689
13690 2007-03-25  Bruno Haible  <bruno@clisp.org>
13691
13692         * tests/test-frexp.c (NaN): New function/macro.
13693         (main): Use it instead of 0.0 / 0.0.
13694         * tests/test-isnan.c (NaN): New function/macro.
13695         (main): Use it instead of 0.0 / 0.0.
13696         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
13697         (test_function): Use it instead of 0.0 / 0.0.
13698         * tests/test-vasprintf-posix.c (NaN): New function/macro.
13699         (test_function): Use it instead of 0.0 / 0.0.
13700         * tests/test-snprintf-posix.h (NaN): New function/macro.
13701         (test_function): Use it instead of 0.0 / 0.0.
13702         * tests/test-sprintf-posix.h (NaN): New function/macro.
13703         (test_function): Use it instead of 0.0 / 0.0.
13704         * tests/test-fprintf-posix.h (NaN): New function/macro.
13705         (test_function): Use it instead of 0.0 / 0.0.
13706         * tests/test-printf-posix.h (NaN): New function/macro.
13707         (test_function): Use it instead of 0.0 / 0.0.
13708
13709         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
13710
13711 2007-03-25  Bruno Haible  <bruno@clisp.org>
13712
13713         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
13714
13715 2007-03-25  Bruno Haible  <bruno@clisp.org>
13716
13717         * lib/regexec.c (merge_state_with_log): Make static.
13718
13719 2007-03-25  Bruno Haible  <bruno@clisp.org>
13720
13721         * lib/trigl.c (kernel_rem_pio2): Make static.
13722
13723 2007-03-25  Bruno Haible  <bruno@clisp.org>
13724
13725         * lib/sincosl.c (sincosl_table): Make static.
13726
13727 2007-03-25  Bruno Haible  <bruno@clisp.org>
13728
13729         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
13730         if the compiler does not support C99.
13731
13732 2007-03-25  Bruno Haible  <bruno@clisp.org>
13733
13734         * modules/time (Makefile.am): Ensure all rule action lines start with a
13735         tab.
13736
13737 2007-03-24  Bruno Haible  <bruno@clisp.org>
13738
13739         * modules/tsearch-tests: New file.
13740         * tests/test-tsearch.sh: New file.
13741         * tests/test-tsearch.c: New file, mostly copied from glibc.
13742
13743         * modules/search-tests: New file.
13744         * tests/test-search.c: New file.
13745
13746         * modules/search: New file.
13747         * lib/search_.h: New file, incorporating lib/tsearch.h.
13748         * m4/search_h.m4: New file.
13749         * lib/tsearch.h: Remove file.
13750         * lib/tsearch.c: Include search.h instead of tsearch.h.
13751         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
13752         HAVE_TSEARCH.
13753         * modules/tsearch (Files): Remove lib/tsearch.h.
13754         (Depends-on): Add search.
13755         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
13756         (Include): Change tsearch.h into search.h.
13757
13758 2007-03-24  Bruno Haible  <bruno@clisp.org>
13759
13760         * modules/fpucw: New file.
13761         * lib/fpucw.h: New file.
13762         * lib/frexp.c: Include fpucw.h.
13763         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
13764         (FUNC): Use them.
13765         * lib/printf-frexp.c: Include fpucw.h.
13766         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
13767         (FUNC): Use them.
13768         * lib/vasnprintf.c: Include fpucw.h.
13769         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
13770         'long double' calculations.
13771         * tests/test-frexpl.c: Include fpucw.h.
13772         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
13773         * tests/test-printf-frexpl.c: Include fpucw.h.
13774         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
13775         * modules/frexpl (Depends-on): Add fpucw.
13776         * modules/printf-frexpl (Depends-on): Likewise.
13777         * modules/fprintf-posix (Depends-on): Likewise.
13778         * modules/snprintf-posix (Depends-on): Likewise.
13779         * modules/sprintf-posix (Depends-on): Likewise.
13780         * modules/vasnprintf-posix (Depends-on): Likewise.
13781         * modules/vasprintf-posix (Depends-on): Likewise.
13782         * modules/vfprintf-posix (Depends-on): Likewise.
13783         * modules/vsnprintf-posix (Depends-on): Likewise.
13784         * modules/vsprintf-posix (Depends-on): Likewise.
13785         * modules/frexpl-tests (Depends-on): Likewise.
13786         * modules/printf-frexpl-tests (Depends-on): Likewise.
13787
13788 2007-03-24  Bruno Haible  <bruno@clisp.org>
13789
13790         * lib/float+.h: New file.
13791         * lib/isnan.c: Include float+.h.
13792         (SIZE): New macro.
13793         (FUNC): Compare only SIZE bytes of the value.
13794         * lib/vasnprintf.c: Include float+.h.
13795         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
13796         SIZEOF_LDBL or SIZEOF_DBL bytes.
13797         * modules/isnan-nolibm (Files): Add lib/float+.h.
13798         * modules/isnanl-nolibm (Files): Add lib/float+.h.
13799         * modules/isnanl (Files): Add lib/float+.h.
13800         * modules/vasnprintf (Files): Add lib/float+.h.
13801
13802 2007-03-24  Bruno Haible  <bruno@clisp.org>
13803
13804         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
13805         include isnanl-nolibm.h.
13806
13807 2007-03-24  Bruno Haible  <bruno@clisp.org>
13808
13809         * tests/test-read-file.c (main): Don't produce spurious output for
13810         expected situations. Make the test fail if it encountered unexpected
13811         results.
13812
13813 2007-03-24  Bruno Haible  <bruno@clisp.org>
13814
13815         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
13816         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
13817
13818 2007-03-24  Bruno Haible  <bruno@clisp.org>
13819
13820         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
13821
13822 2007-03-24  Bruno Haible  <bruno@clisp.org>
13823
13824         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
13825         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
13826
13827         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
13828         * modules/utf8-ucs4: Turn into a symbolic link to module
13829         unistr/u8-mbtouc.
13830
13831         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
13832         utf8-ucs4-unsafe.
13833         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
13834         unistr/u8-mbtouc-unsafe.
13835
13836         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
13837         * modules/utf16-ucs4: Turn into a symbolic link to module
13838         unistr/u16-mbtouc.
13839
13840         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
13841         utf16-ucs4-unsafe.
13842         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
13843         unistr/u16-mbtouc-unsafe.
13844
13845         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
13846         * modules/ucs4-utf8: Turn into a symbolic link to module
13847         unistr/u8-ubtomb.
13848
13849         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
13850         * modules/ucs4-utf16: Turn into a symbolic link to module
13851         unistr/u16-ubtomb.
13852
13853 2007-03-24  Bruno Haible  <bruno@clisp.org>
13854
13855         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
13856         Enable the function only if HAVE_INLINE.
13857         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
13858         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
13859         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
13860         Enable the function only if HAVE_INLINE.
13861         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
13862         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
13863         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
13864         Enable the function only if HAVE_INLINE.
13865         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
13866         Enable the function only if HAVE_INLINE.
13867         * modules/utf8-ucs4: Update.
13868         * modules/utf8-ucs4-unsafe: Update.
13869         * modules/utf16-ucs4: Update.
13870         * modules/utf16-ucs4-unsafe: Update.
13871         * modules/ucs4-utf8: Update.
13872         * modules/ucs4-utf16: Update.
13873
13874 2007-03-24  Bruno Haible  <bruno@clisp.org>
13875
13876         * lib/utf8-ucs4.h: Remove file.
13877         * lib/utf8-ucs4-unsafe.h: Remove file.
13878         * lib/utf16-ucs4.h: Remove file.
13879         * lib/utf16-ucs4-unsafe.h: Remove file.
13880         * lib/ucs4-utf8.h: Remove file.
13881         * lib/ucs4-utf16.h: Remove file.
13882         * lib/unistr.h: Include their previous contents.
13883         * m4/utf-ucs4.m4: Remove file.
13884         * m4/ucs4-utf.m4: Remove file.
13885         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
13886         (Depends-on): Add unistr/base.
13887         (configure.ac): Remove gl_UTF_UCS4.
13888         (Makefile.am): Update.
13889         (Include): Change to unistr.h.
13890         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
13891         (Depends-on): Add unistr/base.
13892         (configure.ac): Remove gl_UTF_UCS4.
13893         (Makefile.am): Update.
13894         (Include): Change to unistr.h.
13895         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
13896         (Depends-on): Add unistr/base.
13897         (configure.ac): Remove gl_UTF_UCS4.
13898         (Makefile.am): Update.
13899         (Include): Change to unistr.h.
13900         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
13901         (Depends-on): Add unistr/base.
13902         (configure.ac): Remove gl_UTF_UCS4.
13903         (Makefile.am): Update.
13904         (Include): Change to unistr.h.
13905         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
13906         (Depends-on): Add unistr/base.
13907         (configure.ac): Remove gl_UCS4_UTF.
13908         (Makefile.am): Update.
13909         (Include): Change to unistr.h.
13910         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
13911         (Depends-on): Add unistr/base.
13912         (configure.ac): Remove gl_UCS4_UTF.
13913         (Makefile.am): Update.
13914         (Include): Change to unistr.h.
13915         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
13916         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
13917         utf8-ucs4-unsafe.h.
13918         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
13919         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
13920         utf16-ucs4-unsafe.h.
13921         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
13922         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
13923         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
13924         * lib/unistr/u8-strchr.c: Likewise.
13925         * lib/unistr/u8-strrchr.c: Likewise.
13926         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
13927         * lib/unistr/u16-strchr.c: Likewise.
13928         * lib/unistr/u16-strrchr.c: Likewise.
13929         * lib/striconveh.c: Update.
13930         * lib/linebreak.c: Update.
13931
13932 2007-03-24  Bruno Haible  <bruno@clisp.org>
13933
13934         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
13935         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
13936
13937 2007-03-22  Bruno Haible  <bruno@clisp.org>
13938
13939         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
13940
13941 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
13942
13943         * MODULES.html.sh (File system functions): New module write-any-file.
13944         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
13945         * m4/write-any-file.m4: New files.
13946
13947 2007-03-23  Eric Blake  <ebb9@byu.net>
13948
13949         * gnulib-tool: Rearrange space-tab sequences, since some editors
13950         like to eat them.
13951
13952 2007-03-23  Eric Blake  <ebb9@byu.net>
13953
13954         * lib/version-etc.c (version_etc_va): Update license wording to
13955         be more concise.  Recommended by Richard Stallman.
13956
13957 2007-03-22  Bruno Haible  <bruno@clisp.org>
13958
13959         * lib/poll.c (MSG_PEEK): New fallback definition.
13960
13961 2007-03-22  Bruno Haible  <bruno@clisp.org>
13962
13963         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
13964         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
13965         (main): Update.
13966         Fixes a compilation error on BeOS.
13967
13968 2007-03-22  Bruno Haible  <bruno@clisp.org>
13969
13970         * modules/frexpl-tests: New file.
13971         * tests/test-frexpl.c: New file.
13972
13973         * modules/frexpl: New file.
13974         * m4/frexpl.m4: New file.
13975         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
13976         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
13977         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
13978         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
13979         (Depends-on): Add frexpl. Remove isnanl-nolibm.
13980         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
13981
13982 2007-03-22  Bruno Haible  <bruno@clisp.org>
13983
13984         * lib/frexpl.c: Share code with lib/frexp.c.
13985         * modules/mathl (Files): Add lib/frexp.c.
13986         (Depends-on): Add isnanl-nolibm.
13987
13988 2007-03-22  Bruno Haible  <bruno@clisp.org>
13989
13990         * modules/printf-frexp (Files): Add m4/frexp.m4.
13991         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
13992         only if the found frexp function actually works.
13993
13994 2007-03-22  Bruno Haible  <bruno@clisp.org>
13995
13996         * lib/frexp.c: Remove older implementation that uses divisions.
13997
13998 2007-03-21  Bruno Haible  <bruno@clisp.org>
13999
14000         * modules/frexp-tests: New file.
14001         * tests/test-frexp.c: New file.
14002
14003         * modules/frexp: New file.
14004         * lib/frexp.c: New file.
14005         * m4/frexp.m4: New file.
14006         * lib/math_.h (frexp): New declaration.
14007         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
14008         REPLACE_FREXP.
14009         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
14010
14011 2007-03-21  Bruno Haible  <bruno@clisp.org>
14012
14013         * modules/isnanl-tests: New file.
14014         * tests/test-isnanl.c: New file.
14015
14016         * modules/isnanl: New file.
14017         * lib/isnanl.h: New file.
14018         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
14019         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
14020         gl_FUNC_ISNANL_WORKS.
14021         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
14022         New macros.
14023
14024 2007-03-21  Bruno Haible  <bruno@clisp.org>
14025
14026         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
14027         lib/isnanl.h.
14028         (Include): Update.
14029         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
14030         * lib/vasnprintf.c: Update.
14031         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
14032         tests/test-isnanl.h, remove tests/test-isnanl.c.
14033         (Makefile.am): Update.
14034         * tests/test-isnanl-nolibm.c: New file.
14035         * tests/test-isnanl.h: New file.
14036         * tests/test-isnanl.c: Remove file.
14037
14038 2007-03-21  Jim Meyering  <jim@meyering.net>
14039
14040         When trying to open ".", treat ESTALE like EACCES.
14041         * lib/savewd.c (savewd_save): Resort to forking not just upon
14042         failure with EACCES, but also when errno is ESTALE.
14043
14044 2007-03-20  Bruno Haible  <bruno@clisp.org>
14045
14046         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
14047         Needed on AIX 5.1. Reported by Matthew Woehlke.
14048
14049 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
14050
14051         Suggestions by Bruno Haible:
14052         * lib/acl-internal.h: Include "gettext.h" rather than rolling
14053         our own.
14054         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
14055         * modules/acl (Depends-on): Add gettext.
14056
14057 2007-03-19  Bruno Haible  <bruno@clisp.org>
14058
14059         * modules/iconvme: Remove file.
14060         * lib/iconvme.h: Remove file.
14061         * lib/iconvme.c: Remove file.
14062         * m4/iconvme.m4: Remove file.
14063
14064 2007-03-19  Bruno Haible  <bruno@clisp.org>
14065
14066         * doc/relocatable-maint.texi: Break long shell script line.
14067         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
14068
14069 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
14070
14071         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
14072         handle file_has_acl.
14073         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
14074         * lib/acl.c: Move header inclusions and related macro defns into
14075         lib/acl-internal.h.
14076         (S_ISLNK): Remove defn, since that's now done for us.
14077         (file_has_acl): Move to lib/file-has-acl.c.
14078         Call acl_trivial if available.  This is the crucial part of the fix.
14079         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
14080         shared within the library.  Rewrite a bit, partly to make it compatible
14081         with the GNU coding style.
14082         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
14083         Remove unnecessary double-quotes.
14084         Don't test for acl_to_text; the build will catch that.
14085         Replace acl_entries if it doesn't exist and it is needed.
14086         Check for -lsec and acl_trivial (as used on Solaris 10).
14087         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
14088         lib/file-has-acl.c.
14089         (Depends-on): Add sys_stat, for S_ISLNK.
14090
14091 2007-03-19  Ben Pfaff  <blp@gnu.org>
14092
14093         * doc/gnulib.texi: Fix typos.
14094         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
14095
14096 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
14097
14098         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
14099         If size is zero here, buf must be zero.
14100
14101 2007-03-19  Simon Josefsson  <simon@josefsson.org>
14102
14103         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
14104         <bruno@clisp.org>.
14105
14106 2007-03-18  Bruno Haible  <bruno@clisp.org>
14107
14108         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
14109         Suggested by Eric Blake.
14110
14111 2007-03-18  Ben Pfaff  <blp@gnu.org>
14112
14113         * doc/relocatable.texi: Recommend using as prefix a directory
14114         that does not exist and will never be created.  Based on
14115         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
14116         and others.
14117
14118 2007-03-17  Bruno Haible  <bruno@clisp.org>
14119
14120         * lib/fchownat.c: Include lchown.h.
14121
14122 2007-03-17  Bruno Haible  <bruno@clisp.org>
14123
14124         Fix endless loop when the given allocated size was > INT_MAX.
14125         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
14126         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
14127         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
14128         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
14129         * lib/sprintf.c (sprintf): Likewise.
14130
14131 2007-03-17  Bruno Haible  <bruno@clisp.org>
14132
14133         * tests/test-argp-2.sh (func_compare): Output a context diff.
14134
14135 2007-03-17  Bruno Haible  <bruno@clisp.org>
14136
14137         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
14138         locale's decimal-point character.
14139
14140 2007-03-17  Bruno Haible  <bruno@clisp.org>
14141
14142         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
14143         before comparing it. Needed because on some platforms (e.g. x86) a
14144         'long double' occupies less bytes than sizeof (long double).
14145
14146 2007-03-17  Bruno Haible  <bruno@clisp.org>
14147
14148         * tests/test-crc.c (main): Make printf statements 64-bit clean.
14149         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
14150         * tests/test-getaddrinfo.c (simple): Likewise.
14151         * tests/test-read-file.c (main): Likewise.
14152
14153 2007-03-17  Bruno Haible  <bruno@clisp.org>
14154
14155         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
14156
14157 2007-03-17  Bruno Haible  <bruno@clisp.org>
14158
14159         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
14160         unused variable.
14161
14162 2007-03-17  Bruno Haible  <bruno@clisp.org>
14163
14164         * tests/test-c-strcasecmp.c: Include c-strcase.h.
14165         * tests/test-c-strncasecmp.c: Likewise.
14166
14167 2007-03-17  Bruno Haible  <bruno@clisp.org>
14168
14169         * modules/stdlib (Depends-on): Add unistd.
14170         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
14171         Needed for MacOS X 10.3.
14172
14173 2007-03-17  Bruno Haible  <bruno@clisp.org>
14174
14175         * lib/unistr/u-strdup.h: Include <stdlib.h>.
14176
14177 2007-03-17  Bruno Haible  <bruno@clisp.org>
14178
14179         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
14180
14181 2007-03-17  Bruno Haible  <bruno@clisp.org>
14182
14183         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
14184         to reflect files copied from gnulib (with or without modifications).
14185         Suggested by Jim Meyering.
14186
14187 2007-03-17  Eric Blake  <ebb9@byu.net>
14188
14189         * NEWS: Document stdlib change from 2007-02-18.
14190
14191 2007-03-17  Jim Meyering  <jim@meyering.net>
14192
14193         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
14194         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
14195         someone uses a name containing shell meta-characters.
14196         Reported by Alfred M. Szmidt.
14197
14198         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
14199
14200 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
14201
14202         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
14203         and copy gettext configuration files only if configure.ac contains
14204         a use of AM_GNU_GETTEXT_VERSION.
14205
14206 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
14207
14208         * build-aux/bootstrap (gnulib_name): New variable.
14209         (gnulib_tool_options): Use it.
14210
14211 2007-03-13  Simon Josefsson  <simon@josefsson.org>
14212
14213         * tests/test-des.c: Use new namespace.
14214
14215 2007-03-15  Bruno Haible  <bruno@clisp.org>
14216
14217         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
14218         Reported by James Youngman <jay@gnu.org>.
14219
14220 2007-03-15  Bruno Haible  <bruno@clisp.org>
14221
14222         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
14223         declared prototype. Needed with cc on OSF/1 5.1.
14224
14225 2007-03-15  Bruno Haible  <bruno@clisp.org>
14226
14227         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
14228         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
14229         (struct gl_list_implementation): Add dispose_fn argument to the
14230         'create_empty', 'create' methods.
14231         (struct gl_list_impl_base): Add field 'dispose_fn'.
14232         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
14233         argument.
14234         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
14235         dispose_fn argument.
14236         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
14237         dispose_fn on the dropped values.
14238         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
14239         dispose_fn argument.
14240         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
14241         dropped values.
14242         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
14243         (gl_tree_remove_node): Call dispose_fn on the dropped value.
14244         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
14245         (gl_tree_remove_node): Call dispose_fn on the dropped value.
14246         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
14247         argument.
14248         (gl_tree_list_free): Call dispose_fn on the dropped values.
14249         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
14250         the dropped values.
14251         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
14252         Add dispose_fn argument.
14253         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
14254         Call dispose_fn on the dropped values.
14255         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
14256         Add dispose_fn argument.
14257         (gl_sublist_create): Initialize the 'dispose_fn' field.
14258         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
14259         * tests/test-array_list.c (main): Update.
14260         * tests/test-carray_list.c (main): Update.
14261         * tests/test-avltree_list.c (main): Update.
14262         * tests/test-rbtree_list.c (main): Update.
14263         * tests/test-avltreehash_list.c (main): Update.
14264         * tests/test-rbtreehash_list.c (main): Update.
14265         * tests/test-linked_list.c (main): Update.
14266         * tests/test-linkedhash_list.c (main): Update.
14267         * tests/test-array_oset.c (main): Update.
14268
14269 2007-03-15  Bruno Haible  <bruno@clisp.org>
14270
14271         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
14272         (gl_oset_create_empty): Add dispose_fn argument.
14273         (struct gl_oset_implementation): Add dispose_fn argument to
14274         'create_empty' method.
14275         (struct gl_oset_impl_base): Add dispose_fn field.
14276         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
14277         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
14278         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
14279         values.
14280         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
14281         (gl_tree_oset_free): Call dispose_fn on the dropped values.
14282         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
14283         dropped value.
14284         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
14285         dropped value.
14286         * tests/test-array_oset.c (main): Update.
14287         * tests/test-avltree_oset.c (main): Update.
14288         * tests/test-rbtree_oset.c (main): Update.
14289         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
14290
14291 2007-03-13  Bruno Haible  <bruno@clisp.org>
14292
14293         * tests/test-stdbool.c (i): Update after last patch.
14294
14295 2007-03-12  Bruno Haible  <bruno@clisp.org>
14296
14297         * lib/quotearg.c: Include <wctype.h> early, before the definition of
14298         the iswprint macro. Needed on Solaris 2.5.1.
14299
14300 2007-03-12  Bruno Haible  <bruno@clisp.org>
14301
14302         * tests/test-printf-frexp.c (main): Declare x as volatile.
14303
14304 2007-03-12  Simon Josefsson  <simon@josefsson.org>
14305
14306         * doc/gnulib.texi (Build robot for gnulib): New section.
14307
14308 2007-03-12  Jim Meyering  <jim@meyering.net>
14309
14310         * build-aux/bootstrap: New file.
14311         * build-aux/bootstrap.conf: New file, from coreutils.
14312
14313 2007-03-11  Bruno Haible  <bruno@clisp.org>
14314
14315         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
14316
14317 2007-03-12  Simon Josefsson  <simon@josefsson.org>
14318
14319         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
14320         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
14321         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
14322
14323 2007-03-11  Bruno Haible  <bruno@clisp.org>
14324
14325         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
14326         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
14327
14328 2007-03-11  Bruno Haible  <bruno@clisp.org>
14329
14330         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
14331         formula. Needed for SunPRO C 5.0.
14332
14333 2007-03-11  Bruno Haible  <bruno@clisp.org>
14334
14335         * modules/long-options (Depends-on): Add getopt.
14336
14337 2007-03-11  Bruno Haible  <bruno@clisp.org>
14338
14339         * modules/modechange (Depends-on): Add stdbool.
14340
14341 2007-03-11  Bruno Haible  <bruno@clisp.org>
14342
14343         * modules/i-ring (Depends-on): Add stdbool.
14344
14345 2007-03-11  Bruno Haible  <bruno@clisp.org>
14346
14347         * modules/gc-des (Depends-on): Add stdbool.
14348
14349 2007-03-11  Bruno Haible  <bruno@clisp.org>
14350
14351         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
14352
14353 2007-03-11  Bruno Haible  <bruno@clisp.org>
14354
14355         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
14356
14357 2007-03-11  Bruno Haible  <bruno@clisp.org>
14358
14359         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
14360
14361 2007-03-11  Bruno Haible  <bruno@clisp.org>
14362
14363         * lib/vasnprintf.c (sprintf): Undefine.
14364
14365 2007-03-11  Bruno Haible  <bruno@clisp.org>
14366
14367         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
14368         initializers in SunPRO C and Compaq C compilers.
14369
14370 2007-03-11  Bruno Haible  <bruno@clisp.org>
14371
14372         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
14373         decrementing code ANSI C compliant.
14374
14375 2007-03-11  Bruno Haible  <bruno@clisp.org>
14376
14377         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
14378         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
14379
14380 2007-03-11  Bruno Haible  <bruno@clisp.org>
14381
14382         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
14383         <stdbool.h> substitute doesn't pass.
14384
14385 2007-03-11  Bruno Haible  <bruno@clisp.org>
14386
14387         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
14388
14389 2007-03-11  Bruno Haible  <bruno@clisp.org>
14390
14391         * gnulib-tool (func_create_megatestdir): Create also an autobuild
14392         script, for submission to autobuild.josefsson.org.
14393
14394 2007-03-10  Bruno Haible  <bruno@clisp.org>
14395
14396         * modules/canonicalize-lgpl-tests: New file.
14397         * tests/test-canonicalize-lgpl.sh: New file.
14398         * tests/test-canonicalize-lgpl.c: New file.
14399
14400         * modules/c-strcase-tests: New file.
14401         * tests/test-c-strcase.sh: New file.
14402         * tests/test-c-strcasecmp.c: New file.
14403         * tests/test-c-strncasecmp.c: New file.
14404
14405         * modules/atexit-tests: New file.
14406         * tests/test-atexit.sh: New file.
14407         * tests/test-atexit.c: New file.
14408
14409 2007-03-10  Bruno Haible  <bruno@clisp.org>
14410
14411         * tests/test-binary-io.sh: Use temporary filenames that are not so
14412         likely to clash with those of other tests (in a parallel make).
14413         * tests/test-binary-io.c: Likewise.
14414
14415 2007-03-10  Bruno Haible  <bruno@clisp.org>
14416
14417         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
14418         fallback; use #error instead.
14419         Suggested by Simon Josefsson.
14420
14421 2007-03-10  Bruno Haible  <bruno@clisp.org>
14422
14423         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
14424         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
14425         first and the last.
14426
14427 2007-03-10  Bruno Haible  <bruno@clisp.org>
14428
14429         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
14430
14431 2007-03-10  Bruno Haible  <bruno@clisp.org>
14432
14433         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
14434         "make distcheck".
14435         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
14436         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
14437         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
14438
14439 2007-03-10  Bruno Haible  <bruno@clisp.org>
14440
14441         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
14442         variable.
14443         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
14444         variable.
14445
14446 2007-03-09  Eric Blake  <ebb9@byu.net>
14447         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
14448
14449         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
14450         types are not being provided by gnulib.
14451         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
14452         types are supported.
14453
14454 2007-03-10  Bruno Haible  <bruno@clisp.org>
14455
14456         * lib/stdio_.h (__attribute__): New macro.
14457         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
14458         vsprintf): Specify __attribute__ __format__ for GCC.
14459         Suggested by Eric Blake.
14460
14461 2007-03-09  Bruno Haible  <bruno@clisp.org>
14462
14463         * modules/printf-posix-tests: New file.
14464         * tests/test-printf-posix.sh: New file.
14465         * tests/test-printf-posix.c: New file.
14466
14467         * modules/printf-posix: New file.
14468         * lib/printf.c: New file.
14469         * m4/printf-posix-rpl.m4: New file.
14470         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
14471         REPLACE_PRINTF.
14472         * lib/stdio_.h (printf): New declaration.
14473         (format, __format__, ____printf____, ____scanf____, ____strftime____,
14474         ____strfmon____): New macros.
14475         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
14476         REPLACE_PRINTF.
14477
14478 2007-03-09  Bruno Haible  <bruno@clisp.org>
14479
14480         * tests/test-vasnprintf-posix2.sh: New file.
14481         * tests/test-vasnprintf-posix2.c: New file.
14482         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
14483         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
14484         (Makefile.am): Activate test-vasnprintf-posix2.sh.
14485
14486         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
14487         a locale dependent decimal point, rather than always '.'.
14488
14489 2007-03-09  Eric Blake  <ebb9@byu.net>
14490
14491         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
14492         spite of platforms like Tandem/NSK that define it to -1.
14493
14494 2007-03-08  Bruno Haible  <bruno@clisp.org>
14495
14496         * modules/vprintf-posix-tests: New file.
14497         * tests/test-vprintf-posix.sh: New file.
14498         * tests/test-vprintf-posix.c: New file.
14499         * tests/test-printf-posix.h: New file.
14500
14501         * modules/vprintf-posix: New file.
14502         * lib/vprintf.c: New file.
14503         * m4/vprintf-posix.m4: New file.
14504         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
14505         REPLACE_VPRINTF.
14506         * lib/stdio_.h (vprintf): New declaration.
14507         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
14508         REPLACE_VPRINTF.
14509
14510 2007-03-08  Bruno Haible  <bruno@clisp.org>
14511
14512         * modules/fprintf-posix-tests: New file.
14513         * tests/test-fprintf-posix.sh: New file.
14514         * tests/test-fprintf-posix.c: New file.
14515
14516         * modules/fprintf-posix: New file.
14517         * lib/fprintf.c: New file.
14518         * m4/fprintf-posix.m4: New file.
14519         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
14520         REPLACE_FPRINTF.
14521         * lib/stdio_.h (fprintf): New declaration.
14522         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
14523         REPLACE_FPRINTF.
14524
14525 2007-03-08  Bruno Haible  <bruno@clisp.org>
14526
14527         * modules/vfprintf-posix-tests: New file.
14528         * tests/test-vfprintf-posix.sh: New file.
14529         * tests/test-vfprintf-posix.c: New file.
14530         * tests/test-fprintf-posix.h: New file.
14531         * tests/test-fprintf-posix.out: New file.
14532
14533         * modules/vfprintf-posix: New file.
14534         * lib/vfprintf.c: New file.
14535         * m4/vfprintf-posix.m4: New file.
14536         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
14537         REPLACE_VFPRINTF.
14538         * lib/stdio_.h (vfprintf): New declaration.
14539         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
14540         REPLACE_VFPRINTF.
14541
14542 2007-03-08  Bruno Haible  <bruno@clisp.org>
14543
14544         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
14545
14546 2007-03-08  Bruno Haible  <bruno@clisp.org>
14547
14548         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
14549         instead of 'expr' invocations.
14550         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14551         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14552         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14553         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14554         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14555         Suggested by Paul Eggert.
14556
14557 2007-03-08  Bruno Haible  <bruno@clisp.org>
14558
14559         * modules/fseterr-tests: New file.
14560         * tests/test-fseterr.c: New file.
14561
14562         * modules/fseterr: New file.
14563         * lib/fseterr.h: New file.
14564         * lib/fseterr.c: New file.
14565
14566 2007-03-08  Bruno Haible  <bruno@clisp.org>
14567
14568         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
14569         * lib/getopt_.h: Likewise.
14570         * lib/mbswidth.h: Likewise.
14571         * lib/setenv.h: Likewise.
14572         * lib/vasnprintf.h: Likewise.
14573         * lib/vasprintf.h: Likewise.
14574         * lib/verror.h: Likewise.
14575         * lib/xsetenv.h: Likewise.
14576         * lib/xvasprintf.h: Likewise.
14577
14578 2007-03-08  Jim Meyering  <jim@meyering.net>
14579
14580         * users.txt: Add parted.
14581
14582         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
14583
14584 2007-03-07  Bruno Haible  <bruno@clisp.org>
14585
14586         * m4/printf.m4: Make the shell script snippets copy&pastable.
14587
14588 2007-03-02  Bruno Haible  <bruno@clisp.org>
14589
14590         * lib/netinet_in_.h: New file.
14591         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
14592         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
14593         * modules/netinet_in (Files): Add lib/netinet_in_.h.
14594         (Depends-on): Add absolute-header.
14595         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
14596         into netinet/in.h.
14597
14598 2007-03-03  Bruno Haible  <bruno@clisp.org>
14599
14600         * lib/sys_select_.h: New file.
14601         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
14602         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
14603         * modules/sys_select (Files): Add lib/sys_select_.h.
14604         (Depends-on): Add absolute-header.
14605         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
14606         into sys/select.h.
14607
14608 2007-03-02  Bruno Haible  <bruno@clisp.org>
14609
14610         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
14611         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
14612         values.
14613         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
14614         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
14615         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
14616         * modules/sys_socket (Depends-on): Add absolute-header.
14617         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
14618         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
14619         (Include): Remove requirement of inclusion of <sys/types.h>.
14620
14621 2007-03-02  Bruno Haible  <bruno@clisp.org>
14622
14623         * lib/byteswap_.h (bswap_32): Fix formula.
14624
14625 2007-03-06  Bruno Haible  <bruno@clisp.org>
14626
14627         * modules/sprintf-posix-tests: New file.
14628         * tests/test-sprintf-posix.c: New file.
14629
14630         * modules/sprintf-posix: New file.
14631         * lib/sprintf.c: New file.
14632         * m4/sprintf-posix.m4: New file.
14633         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
14634         REPLACE_SPRINTF.
14635         * lib/stdio_.h (sprintf): New declaration.
14636         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
14637         REPLACE_SPRINTF.
14638
14639 2007-03-06  Bruno Haible  <bruno@clisp.org>
14640
14641         * modules/vsprintf-posix-tests: New file.
14642         * tests/test-vsprintf-posix.c: New file.
14643         * tests/test-sprintf-posix.h: New file.
14644
14645         * modules/vsprintf-posix: New file.
14646         * lib/vsprintf.c: New file.
14647         * m4/vsprintf-posix.m4: New file.
14648         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
14649         REPLACE_VSPRINTF.
14650         * lib/stdio_.h (vsprintf): New declaration.
14651         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
14652         REPLACE_VSPRINTF.
14653
14654 2007-03-06  Bruno Haible  <bruno@clisp.org>
14655
14656         * modules/vsnprintf (Depend-on): Remove minmax.
14657
14658 2007-03-06  Bruno Haible  <bruno@clisp.org>
14659
14660         * modules/snprintf-posix-tests: New file.
14661         * tests/test-snprintf-posix.c: New file.
14662
14663         * modules/snprintf-posix: New file.
14664         * m4/snprintf-posix.m4: New file.
14665         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
14666         gl_FUNC_SNPRINTF.
14667         (gl_FUNC_SNPRINTF): Invoke it.
14668         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
14669         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
14670         is set.
14671         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
14672
14673 2007-03-06  Bruno Haible  <bruno@clisp.org>
14674
14675         * modules/vsnprintf-posix-tests: New file.
14676         * tests/test-vsnprintf-posix.c: New file.
14677         * tests/test-snprintf-posix.h: New file.
14678
14679         * modules/vsnprintf-posix: New file.
14680         * m4/vsnprintf-posix.m4: New file.
14681         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
14682         gl_FUNC_VSNPRINTF.
14683         (gl_FUNC_VSNPRINTF): Invoke it.
14684         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
14685         * lib/stdio_.h (vsnprintf): Define as a replacement if
14686         REPLACE_VSNPRINTF is set.
14687         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
14688
14689 2007-03-06  Bruno Haible  <bruno@clisp.org>
14690
14691         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
14692         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
14693
14694 2007-03-06  Bruno Haible  <bruno@clisp.org>
14695
14696         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
14697         (asinl): Declare also if HAVE_DECL_ASINL is set.
14698         (atanl): Declare also if HAVE_DECL_ATANL is set.
14699         (ceill): Declare also if HAVE_DECL_CEILL is set.
14700         (cosl): Declare also if HAVE_DECL_COSL is set.
14701         (expl): Declare also if HAVE_DECL_EXPL is set.
14702         (floorl): Declare also if HAVE_DECL_FLOORL is set.
14703         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
14704         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
14705         (logl): Declare also if HAVE_DECL_LOGL is set.
14706         (sinl): Declare also if HAVE_DECL_SINL is set.
14707         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
14708         (tanl): Declare also if HAVE_DECL_TANL is set.
14709         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
14710         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
14711         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
14712         declaration of frexpl, ldexpl.
14713         * modules/printf-frexpl (Depends-on): Add math.
14714         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
14715
14716 2007-03-05  Bruno Haible  <bruno@clisp.org>
14717
14718         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
14719         frexpl and ldexpl are declared.
14720         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
14721
14722 2007-03-05  Bruno Haible  <bruno@clisp.org>
14723
14724         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
14725         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
14726
14727 2007-03-05  Bruno Haible  <bruno@clisp.org>
14728
14729         * lib/stdio_.h: Include <stddef.h>.
14730
14731 2007-03-05  Bruno Haible  <bruno@clisp.org>
14732
14733         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
14734
14735 2007-03-05  Bruno Haible  <bruno@clisp.org>
14736
14737         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
14738         NetBSD 4, from Ralf Wildenhues.
14739
14740 2007-03-04  Bruno Haible  <bruno@clisp.org>
14741
14742         * lib/vasprintf.h: Update #if logic for the case when the functions
14743         exist but are overridden.
14744
14745 2007-03-04  Bruno Haible  <bruno@clisp.org>
14746
14747         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
14748         implementations: glibc-2.4 and MacOS X 10.3.
14749         * tests/test-vasnprintf-posix.c (test_function): Test also the case
14750         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
14751         * tests/test-vasprintf-posix.c (test_function): Likewise.
14752
14753 2007-03-04  Bruno Haible  <bruno@clisp.org>
14754
14755         * modules/vasprintf-posix-tests: New file.
14756         * tests/test-vasprintf-posix.c: New file.
14757
14758         * modules/vasprintf-posix: New file.
14759         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
14760         defined.
14761         * m4/vasprintf-posix.m4: New file.
14762         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
14763         gl_FUNC_VASPRINTF.
14764         (gl_FUNC_VASPRINTF): Invoke it.
14765         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
14766         here.
14767         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
14768
14769 2007-03-04  Bruno Haible  <bruno@clisp.org>
14770
14771         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
14772         REPLACE_GETTIMEOFDAY.
14773         * modules/sys_time (Makefile.am): Likewise.
14774         * m4/sys_time_h.m4: Likewise.
14775         * m4/gettimeofday.m4: Likewise.
14776
14777 2007-03-04  Bruno Haible  <bruno@clisp.org>
14778
14779         * modules/vasnprintf-posix-tests: New file.
14780         * tests/test-vasnprintf-posix.c: New file.
14781
14782         * modules/vasnprintf-posix: New file.
14783         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
14784         printf-frexpl.h.
14785         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
14786         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
14787         REPLACE_VASNPRINTF is defined.
14788         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
14789         gl_FUNC_VASNPRINTF.
14790         (gl_FUNC_VASNPRINTF): Invoke it.
14791         * m4/vasnprintf-posix.m4: New file.
14792         * m4/printf.m4: New file.
14793
14794 2007-03-04  Bruno Haible  <bruno@clisp.org>
14795
14796         Compile progreloc.c only if --enable-relocatable is specified.
14797         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
14798         if --enable-relocatable was specified.
14799         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
14800         lib_SOURCES.
14801
14802 2007-03-04  Jim Meyering  <jim@meyering.net>
14803
14804         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
14805         Use it consistently, rather than enumerating errno constants.
14806
14807 2007-03-04  Bruno Haible  <bruno@clisp.org>
14808
14809         * modules/xvasprintf-tests: New file.
14810         * tests/test-xvasprintf.c: New file.
14811
14812         * modules/vasprintf-tests: New file.
14813         * tests/test-vasprintf.c: New file.
14814
14815         * modules/vasnprintf-tests: New file.
14816         * tests/test-vasnprintf.c: New file.
14817
14818         * modules/vsnprintf-tests: New file.
14819         * tests/test-vsnprintf.c: New file.
14820
14821         * modules/snprintf-tests: New file.
14822         * tests/test-snprintf.c: New file.
14823
14824 2007-03-04  Bruno Haible  <bruno@clisp.org>
14825
14826         Compile relocatable.c only if --enable-relocatable is specified.
14827         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
14828         gl_RELOCATABLE_LIBRARY.
14829         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
14830         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
14831         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
14832         gl_RELOCATABLE_LIBRARY.
14833         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
14834         (Makefile.am): Remove lib_SOURCES.
14835         * modules/relocatable-lib-lgpl (configure.ac): Invoke
14836         gl_RELOCATABLE_LIBRARY.
14837         (Makefile.am): Remove lib_SOURCES.
14838         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
14839         always.
14840         * modules/relocatable-prog-wrapper (configure.ac): Invoke
14841         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
14842
14843 2007-03-04  Bruno Haible  <bruno@clisp.org>
14844
14845         * modules/argmatch-tests: New file.
14846         * tests/test-argmatch.c: New file.
14847
14848         * tests/test-allocsa.c (main): Halve the number of loop runs.
14849
14850         * modules/alloca-opt-tests: New file.
14851         * tests/test-alloca-opt.c: New file.
14852
14853 2007-03-04  Jim Meyering  <jim@meyering.net>
14854
14855         Work around difference between Linux ACLs and Solaris 10 ZFS.
14856         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
14857         for EINVAL.
14858
14859 2007-03-03  Bruno Haible  <bruno@clisp.org>
14860
14861         * modules/relocatable-prog (Depends-on): Add back progreloc's
14862         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
14863
14864 2007-03-03  Bruno Haible  <bruno@clisp.org>
14865
14866         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
14867         * modules/relocatable-lib: New file.
14868
14869 2007-03-03  Bruno Haible  <bruno@clisp.org>
14870
14871         * modules/relocatable-prog: Renamed from modules/relocatable.
14872         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
14873
14874 2007-03-03  Bruno Haible  <bruno@clisp.org>
14875
14876         * modules/relocatable-script (Files): Add doc/relocatable.texi,
14877         m4/relocatable-lib.m4.
14878         (Depends-on): Remove 'relocatable'.
14879         (configure.ac): Add gl_RELOCATABLE_NOP.
14880
14881 2007-03-03  Bruno Haible  <bruno@clisp.org>
14882
14883         * modules/relocatable-prog-wrapper: New file.
14884         * modules/relocatable (Depends-on): Add it. Remove all other
14885         dependencies except progname.
14886         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
14887
14888         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
14889         (gl_FUNC_STRERROR): Nop.
14890         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
14891
14892         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
14893         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
14894
14895         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
14896         (gl_FUNC_READLINK): Update.
14897
14898         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
14899
14900 2007-03-03  Bruno Haible  <bruno@clisp.org>
14901
14902         * lib/xreadlink.c: Include <unistd.h> unconditionally.
14903         * modules/xreadlink (Depends-on): Add unistd.
14904         * modules/xreadlink-with-size (Depends-on): Likewise.
14905
14906 2007-03-03  Bruno Haible  <bruno@clisp.org>
14907
14908         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
14909         extracted from gt_FUNC_SETENV.
14910         (gt_FUNC_SETENV): Remove macro.
14911         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
14912         remove gt_FUNC_SETENV.
14913
14914 2007-03-03  Bruno Haible  <bruno@clisp.org>
14915
14916         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
14917         ENABLE_RELOCATABLE here.
14918         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
14919
14920 2007-03-03  Bruno Haible  <bruno@clisp.org>
14921
14922         * modules/rbtreehash-list-tests (Depends-on): Add progname.
14923         * tests/test-rbtreehash_list.c: Include progname.h.
14924         (main): Call set_program_name.
14925
14926         * modules/rbtree-oset-tests (Depends-on): Add progname.
14927         * tests/test-rbtree_oset.c: Include progname.h.
14928         (main): Call set_program_name.
14929
14930         * modules/rbtree-list-tests (Depends-on): Add progname.
14931         * tests/test-rbtree_list.c: Include progname.h.
14932         (main): Call set_program_name.
14933
14934         * modules/linked-list-tests (Depends-on): Add progname.
14935         * tests/test-linked_list.c: Include progname.h.
14936         (main): Call set_program_name.
14937
14938 2007-03-03  Bruno Haible  <bruno@clisp.org>
14939
14940         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
14941         All uses of __restrict changed to _Restrict_.
14942         * lib/glob_.h (__restrict): Remove macro.
14943
14944 2007-03-02  Bruno Haible  <bruno@clisp.org>
14945
14946         * modules/gettext (configure.ac): Require gettext infrastructure
14947         from version 0.16.1.
14948
14949 2007-03-02  Bruno Haible  <bruno@clisp.org>
14950
14951         * modules/linkedhash-list-tests (Depends-on): Add progname.
14952         * tests/test-linkedhash_list.c: Include progname.h.
14953         (main): Call set_program_name.
14954
14955         * modules/carray-list-tests (Depends-on): Add progname.
14956         * tests/test-carray_list.c: Include progname.h.
14957         (main): Call set_program_name.
14958
14959         * modules/avltreehash-list-tests (Depends-on): Add progname.
14960         * tests/test-avltreehash_list.c: Include progname.h.
14961         (main): Call set_program_name.
14962
14963         * modules/avltree-oset-tests (Depends-on): Add progname.
14964         * tests/test-avltree_oset.c: Include progname.h.
14965         (main): Call set_program_name.
14966
14967         * modules/avltree-list-tests (Depends-on): Add progname.
14968         * tests/test-avltree_list.c: Include progname.h.
14969         (main): Call set_program_name.
14970
14971         * modules/array-oset-tests (Depends-on): Add progname.
14972         * tests/test-array_oset.c: Include progname.h.
14973         (main): Call set_program_name.
14974
14975         * modules/array-list-tests (Depends-on): Add progname.
14976         * tests/test-array_list.c: Include progname.h.
14977         (main): Call set_program_name.
14978
14979         * modules/argp-tests (Depends-on): Add progname.
14980         * tests/test-argp.c: Include argp.h first. Include progname.h.
14981         (main): Call set_program_name.
14982
14983 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
14984
14985         * doc/gnulib-tool.texi (Initial import): Reword description of
14986         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
14987         limited effect even if defined after the first system include.
14988
14989 2007-03-01  Bruno Haible  <bruno@clisp.org>
14990
14991         * build-aux/config.libpath: Update to libtool-1.5.22.
14992         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
14993
14994 2007-03-01  Bruno Haible  <bruno@clisp.org>
14995
14996         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
14997         foo_CFLAGS.
14998         Reported by Ralf Wildenhues.
14999
15000 2007-03-01  Bruno Haible  <bruno@clisp.org>
15001
15002         * build-aux/install-reloc: Remove object files left over by some
15003         compilers.
15004         Reported by Ralf Wildenhues.
15005
15006 2007-03-01  Bruno Haible  <bruno@clisp.org>
15007
15008         * build-aux/install-reloc: Break long lines.
15009
15010 2007-03-01  Bruno Haible  <bruno@clisp.org>
15011
15012         * doc/relocatable.texi: Document that it may not work on OpenBSD.
15013         Reported by Ralf Wildenhues.
15014
15015 2007-03-01  Bruno Haible  <bruno@clisp.org>
15016
15017         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
15018         include ordering constraints.
15019
15020 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
15021
15022         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
15023         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
15024         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
15025         as another example.
15026         * lib/time_.h: Fix misspelling.
15027         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
15028         Require gl_HEADER_TIME_H_DEFAULTS.
15029         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
15030         * m4/time_r.m4 (gl_TIME_R): Likewise.
15031         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
15032
15033 2007-03-01  Bruno Haible  <bruno@clisp.org>
15034
15035         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
15036         * m4/utimens.m4 (gl_UTIMENS): Likewise.
15037
15038 2007-03-01  Jim Meyering  <jim@meyering.net>
15039
15040         * modules/xreadlink (Maintainer): Add my name.
15041         * modules/xreadlink-with-size (Depends-on): Alphabetize.
15042
15043 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
15044             Bruno Haible  <bruno@clisp.org>
15045
15046         * build-aux/install-reloc: Compile also c-ctype.c.
15047         * build-aux/relocatable.sh.in: New file.
15048         * doc/relocatable.texi: New file.
15049         * doc/relocatable-maint.texi: New file.
15050         * doc/gnulib.texi: Include relocatable-maint.texi.
15051         * lib/progreloc.c: Include unistd.h unconditionally.
15052         * lib/relocwrapper.c: Include unistd.h unconditionally.
15053         Include c-ctype.h.
15054         (add_dotbin): Use c_tolower.
15055         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
15056         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
15057         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
15058         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
15059         to m4/relocatable-lib.m4.
15060         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
15061         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
15062         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
15063         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
15064         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
15065         * modules/relocatable: New file.
15066         * modules/relocatable-lib: New file.
15067         * modules/relocatable-script: New file.
15068
15069 2007-02-28  Bruno Haible  <bruno@clisp.org>
15070
15071         Import --enable-relocatable infrastructure.
15072         * build-aux/config.libpath: New file, from GNU gettext.
15073         * build-aux/install-reloc: New file, from GNU gettext.
15074         * build-aux/reloc-ldflags: New file, from GNU gettext.
15075         * lib/relocatable.h: New file, from GNU gettext.
15076         * lib/relocatable.c: New file, from GNU gettext.
15077         * lib/relocwrapper.c: New file, from GNU gettext.
15078         * m4/relocatable.m4: New file, from GNU gettext.
15079
15080 2007-02-28  Bruno Haible  <bruno@clisp.org>
15081
15082         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
15083
15084         * modules/xreadlink: New file, from GNU gettext with modifications.
15085         * lib/xreadlink.c: New file, from GNU gettext.
15086         * lib/xreadlink.h: Add comments.
15087         (xreadlink): New declaration.
15088
15089         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
15090         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
15091         lib/xreadlink-with-size.c.
15092         (configure.ac): Remove gl_XREADLINK invocation.
15093         (Makefile.am): Augment lib_SOURCES.
15094         * m4/xreadlink.m4: Remove file.
15095         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
15096         (xreadlink_with_size): Renamed from xreadink.
15097         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
15098         * modules/canonicalize (Depends-on): Replace xreadlink with
15099         xreadlink-with-size.
15100         * lib/canonicalize.c (canonicalize_filename_mode): Update.
15101
15102 2007-02-25  Jim Meyering  <jim@meyering.net>
15103
15104         * build-aux/announce-gen: When complaining about excess arguments,
15105         list them.
15106
15107 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
15108
15109         * README: Document signed integer overflow situation more
15110         accurately.
15111
15112 2007-02-25  Bruno Haible  <bruno@clisp.org>
15113
15114         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
15115         'a' or 'A' conversion.
15116
15117 2007-02-25  Bruno Haible  <bruno@clisp.org>
15118
15119         * modules/filename: Renamed from modules/pathname.
15120         (Files): Replace lib/pathname.h with lib/filename.h. Replace
15121         lib/concatpath.c with lib/concat-filename.c.
15122         (Makefile.am): Update.
15123         (Include): Replace pathname.h with filename.h.
15124         * lib/filename.h: Renamed from lib/pathname.h.
15125         (concatenated_filename): Renamed from concatenated_pathname.
15126         * lib/concat-filename.c: Renamed from lib/concatpath.c.
15127         (concatenated_filename): Renamed from concatenated_pathname.
15128         * lib/findprog.c: Include filename.h instead of pathname.h.
15129         (find_in_path): Update.
15130         * lib/javacomp.c: Include filename.h instead of pathname.h.
15131         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
15132         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
15133         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
15134         is_oldgcj_14_13_usable, is_javac_usable): Update.
15135         * lib/javaexec.c: Include filename.h instead of pathname.h.
15136         (execute_java_class): Update.
15137         * modules/findprog: Update.
15138         * modules/javacomp: Update.
15139         * modules/javaexec: Update.
15140         * MODULES.html.sh (File system functions): Add 'filename', remove
15141         'pathname'.
15142
15143 2007-02-25  Bruno Haible  <bruno@clisp.org>
15144
15145         * modules/printf-frexpl-tests: New file.
15146         * tests/test-printf-frexpl.c: New file.
15147
15148         * modules/printf-frexpl: New file.
15149         * lib/printf-frexpl.h: New file.
15150         * lib/printf-frexpl.c: New file.
15151         * m4/printf-frexpl.m4: New file.
15152
15153 2007-02-25  Bruno Haible  <bruno@clisp.org>
15154
15155         * modules/printf-frexp-tests: New file.
15156         * tests/test-printf-frexp.c: New file.
15157
15158         * modules/printf-frexp: New file.
15159         * lib/printf-frexp.h: New file.
15160         * lib/printf-frexp.c: New file.
15161         * m4/printf-frexp.m4: New file.
15162
15163 2007-02-25  Bruno Haible  <bruno@clisp.org>
15164
15165         Assume automake >= 1.10 for the tests.
15166         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
15167         * modules/arctwo-tests: Likewise.
15168         * modules/argp-tests: Likewise.
15169         * modules/avltree-list-tests: Likewise.
15170         * modules/avltree-oset-tests: Likewise.
15171         * modules/avltreehash-list-tests: Likewise.
15172         * modules/carray-list-tests: Likewise.
15173         * modules/crc-tests: Likewise.
15174         * modules/des-tests: Likewise.
15175         * modules/gc-arcfour-tests: Likewise.
15176         * modules/gc-arctwo-tests: Likewise.
15177         * modules/gc-des-tests: Likewise.
15178         * modules/gc-hmac-md5-tests: Likewise.
15179         * modules/gc-hmac-sha1-tests: Likewise.
15180         * modules/gc-md2-tests: Likewise.
15181         * modules/gc-md4-tests: Likewise.
15182         * modules/gc-md5-tests: Likewise.
15183         * modules/gc-pbkdf2-sha1-tests: Likewise.
15184         * modules/gc-rijndael-tests: Likewise.
15185         * modules/gc-sha1-tests: Likewise.
15186         * modules/gc-tests: Likewise.
15187         * modules/getaddrinfo-tests: Likewise.
15188         * modules/hmac-md5-tests: Likewise.
15189         * modules/hmac-sha1-tests: Likewise.
15190         * modules/linked-list-tests: Likewise.
15191         * modules/linkedhash-list-tests: Likewise.
15192         * modules/lock-tests: Likewise.
15193         * modules/md2-tests: Likewise.
15194         * modules/md4-tests: Likewise.
15195         * modules/md5-tests: Likewise.
15196         * modules/rbtree-list-tests: Likewise.
15197         * modules/rbtree-oset-tests: Likewise.
15198         * modules/rbtreehash-list-tests: Likewise.
15199         * modules/read-file-tests: Likewise.
15200         * modules/rijndael-tests: Likewise.
15201         * modules/stdint-tests: Likewise.
15202         * modules/tls-tests: Likewise.
15203
15204 2007-02-24  Bruno Haible  <bruno@clisp.org>
15205
15206         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
15207         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
15208         function; instead check whether isnan with a double argument links.
15209         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
15210         function; instead check whether isnan with a 'long double' argument
15211         links.
15212         Reported by Eric Blake <ebb9@byu.net>.
15213
15214 2007-02-24  Bruno Haible  <bruno@clisp.org>
15215
15216         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
15217         defined.
15218         * lib/isnanl.c: Remove all code. Just include isnan.c.
15219         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
15220
15221 2007-02-25  Jim Meyering  <jim@meyering.net>
15222
15223         Avoid conflicting types for 'unsetenv' on FreeBSD.
15224         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
15225         conflicting with FreeBSD's (5.0 and 6.1) function declaration
15226         in stdlib.h.
15227
15228 2007-02-24  Bruno Haible  <bruno@clisp.org>
15229
15230         * modules/isnanl-nolibm-tests: New file.
15231         * tests/test-isnanl.c: New file.
15232
15233         * modules/isnanl-nolibm: New file.
15234         * lib/isnanl.h: New file.
15235         * lib/isnanl.c: New file.
15236         * m4/isnanl.m4: New file.
15237
15238 2007-02-24  Bruno Haible  <bruno@clisp.org>
15239
15240         * modules/isnan-nolibm-tests: New file.
15241         * tests/test-isnan.c: New file.
15242
15243         * modules/isnan-nolibm: New file.
15244         * lib/isnan.h: New file.
15245         * lib/isnan.c: New file.
15246         * m4/isnan.m4: New file.
15247
15248 2007-02-24  Bruno Haible  <bruno@clisp.org>
15249
15250         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
15251         assume that an exponent fits in 20 bits.
15252
15253 2007-02-24  Jim Meyering  <jim@meyering.net>
15254
15255         * m4/regex.m4: Update the description of the configure-time option,
15256         --without-included-regex, to state accurately what the defaults are,
15257         and perhaps to give people an idea why using this option is risky.
15258
15259 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
15260
15261         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
15262         loops on small arguments.  This attempts to avoid the problem
15263         Bruno Haible reported for AIX 4.3.2 in
15264         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
15265
15266 2007-02-23  Bruno Haible  <bruno@clisp.org>
15267
15268         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
15269         Needed for help2man.
15270
15271 2007-02-23  Karl Berry  <karl@gnu.org>
15272
15273         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
15274         exists, foo.h should be cvs-ignored, not committed.
15275
15276 2007-02-23  Eric Blake  <ebb9@byu.net>
15277
15278         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
15279         * lib/stat-time.h (includes): Likewise.
15280         * lib/utimecmp.c (includes): Likewise.
15281         * lib/utimens.h (includes): Likewise.
15282         * lib/getdate.y (includes): Also include "timespec.h" for use
15283         internal to the module.
15284         * modules/utimens (Depends-on): Revert yesterday's patch.
15285         * modules/nanosleep (Depends-on): Add missing dependency.
15286
15287 2007-02-22  Bruno Haible  <bruno@clisp.org>
15288
15289         * lib/glob.c: Don't include getlogin_r.h.
15290
15291 2007-02-22  Jim Meyering  <jim@meyering.net>
15292
15293         * modules/utimens (Depends-on): Add timespec, required for
15294         utimens.h's inclusion of timespec.h.
15295
15296 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
15297
15298         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
15299         long unreadable paths in GNU/Linux.  Problem reported by Andreas
15300         Schwab in
15301         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
15302         I'll try to think of a better way to fix the Solaris problem.
15303
15304         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
15305         like glibc; on Solaris 10, it fails with errno == EINVAL.
15306         POSIX says the behavior is unspecified if the first argument is NULL,
15307         so play it safe and never pass NULL to the system getcwd.
15308
15309 2007-02-21  Jim Meyering  <jim@meyering.net>
15310
15311         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
15312         of gettimeofday.  It would conflict with the one now always
15313         provided via sys_time_.h.  Reported by Matthew Woehlke, as
15314         an IRIX 6.5 build failure.
15315
15316 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
15317
15318         Minor fixups to port to Solaris 10 with Sun C 5.8.
15319         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
15320         * modules/getcwd (Depends-on): Add dirfd.
15321         * lib/putenv.c (putenv): #undef it.
15322         (rpl_putenv): New decl.
15323         (malloc, free): Include <stdlib.h> rather than prototyping separately.
15324
15325 2007-02-20  Bruno Haible  <bruno@clisp.org>
15326
15327         * modules/stdio-tests: New file.
15328         * tests/test-stdio.c: New file.
15329
15330         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
15331         (Depends-on): Add stdio.
15332         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
15333         (Include): Use <stdio.h> instead of vsnprintf.h.
15334         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
15335         HAVE_DECL_VSNPRINTF.
15336         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
15337
15338         * modules/snprintf (Files): Remove lib/snprintf.h.
15339         (Depends-on): Add stdio.
15340         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
15341         (Include): Use <stdio.h> instead of snprintf.h.
15342         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
15343         HAVE_DECL_SNPRINTF.
15344         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
15345         * lib/getaddrinfo.c: Likewise.
15346
15347         * modules/stdio: New file.
15348         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
15349         * lib/snprintf.h: Remove file.
15350         * lib/vsnprintf.h: Remove file.
15351         * lib/.cppi-disable: Remove snprintf.h.
15352         * m4/stdio_h.m4: New file.
15353         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
15354
15355 2007-02-20  Jim Meyering  <jim@meyering.net>
15356
15357         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
15358         used by e.g., mingw.  From Bruno Haible.
15359
15360 2007-02-19  Bruno Haible  <bruno@clisp.org>
15361
15362         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
15363         warnings.
15364         Reported by Ben Pfaff <blp@cs.stanford.edu>.
15365
15366 2007-02-19  Bruno Haible  <bruno@clisp.org>
15367
15368         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
15369         from mingw users.
15370
15371 2007-02-19  Bruno Haible  <bruno@clisp.org>
15372
15373         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
15374         warnings.
15375         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
15376
15377 2007-02-19  Jim Meyering  <jim@meyering.net>
15378
15379         Don't use FD after a successful "fdopendir (fd)".
15380         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
15381         Reset it by calling dirfd on the just-obtained DIR*.
15382
15383         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
15384         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
15385
15386 2007-02-18  Bruno Haible  <bruno@clisp.org>
15387
15388         * lib/readlink.c: Include <unistd.h>.
15389         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
15390         HAVE_READLINK.
15391         * modules/readlink (Depends-on): Add unistd.
15392         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15393         (Include): Add <unistd.h>.
15394
15395         * lib/getlogin_r.h: Remove file.
15396         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
15397         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
15398         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
15399         HAVE_DECL_GETLOGIN_R.
15400         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
15401         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15402         (Include): Use <unistd.h> instead of getlogin_r.h.
15403
15404         * lib/getcwd.h: Remove file.
15405         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
15406         * lib/xgetcwd.c: Likewise.
15407         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
15408         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
15409         * modules/getcwd (Files): Remove lib/getcwd.h.
15410         (Depends-on): Add unistd.
15411         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15412         (Include): Use <unistd.h> instad of getcwd.h.
15413
15414         * lib/ftruncate.c: Include <unistd.h> first.
15415         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
15416         Set HAVE_FTRUNCATE.
15417         * modules/ftruncate (Depends-on): Add unistd.
15418         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15419
15420         * lib/fchdir.c: Include <unistd.h> first.
15421         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
15422         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
15423         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
15424         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15425         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
15426
15427         * lib/dup2.c: Include <unistd.h> first.
15428         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
15429         HAVE_DUP2.
15430         * modules/dup2 (Depends-on): Add unistd.
15431         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15432
15433         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
15434         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
15435         REPLACE_CHOWN. Don't define chown as a macro here.
15436         * modules/chown (Depends-on): Add unistd.
15437         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15438
15439         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
15440         Add definition for GL_LINK_WARNING.
15441         (chown, dup2): New declarations.
15442         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
15443         link warning.
15444         (ftruncate): New declaration.
15445         (getcwd): New declaration, taken from old getcwd.h.
15446         (getlogin_r): New declaration, taken from old getlogin_r.h.
15447         (readlink): New declaration.
15448         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
15449         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
15450         (gl_PREREQ_UNISTD): Remove macro.
15451         (gl_UNISTD_MODULE_INDICATOR): New macro.
15452         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
15453         many new variables. Don't set UNISTD_H.
15454         * modules/unistd (Description): Change.
15455         (Depends-on): Add link-warning.
15456         (configure.ac): Update.
15457         (Makefile.am): Create unistd.h always. Substitute many new variables
15458         into it.
15459
15460 2007-02-18  Bruno Haible  <bruno@clisp.org>
15461
15462         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
15463         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
15464         HAVE_GETSUBOPT.
15465         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
15466         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
15467         * lib/getsubopt.h: Remove file.
15468         * modules/getsubopt (Files): Remove lib/getsubopt.h.
15469         (Depends-on): Add stdlib.
15470         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
15471         (Includes): Use <stdlib.h> instead of getsubopt.h.
15472         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
15473         Set HAVE_GETSUBOPT.
15474         * lib/getsubopt.c: Don't include getsubopt.h.
15475
15476 2007-02-18  Bruno Haible  <bruno@clisp.org>
15477
15478         * modules/fchdir (Depends-on): Add dup2.
15479
15480 2007-02-18  Bruno Haible  <bruno@clisp.org>
15481
15482         * lib/stdlib_.h: Handle glibc's special invocation convention
15483         specially.
15484
15485 2007-02-18  Bruno Haible  <bruno@clisp.org>
15486
15487         * modules/stdlib-tests: New file.
15488         * tests/test-stdlib.c: New file.
15489
15490         * modules/mkstemp (Files): Remove lib/mkstemp.h.
15491         (Depends-on): Add stdlib.
15492         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
15493         (Includes): Use <stdlib.h> instead of mkstemp.h.
15494         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
15495         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
15496         * lib/mkstemp.c: Don't include mkstemp.h.
15497         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
15498         * lib/stdlib--.h: Don't include mkstemp.h.
15499
15500         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
15501         (Depends-on): Add stdlib.
15502         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
15503         (Includes): Use <stdlib.h> instead of mkdtemp.h.
15504         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
15505         HAVE_MKDTEMP.
15506         * lib/mkdtemp.c: Don't include mkdtemp.h.
15507         * lib/clean-temp.c: Don't include mkdtemp.h.
15508
15509         * modules/exit (Files): Remove lib/exit.h.
15510         (Depends-on): Add stdlib.
15511         (Makefile.am): Remove lib_SOURCES.
15512         (Include): Use <stdlib.h> instead of exit.h.
15513         * lib/argmatch.c: Don't include exit.h.
15514         * lib/execute.c: Likewise.
15515         * lib/pagealign_alloc.c: Likewise.
15516         * lib/pipe.c: Likewise.
15517         * lib/wait-process.c: Likewise.
15518         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
15519         * lib/exitfail.c: Likewise.
15520         * lib/savewd.c: Likewise.
15521         * lib/xsetenv.c: Likewise.
15522
15523         * modules/stdlib: New file.
15524         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
15525         and extra comments about mkstemp().
15526         * lib/exit.h: Remove file.
15527         * lib/mkdtemp.h: Remove file.
15528         * lib/mkstemp.h: Remove file.
15529         * m4/stdlib_h.m4: New file.
15530         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
15531
15532 2007-02-18  Bruno Haible  <bruno@clisp.org>
15533
15534         * modules/math-tests: New file.
15535         * tests/test-math.c: New file.
15536
15537         * modules/math: New file.
15538         * modules/mathl (Files): Remove lib/mathl.h.
15539         (Depends-on): Add math.
15540         (Makefile.am): Don't mention mathl.h.
15541         (Include): Use <math.h> instead of mathl.h.
15542         * lib/math_.h: New file.
15543         * lib/mathl.h: Remove file.
15544         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
15545         mathl.h.
15546         * lib/asinl.c: Likewise.
15547         * lib/atanl.c: Likewise.
15548         * lib/ceill.c: Likewise.
15549         * lib/cosl.c: Likewise.
15550         * lib/expl.c: Likewise.
15551         * lib/floorl.c: Likewise.
15552         * lib/frexpl.c: Likewise.
15553         * lib/ldexpl.c: Likewise.
15554         * lib/logl.c: Likewise.
15555         * lib/sincosl.c: Likewise.
15556         * lib/sinl.c: Likewise.
15557         * lib/sqrtl.c: Likewise.
15558         * lib/tanl.c: Likewise.
15559         * lib/trigl.c: Likewise.
15560         * m4/math_h.m4: New file.
15561         * MODULES.html.sh (Mathematics): Add math.
15562
15563 2007-02-17  Bruno Haible  <bruno@clisp.org>
15564
15565         * modules/wctype-tests: New file.
15566         * tests/test-wctype.c: New file.
15567
15568         * modules/wchar-tests: New file.
15569         * tests/test-wchar.c: New file.
15570
15571         * modules/unistd-tests: New file.
15572         * tests/test-unistd.c: New file.
15573
15574         * modules/time-tests: New file.
15575         * tests/test-time.c: New file.
15576
15577         * modules/sysexits-tests: New file.
15578         * tests/test-sysexits.c: New file.
15579
15580         * modules/sys_time-tests: New file.
15581         * tests/test-sys_time.c: New file.
15582
15583         * modules/sys_stat-tests: New file.
15584         * tests/test-sys_stat.c: New file.
15585
15586         * modules/sys_socket-tests: New file.
15587         * tests/test-sys_socket.c: New file.
15588
15589         * modules/sys_select-tests: New file.
15590         * tests/test-sys_select.c: New file.
15591
15592         * modules/string-tests: New file.
15593         * tests/test-string.c: New file.
15594
15595         * modules/stdbool-tests: New file.
15596         * tests/test-stdbool.c: New file.
15597
15598         * modules/netinet_in-tests: New file.
15599         * tests/test-netinet_in.c: New file.
15600
15601         * modules/inttypes-tests: New file.
15602         * tests/test-inttypes.c: New file.
15603
15604         * modules/fcntl-tests: New file.
15605         * tests/test-fcntl.c: New file.
15606
15607         * modules/byteswap-tests: New file.
15608         * tests/test-byteswap.c: New file.
15609
15610         * modules/arpa_inet-tests: New file.
15611         * tests/test-arpa_inet.c: New file.
15612
15613 2007-02-17  Bruno Haible  <bruno@clisp.org>
15614
15615         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
15616         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
15617         if the corresponding module is not enabled. Emit link warnings if
15618         the function is used nevertheless.
15619         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
15620         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
15621         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
15622         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
15623         * modules/inttypes (Depends-on): Add link-warning.
15624         (Makefile.am): Copy the contents of build-aux/link-warning.h into
15625         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
15626         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
15627         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
15628         * modules/imaxdiv (configure.ac): Likewise.
15629         * modules/strtoimax (configure.ac): Likewise.
15630         * modules/strtoumax (configure.ac): Likewise.
15631
15632 2007-02-17  Bruno Haible  <bruno@clisp.org>
15633
15634         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
15635         gl_STRING_MODULE_INDICATOR_DEFAULTS.
15636         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
15637         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
15638
15639 2007-02-17  Bruno Haible  <bruno@clisp.org>
15640
15641         * modules/link-warning: New file.
15642         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
15643         * lib/string_.h (GL_LINK_WARNING): Remove definition.
15644         * modules/string (Depends-on): Add link-warning.
15645         (Makefile.am): Copy the contents of build-aux/link-warning.h into
15646         string.h.
15647         * MODULES.html.sh (Support for building libraries and executables): Add
15648         link-warning.
15649
15650 2007-02-17  Bruno Haible  <bruno@clisp.org>
15651
15652         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
15653         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
15654         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
15655         long lines.
15656
15657 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
15658             Bruno Haible  <bruno@clisp.org>
15659
15660         * modules/tmpfile: New file.
15661         * lib/tmpfile.c: New file.
15662         * m4/tmpfile.m4: New file.
15663         * MODULES.html.sh (func_all_modules): New section "Input/output".
15664
15665 2007-02-15  Bruno Haible  <bruno@clisp.org>
15666
15667         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
15668         (supports_delete_on_close): New function.
15669         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
15670
15671 2007-02-14  Bruno Haible  <bruno@clisp.org>
15672
15673         * modules/mbspcasecmp-tests: New file.
15674         * tests/test-mbspcasecmp.sh: New file.
15675         * tests/test-mbspcasecmp.c: New file.
15676
15677         New module mbspcasecmp.
15678         * modules/mbspcasecmp: New file.
15679         * lib/mbspcasecmp.c: New file.
15680         * lib/string_.h (strncasecmp): Change warning message.
15681         (mbspcasecmp): New declaration.
15682         * m4/mbspcasecmp.m4: New file.
15683         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15684         GNULIB_MBSPCASECMP.
15685         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
15686         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
15687
15688 2007-02-14  Bruno Haible  <bruno@clisp.org>
15689
15690         * modules/mbsncasecmp-tests: New file.
15691         * tests/test-mbsncasecmp.sh: New file.
15692         * tests/test-mbsncasecmp.c: New file.
15693
15694         New module mbsncasecmp.
15695         * modules/mbsncasecmp: New file.
15696         * lib/mbsncasecmp.c: New file.
15697         * lib/string_.h (mbsncasecmp): New declaration.
15698         * m4/mbsncasecmp.m4: New file.
15699         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15700         GNULIB_MBSNCASECMP.
15701         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
15702         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
15703
15704 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
15705
15706         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
15707         Verify that it doesn't overlap with our flags.
15708         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
15709         do not have the desired effect in multibyte locales; instead, use
15710         mbscasecmp.
15711         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
15712         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
15713         we don't require GNU fnmatch ourselves (if our users require it, they
15714         should do so explicitly).
15715
15716         Fix regex code so it doesn't rely on strcasecmp.
15717         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
15718         Otherwise, include gnulib's langinfo.h.
15719         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
15720         undesirable behavior in non-C locales.  Instead, rely on localecharset.
15721         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
15722         * modules/regex (FILES): Remove m4/codeset.m4.
15723         (Depends-on): Add localcharset.  Remove strcase.
15724
15725 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15726
15727         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
15728         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
15729
15730 2007-02-13  Bruno Haible  <bruno@clisp.org>
15731
15732         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
15733         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15734
15735 2007-02-12  Bruno Haible  <bruno@clisp.org>
15736
15737         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
15738         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
15739         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
15740         time warning rather than a link error.
15741
15742 2007-02-12  Bruno Haible  <bruno@clisp.org>
15743
15744         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
15745         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
15746         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15747
15748 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
15749
15750         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
15751         args, not 2.
15752
15753 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
15754
15755         New module 'time', so that apps can include <time.h> as per
15756         POSIX and GNU instead of separate include files like time_r.h
15757         and timegm.h.  This implementation tries out a simpler approach
15758         for replacing decls in standard include files (as compared to
15759         the string module), somewhat as an experiment.
15760
15761         * config/srclist.txt: Comment out mktime.c for now.
15762         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
15763         since it doesn't apply any more.  Use generic wording instead.
15764         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
15765         'time'.
15766         * lib/time_.h, m4/time_h.m4, modules/time: New files.
15767         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
15768         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
15769         Don't include <sys/types.h>; no longer needed since we assume C89.
15770         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
15771         * lib/strftime.c: Likewise.
15772         * lib/time_r.c: Likewise.
15773         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
15774         * lib/nanosleep.c: Include <time.h> first, to check interface.
15775         * lib/strptime.c: Likewise.
15776         * lib/time_r.c: Likewise.
15777         * lib/timegm.c: Likewise.
15778         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
15779         needed.
15780         * lib/timegm.c: Don't include timegm.h; no longer needed.
15781         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
15782         time.h now handles any problems in that area.
15783         (struct timespec, nanosleep): Remove; time.h now arranges for these.
15784         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
15785         that time.h defines struct timespec.
15786         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
15787         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
15788         handles that.
15789         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
15790         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
15791         needed.  Set REPLACE_LOCALTIME.
15792         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
15793         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
15794         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
15795         nanosleep; time_h.m4 now does that.  Don't require
15796         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
15797         module handles this now.
15798         * modules/getdate (Depends-on): Remove timespec.  Add time.
15799         * modules/nanosleep (Depends-on): Likewise.
15800         * modules/stat-time (Depends-on): Likewise.
15801         * modules/nanosleep (Include): Include time.h, not timespec.h.
15802         * modules/strptime (Files): Remove lib/strptime.h.
15803         (Depends-on): Add extensions, time.
15804         (Include): Include time.h, not strptime.h.
15805         * modules/time_r (Files): Remove lib/time_r.h.
15806         (Depends-on): Add time.
15807         (Include): Include time.h, not time_r.h.
15808         * modules/timegm: Likewise.
15809         * modules/timespec (Description): Now does timespec-related decls
15810         of our own, instead of struct timespec itself.
15811         (Depends-on): Add time; remove extensions.
15812         (Maintainer): Add self.
15813         * modules/utimecmp (Depends-on): Add time; remove timespec.
15814         * modules/utimens (Depends-on): Likewise.
15815         * modules/xnanosleep (Depends-on): Likewise.
15816
15817 2007-02-11  Bruno Haible  <bruno@clisp.org>
15818
15819         * lib/c-strstr.c: Include allocsa.h.
15820         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
15821         * lib/c-strcasestr.c: Include allocsa.h.
15822         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
15823         * lib/strcasestr.c: Include allocsa.h.
15824         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
15825         * lib/mbsstr.c: Include allocsa.h.
15826         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
15827         allocsa/freesa instead of malloc/free.
15828         * lib/mbscasestr.c: Include allocsa.h.
15829         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
15830         allocsa/freesa instead of malloc/free.
15831         * modules/c-strstr (Depends-on): Add allocsa.
15832         * modules/c-strcasestr (Depends-on): Likewise.
15833         * modules/strcasestr (Depends-on): Likewise.
15834         * modules/mbsstr (Depends-on): Likewise.
15835         * modules/mbscasestr (Depends-on): Likewise.
15836
15837 2007-02-11  Bruno Haible  <bruno@clisp.org>
15838
15839         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
15840
15841         * modules/mbsspn-tests: New file.
15842         * tests/test-mbsspn.sh: New file.
15843         * tests/test-mbsspn.c: New file.
15844
15845 2007-02-11  Bruno Haible  <bruno@clisp.org>
15846
15847         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
15848
15849         * modules/mbspbrk-tests: New file.
15850         * tests/test-mbspbrk.sh: New file.
15851         * tests/test-mbspbrk.c: New file.
15852
15853 2007-02-11  Bruno Haible  <bruno@clisp.org>
15854
15855         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
15856         unneeded cast.
15857
15858         * modules/mbscspn-tests: New file.
15859         * tests/test-mbscspn.sh: New file.
15860         * tests/test-mbscspn.c: New file.
15861
15862 2007-02-11  Bruno Haible  <bruno@clisp.org>
15863
15864         * modules/mbscasecmp-tests: New file.
15865         * tests/test-mbscasecmp.sh: New file.
15866         * tests/test-mbscasecmp.c: New file.
15867
15868 2007-02-11  Bruno Haible  <bruno@clisp.org>
15869
15870         Ensure O(n) worst-case complexity of mbscasestr.
15871         * lib/mbscasestr.c: Include stdbool.h.
15872         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
15873         functions.
15874         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
15875         the bookkeeping indicates that it's worth it.
15876         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
15877
15878         * modules/mbscasestr-tests: New file.
15879         * tests/test-mbscasestr1.c: New file.
15880         * tests/test-mbscasestr2.sh: New file.
15881         * tests/test-mbscasestr2.c: New file.
15882         * tests/test-mbscasestr3.sh: New file.
15883         * tests/test-mbscasestr3.c: New file.
15884         * tests/test-mbscasestr4.sh: New file.
15885         * tests/test-mbscasestr4.c: New file.
15886         * m4/locale-tr.m4: New file.
15887
15888 2007-02-11  Bruno Haible  <bruno@clisp.org>
15889
15890         Ensure O(n) worst-case complexity of mbsstr.
15891         * lib/mbsstr.c: Include stdbool.h.
15892         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
15893         functions.
15894         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
15895         bookkeeping indicates that it's worth it.
15896         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
15897
15898         * modules/mbsstr-tests: New file.
15899         * tests/test-mbsstr1.c: New file.
15900         * tests/test-mbsstr2.sh: New file.
15901         * tests/test-mbsstr2.c: New file.
15902         * tests/test-mbsstr3.sh: New file.
15903         * tests/test-mbsstr3.c: New file.
15904         * m4/locale-fr.m4: New file.
15905
15906 2007-02-11  Bruno Haible  <bruno@clisp.org>
15907
15908         * lib/mbsrchr.c (mbsrchr): Fix bug.
15909
15910         * modules/mbsrchr-tests: New file.
15911         * tests/test-mbsrchr.sh: New file.
15912         * tests/test-mbsrchr.c: New file.
15913
15914 2007-02-11  Bruno Haible  <bruno@clisp.org>
15915
15916         * lib/mbschr.c (mbschr): Fix bug.
15917
15918         * modules/mbschr-tests: New file.
15919         * tests/test-mbschr.sh: New file.
15920         * tests/test-mbschr.c: New file.
15921         * m4/locale-zh.m4: New file.
15922
15923 2007-02-11  Bruno Haible  <bruno@clisp.org>
15924
15925         Support for copying multibyte string iterators.
15926         * lib/mbiter.h: Include <string.h>.
15927         (mbiter_multi_copy): New function.
15928         (mbi_copy): New macro.
15929         * lib/mbuiter.h: Include <string.h>.
15930         (mbuiter_multi_copy): New function.
15931         (mbui_copy): New macro.
15932
15933 2007-02-11  Bruno Haible  <bruno@clisp.org>
15934
15935         New module mbslen.
15936         * modules/mbslen: New file.
15937         * lib/mbslen.c: New file.
15938         * lib/string_.h (mbslen): New declaration.
15939         * m4/mbslen.m4: New file.
15940         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15941         GNULIB_MBSLEN.
15942         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
15943         * MODULES.html.sh (Internationalization functions): Add mbslen.
15944
15945 2007-02-11  Bruno Haible  <bruno@clisp.org>
15946
15947         Ensure O(n) worst-case complexity of strcasestr substitute.
15948         * lib/strcasestr.c: Include stdbool.h.
15949         (knuth_morris_pratt): New function.
15950         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
15951         bookkeeping indicates that it's worth it.
15952         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
15953
15954         * modules/strcasestr-tests: New file.
15955         * tests/test-strcasestr.c: New file.
15956
15957 2007-02-11  Bruno Haible  <bruno@clisp.org>
15958
15959         Ensure O(n) worst-case complexity of c_strcasestr.
15960         * lib/c-strcasestr.c: Include stdbool.h, string.h.
15961         (knuth_morris_pratt): New function.
15962         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
15963         the bookkeeping indicates that it's worth it.
15964         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
15965
15966         * modules/c-strcasestr-tests: New file.
15967         * tests/test-c-strcasestr.c: New file.
15968
15969 2007-02-11  Bruno Haible  <bruno@clisp.org>
15970
15971         Ensure O(n) worst-case complexity of c_strstr.
15972         * lib/c-strstr.c: Include stdbool.h, string.h.
15973         (knuth_morris_pratt): New function.
15974         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
15975         bookkeeping indicates that it's worth it.
15976         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
15977
15978         * lib/c-strstr.c: Complete rewrite for maintainability.
15979
15980         * modules/c-strstr-tests: New file.
15981         * tests/test-c-strstr.c: New file.
15982
15983 2007-02-11  Bruno Haible  <bruno@clisp.org>
15984
15985         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
15986         5.2.1 and earlier, whereby \055 was treated just like the range
15987         delimiter '-'.
15988         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
15989
15990 2007-02-08  Bruno Haible  <bruno@clisp.org>
15991
15992         * modules/regex (Depends-on): Add stdbool.
15993         Reported by Dalibor Topic <robilad@kaffe.org>.
15994
15995 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
15996
15997         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
15998         Prefer returning from main to exiting from it.
15999         Remove unnecessary parens after sizeof.
16000
16001 2007-02-05  Bruno Haible  <bruno@clisp.org>
16002
16003         New module mbssep.
16004         * modules/mbssep: New file.
16005         * lib/mbssep.c: New file.
16006         * lib/string_.h (strsep): Add a conditional link warning.
16007         (mbssep): New declaration.
16008         * m4/mbssep.m4: New file.
16009         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16010         GNULIB_MBSSEP.
16011         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
16012         * MODULES.html.sh (Internationalization functions): Add mbssep.
16013
16014 2007-02-05  Bruno Haible  <bruno@clisp.org>
16015
16016         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
16017         Optimize search in case of 1 delimiter.
16018
16019 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
16020
16021         * lib/acl.h: Include sys/types.h before sys/acl.h.
16022
16023 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
16024
16025         Merge upstream fix for glibc bugzilla #3957:
16026
16027         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
16028
16029         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
16030         bit for RE_HAT_LISTS_NOT_NEWLINE.
16031         (build_charclass_op): Remove bogus comment.
16032
16033 2007-02-05  Simon Josefsson  <simon@josefsson.org>
16034
16035         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
16036
16037 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
16038
16039         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
16040         * lib/memmem.c [!defined _LIBC]: Include config.h.
16041
16042 2007-02-04  Bruno Haible  <bruno@clisp.org>
16043
16044         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
16045         warning message.
16046
16047 2007-02-04  Bruno Haible  <bruno@clisp.org>
16048
16049         New module mbstok_r.
16050         * modules/mbstok_r: New file.
16051         * lib/mbstok_r.c: New file.
16052         * lib/string_.h (strtok_r): Change argument names to match the
16053         comments. Add a conditional link warning.
16054         (mbstok_r): New declaration.
16055         * m4/mbstok_r.m4: New file.
16056         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16057         GNULIB_MBSTOK_R.
16058         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
16059         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
16060
16061 2007-02-04  Bruno Haible  <bruno@clisp.org>
16062
16063         New module mbsspn.
16064         * modules/mbsspn: New file.
16065         * lib/mbsspn.c: New file.
16066         * lib/string_.h (strspn): Add a conditional link warning.
16067         (mbsspn): New declaration.
16068         * m4/mbsspn.m4: New file.
16069         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16070         GNULIB_MBSSPN.
16071         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
16072         * MODULES.html.sh (Internationalization functions): Add mbsspn.
16073
16074 2007-02-04  Bruno Haible  <bruno@clisp.org>
16075
16076         New module mbspbrk.
16077         * modules/mbspbrk: New file.
16078         * lib/mbspbrk.c: New file.
16079         * lib/string_.h (strpbrk): Add a conditional link warning.
16080         (mbspbrk): New declaration.
16081         * m4/mbspbrk.m4: New file.
16082         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16083         GNULIB_MBSPBRK.
16084         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
16085         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
16086
16087 2007-02-04  Bruno Haible  <bruno@clisp.org>
16088
16089         New module mbscspn.
16090         * modules/mbscspn: New file.
16091         * lib/mbscspn.c: New file.
16092         * lib/string_.h (strcspn): Add a conditional link warning.
16093         (mbscspn): New declaration.
16094         * m4/mbscspn.m4: New file.
16095         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16096         GNULIB_MBSCSPN.
16097         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
16098         * MODULES.html.sh (Internationalization functions): Add mbscspn.
16099
16100 2007-02-04  Bruno Haible  <bruno@clisp.org>
16101
16102         New module mbscasestr, reduced goal of strcasestr.
16103         * modules/mbscasestr: New file.
16104         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
16105         (mbscasestr): Renamed from strcasestr.
16106         * lib/strcasestr.c: Don't include mbuiter.h.
16107         (strcasestr): Remove support for multibyte locales.
16108         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
16109         Change the conditional link warning.
16110         (mbscasestr): New declaration.
16111         * m4/mbscasestr.m4: New file.
16112         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
16113         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
16114         REPLACE_STRCASESTR.
16115         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
16116         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16117         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
16118         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
16119         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
16120         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
16121         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
16122         (Depends-on): Remove mbuiter.
16123         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
16124
16125 2007-02-04  Bruno Haible  <bruno@clisp.org>
16126
16127         Simplify handling of strncasecmp.
16128         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
16129         the conditional link warning.
16130         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16131         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
16132         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
16133         * modules/strcase (configure.ac): Don't invoke
16134         gl_STRING_MODULE_INDICATOR.
16135         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
16136
16137 2007-02-04  Bruno Haible  <bruno@clisp.org>
16138
16139         New module mbscasecmp, reduced goal of strcasecmp.
16140         * modules/mbscasecmp: New file.
16141         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
16142         (mbscasecmp): Renamed from strcasecmp.
16143         * lib/strcasecmp.c: Don't include mbuiter.h.
16144         (strcasecmp): Remove support for multibyte locales.
16145         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
16146         Change the conditional link warning.
16147         (mbscasecmp): New declaration.
16148         * m4/mbscasecmp.m4: New file.
16149         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
16150         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
16151         REPLACE_STRCASECMP.
16152         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
16153         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16154         GNULIB_MBSCASECMP.
16155         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
16156         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
16157         * modules/strcase (Files): Remove m4/mbrtowc.m4.
16158         (Depends-on): Remove mbuiter.
16159         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
16160
16161 2007-02-04  Bruno Haible  <bruno@clisp.org>
16162
16163         New module mbsstr. Remove module strstr.
16164         * modules/mbsstr: New file.
16165         * modules/strstr: Remove file.
16166         * lib/mbsstr.c: Renamed from lib/strstr.c.
16167         (mbsstr): Renamed from strstr.
16168         * lib/string_.h (strstr): Remove declaration. Change the conditional
16169         link warning.
16170         (mbsstr): New declaration.
16171         * m4/mbsstr.m4: New file.
16172         * m4/strstr.m4: Remove file.
16173         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
16174         REPLACE_STRSTR.
16175         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
16176         Don't initialize GNULIB_STRSTR.
16177         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
16178         substitute GNULIB_STRSTR and REPLACE_STRSTR.
16179         * MODULES.html.sh (Internationalization functions): Add mbsstr.
16180         (Support for systems lacking ANSI C 89): Remove strstr.
16181
16182 2007-02-04  Bruno Haible  <bruno@clisp.org>
16183
16184         New module mbsrchr.
16185         * modules/mbsrchr: New file.
16186         * lib/mbsrchr.c: New file.
16187         * lib/string_.h (strrchr): Add a conditional link warning.
16188         (mbsrchr): New declaration.
16189         * m4/mbsrchr.m4: New file.
16190         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16191         GNULIB_MBSRCHR.
16192         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
16193         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
16194
16195 2007-02-04  Bruno Haible  <bruno@clisp.org>
16196
16197         New module mbschr.
16198         * modules/mbschr: New file.
16199         * lib/mbschr.c: New file.
16200         * lib/string_.h (strchr): Add a conditional link warning.
16201         (mbschr): New declaration.
16202         * m4/mbschr.m4: New file.
16203         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16204         GNULIB_MBSCHR.
16205         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
16206         * MODULES.html.sh (Internationalization functions): Add mbschr.
16207
16208 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
16209
16210         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
16211
16212         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
16213
16214 2007-02-04  Bruno Haible  <bruno@clisp.org>
16215
16216         New module description section 'configure.ac-early'.
16217         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
16218         (func_get_autoconf_early_snippet): New function.
16219         (func_import, func_create_testdir): Use it. Remove special cases for
16220         modules 'extensions' and 'lock'.
16221         * modules/extensions (configure.ac-early): Require
16222         gl_USE_SYSTEM_EXTENSIONS.
16223         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
16224
16225 2007-02-04  Bruno Haible  <bruno@clisp.org>
16226
16227         Make use of gcj-4.3's -fsource and -ftarget option.
16228         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
16229         and if so try the options -fsource and -ftarget.
16230         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
16231         source_version, ftarget_option, target_version arguments.
16232         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
16233         (is_envjavac_oldgcj_14_14_usable): Renamed from
16234         is_envjavac_gcj_14_14_usable.
16235         (is_envjavac_oldgcj_14_13_usable): Renamed from
16236         is_envjavac_gcj_14_13_usable.
16237         (is_gcj_present): Update.
16238         (is_gcj_43, is_gcj43_usable): New functions.
16239         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
16240         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
16241         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
16242         try the options -fsource and -ftarget.
16243
16244 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
16245
16246         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
16247         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
16248         larger value.
16249
16250 2007-02-03  Jim Meyering  <jim@meyering.net>
16251
16252         Give tools a better chance to allocate space for very large buffers.
16253         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
16254
16255         Make pwd and readlink work also when run with an unreadable parent dir
16256         on systems with openat support.
16257         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
16258         provided getcwd function, even when we have openat support.
16259         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
16260
16261 2007-02-02  Bruno Haible  <bruno@clisp.org>
16262
16263         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
16264         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
16265         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
16266         portability problems if one of these functions is only used on specific
16267         platforms.
16268         Reported by Paul Eggert.
16269
16270 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
16271
16272         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
16273         is causing more trouble than it's curing.
16274         * lib/regex_internal.h (__mempcpy): Remove.
16275         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
16276         (and make the code a tad smaller to boot).
16277         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
16278
16279 2007-02-02  Jim Meyering  <jim@meyering.net>
16280
16281         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
16282         section, not in the Makefile.am: one.
16283
16284 2007-02-02  Eric Blake  <ebb9@byu.net>
16285
16286         * lib/strchrnul.c: Always include config.h first.
16287
16288         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
16289         gnulib strstr is not necessary here.
16290
16291 2007-02-02  Simon Josefsson  <simon@josefsson.org>
16292
16293         * m4/socklen.m4: Fix typo.
16294
16295 2007-02-02  Eric Blake  <ebb9@byu.net>
16296
16297         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
16298         * modules/netinet_in (Makefile.am): Likewise.
16299
16300 2007-02-01  Bruno Haible  <bruno@clisp.org>
16301
16302         * lib/string_.h (GL_LINK_WARNING): New macro.
16303         (strcasecmp, strstr, strcasestr): If provided by the system,
16304         conditionally define as a macro that leads to a warning instead of to
16305         an error.
16306         (strncasecmp): Conditionally define as a macro that leads to a warning.
16307
16308 2007-02-01  Karl Berry  <karl@gnu.org>
16309
16310         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
16311
16312 2007-02-01  Bruno Haible  <bruno@clisp.org>
16313
16314         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
16315         renamings.
16316
16317 2007-02-01  Eric Blake  <ebb9@byu.net>
16318
16319         * modules/regex (Depends-on): Revert dependence on mempcpy.
16320         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
16321         module's definition of mempcpy.
16322         Reported by Paul Eggert.
16323
16324 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
16325
16326         * lib/string_.h: If the gnulib module XYZ is not present, undefine
16327         the symbol XYZ before redefining it.  This fixes a problem with
16328         programs that don't use XYZ, when compiled on systems that define
16329         XYZ to something else.
16330
16331 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
16332
16333         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
16334         occurs when "mkdir -m foo" creates a setgid directory that is (1)
16335         writeable to group or other and (2) is intended to have a special
16336         mode bit that is set or cleared.  In such a case, the directory
16337         should be neither group- nor other-writeable until the special
16338         mode bits are right.
16339
16340 2007-01-31  Eric Blake  <ebb9@byu.net>
16341
16342         * modules/mountlist (Depends-on): Add strstr.
16343
16344         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
16345         bug.
16346         * modules/string (Makefile.am): Remove redundant replacement.
16347         * modules/regex (Depends-on): Add mempcpy.
16348
16349 2007-01-31  Bruno Haible  <bruno@clisp.org>
16350
16351         New module description field 'Link'.
16352         * gnulib-tool (func_usage): Document --extract-link-directive.
16353         (sed_extract_prog): Recognize 'Link' directive.
16354         (func_get_link_directive): New function.
16355         (func_import): Show summary of link directives.
16356         Handle --extract-link-directive option.
16357         * modules/acl (Link): New section.
16358         * modules/clock-time (Link): New section.
16359         * modules/euidaccess (Link): New section.
16360         * modules/gettext (Link): New section.
16361         * modules/iconv (Link): New section.
16362         * modules/lock (Link): New section.
16363         * modules/nanosleep (Link): New section.
16364         * modules/readline (Link): New section.
16365
16366 2007-01-27  Bruno Haible  <bruno@clisp.org>
16367
16368         Enforce the use of gnulib modules for unportable <string.h> functions.
16369         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
16370         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
16371         (gl_HEADER_STRING_H_BODY): Require it.
16372         * lib/string_.h: If the gnulib module XYZ is not present, redefine
16373         the symbol XYZ to one that gives a link error.
16374         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
16375         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
16376         * modules/mempcpy (configure.ac): Likewise.
16377         * modules/memrchr (configure.ac): Likewise.
16378         * modules/stpcpy (configure.ac): Likewise.
16379         * modules/stpncpy (configure.ac): Likewise.
16380         * modules/strcase (configure.ac): Likewise.
16381         * modules/strcasestr (configure.ac): Likewise.
16382         * modules/strchrnul (configure.ac): Likewise.
16383         * modules/strdup (configure.ac): Likewise.
16384         * modules/strndup (configure.ac): Likewise.
16385         * modules/strnlen (configure.ac): Likewise.
16386         * modules/strpbrk (configure.ac): Likewise.
16387         * modules/strsep (configure.ac): Likewise.
16388         * modules/strstr (configure.ac): Likewise.
16389         * modules/strtok_r (configure.ac): Likewise.
16390
16391 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
16392
16393         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
16394
16395 2007-01-30  Jim Meyering  <jim@meyering.net>
16396
16397         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
16398
16399 2007-01-29  Bruno Haible  <bruno@clisp.org>
16400
16401         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
16402         * lib/execute.c: Likewise.
16403         * lib/pipe.c: Likewise.
16404         * lib/printf-args.h: Likewise.
16405         * lib/printf-args.c: Likewise.
16406         * lib/printf-parse.c: Likewise.
16407         * lib/vasnprintf.c: Likewise.
16408
16409 2007-01-29  Eric Blake  <ebb9@byu.net>
16410
16411         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
16412         declaration.
16413
16414 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
16415
16416         * lib/strptime.h (strptime): Use 'restrict' for args where
16417         POSIX requires this.
16418         * lib/strptime.c (strptime): Likewise.
16419         Change license notice from LGPL to GPL, since gnulib-tool will
16420         change this as needed.
16421         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
16422         defined.
16423         Include "strptime.h" first, to check interface.
16424         Do not #undef _LIBC and _NL_CURRENT.
16425         Do not include <stdlib.h>; no longer needed.
16426         Include "time_r.h" and declare ptime_locale_status
16427         only if _LIBC is not defined.
16428         (__P): Remove unused macro.
16429         (match_string): Bring back glibc version, but use it only if _LIBC
16430         is defined.
16431         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
16432         Remove unnecessary assertion and abort() call.
16433         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
16434         * m4/strptime.m4: Fix serial number comment.
16435         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
16436         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
16437         (Depends-on): Add time_r.
16438
16439 2007-01-29  Bruno Haible  <bruno@clisp.org>
16440
16441         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
16442         strptime.
16443         * modules/strptime (Depends-on): Add stdbool.
16444         * lib/strptime.h: Include <time.h> always. Add comments.
16445
16446 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
16447
16448         * modules/strptime: New file.
16449         * lib/strptime.h: New file.
16450         * lib/strptime.c: New file.
16451         * m4/strptime.m4: New file.
16452
16453 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
16454
16455         * MODULES.html.sh: New module mpsort.
16456         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
16457
16458         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
16459         a circularity problem with HP-UX ia64 reported by Bob Proulx in
16460         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
16461         All uses changed.
16462         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
16463         All uses changed.
16464         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
16465         to _Restrict_.
16466         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
16467         the parameter matches the prototype.
16468
16469 2007-01-28  Jim Meyering  <jim@meyering.net>
16470
16471         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
16472         sys/time.h here, reverting that part of the previous patch:
16473         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
16474
16475 2007-01-28  Bruno Haible  <bruno@clisp.org>
16476
16477         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
16478         value of $(SYS_TIME_H).
16479         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
16480         remove it conditionally, too. [added by Jim Meyering]
16481         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
16482         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
16483         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
16484         GETTIMEOFDAY_REPLACEMENT to 1.
16485
16486 2007-01-28  Bruno Haible  <bruno@clisp.org>
16487
16488         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
16489         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
16490         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
16491         Set UNISTD_H instead of UNISTD_H2.
16492         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
16493
16494 2007-01-28  Bruno Haible  <bruno@clisp.org>
16495
16496         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
16497         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
16498
16499 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16500
16501         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
16502         (func_create_testdir): Ensure C locale for `grep' and `tr'
16503         character ranges.
16504         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
16505         ACLOCAL_AMFLAGS parsing state machine.
16506
16507 2007-01-27  Bruno Haible  <bruno@clisp.org>
16508
16509         * modules/unistr/base: Update.
16510
16511 2007-01-27  Bruno Haible  <bruno@clisp.org>
16512
16513         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
16514         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
16515         * modules/unistr/u32-mbtouc-unsafe: Renamed from
16516         modules/unistr/u32-mbtouc.
16517         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
16518         * lib/unistr.h: Update.
16519         * lib/linebreak.c: Update.
16520         * modules/unistr/u32-mbtouc: Renamed from
16521         modules/unistr/u32-mbtouc-safe.
16522         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
16523         * lib/unistr.h: Update.
16524         * lib/unistr/u32-to-u8.c: Update.
16525         * lib/unistr/u32-to-u16.c: Update.
16526
16527 2007-01-27  Bruno Haible  <bruno@clisp.org>
16528
16529         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
16530         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
16531         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
16532         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
16533         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
16534         * modules/unistr/u16-mbtouc-unsafe: Renamed from
16535         modules/unistr/u16-mbtouc.
16536         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
16537         * lib/unistr.h: Update.
16538         * lib/linebreak.c: Update.
16539         * modules/linebreak: Update.
16540         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
16541         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
16542         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
16543         * modules/unistr/u16-mbtouc: Renamed from
16544         modules/unistr/u16-mbtouc-safe.
16545         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
16546         * lib/unistr.h: Update.
16547         * lib/unistr/u16-to-u8.c: Update.
16548         * modules/unistr/u16-to-u8: Update.
16549         * lib/unistr/u16-to-u32.c: Update.
16550         * modules/unistr/u16-to-u32: Update.
16551
16552 2007-01-27  Bruno Haible  <bruno@clisp.org>
16553
16554         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
16555         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
16556         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
16557         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
16558         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
16559         * modules/unistr/u8-mbtouc-unsafe: Renamed from
16560         modules/unistr/u8-mbtouc.
16561         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
16562         * lib/unistr.h: Update.
16563         * lib/striconveh.c: Update.
16564         * modules/striconveh: Update.
16565         * lib/linebreak.c: Update.
16566         * modules/linebreak: Update.
16567         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
16568         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
16569         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
16570         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
16571         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
16572         * lib/unistr.h: Update.
16573         * lib/striconveh.c: Update.
16574         * modules/striconveh: Update.
16575         * lib/unistr/u8-to-u16.c: Update.
16576         * modules/unistr/u8-to-u16: Update.
16577         * lib/unistr/u8-to-u32.c: Update.
16578         * modules/unistr/u8-to-u32: Update.
16579
16580 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16581
16582         Sync from Libtool.
16583         * lib/argz.c: Do not include strings.h nor memory.h, include
16584         string.h unconditionally.  Patch by Simon Josefsson.
16585
16586 2007-01-27  Bruno Haible  <bruno@clisp.org>
16587
16588         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
16589         from gl_HEADER_STRING_H_BODY.
16590         (gl_HEADER_STRING_H_BODY): Require it.
16591         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
16592         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
16593         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
16594         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
16595         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
16596         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
16597         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
16598         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
16599         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
16600         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
16601         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
16602         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
16603         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
16604         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
16605         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
16606
16607 2007-01-27  Bruno Haible  <bruno@clisp.org>
16608
16609         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
16610         check_PROGRAMS into noinst_PROGRAMS.
16611         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
16612         check_PROGRAMS in this case.
16613         (func_import): Set for_test to false.
16614         (func_create_testdir): Set for_test to true.
16615
16616 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
16617             Bruno Haible  <bruno@clisp.org>
16618
16619         * modules/strcasestr (Files): Remove lib/strcasestr.h.
16620         (Depends-on): Add string.
16621         (Includes): Use <string.h> instead of strcasestr.h.
16622         * modules/string (Makefile.am): Also substitute the value of
16623         REPLACE_STRCASESTR.
16624         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
16625         assume strcasestr is declared in <string.h> not <strings.h>. Also
16626         set REPLACE_STRCASESTR.
16627         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
16628         REPLACE_STRCASESTR.
16629         * lib/strcasestr.h: Remove file.
16630         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
16631         * lib/string_.h (strcasestr): New declaration.
16632
16633 2007-01-27  Bruno Haible  <bruno@clisp.org>
16634
16635         * lib/string_.h: Use 'extern'.
16636
16637 2007-01-27  Jim Meyering  <jim@meyering.net>
16638
16639         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
16640         of set-but-not-used local, "q".
16641
16642         * lib/mempcpy.c: Include <config.h> before <string.h>.
16643         This fixes a compilation error on HP-UX, due to the system's
16644         "restrict"-using mempcpy prototype.
16645
16646 2007-01-26  Bruno Haible  <bruno@clisp.org>
16647
16648         Small optimization.
16649         * lib/javacomp.c: Include c-strstr.h.
16650          (is_envjavac_gcj): Use c_strstr instead of strstr.
16651         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
16652
16653 2007-01-26  Bruno Haible  <bruno@clisp.org>
16654
16655         * MODULES.html.sh (Unicode string functions): Add the new modules.
16656
16657         * modules/uniconv/u32-strconv-to-locale: New file.
16658         * lib/uniconv/u32-strconv-to-locale.c: New file.
16659
16660         * modules/uniconv/u16-strconv-to-locale: New file.
16661         * lib/uniconv/u16-strconv-to-locale.c: New file.
16662
16663         * modules/uniconv/u8-strconv-to-locale: New file.
16664         * lib/uniconv/u8-strconv-to-locale.c: New file.
16665
16666         * modules/uniconv/u32-strconv-from-locale: New file.
16667         * lib/uniconv/u32-strconv-from-locale.c: New file.
16668
16669         * modules/uniconv/u16-strconv-from-locale: New file.
16670         * lib/uniconv/u16-strconv-from-locale.c: New file.
16671
16672         * modules/uniconv/u8-strconv-from-locale: New file.
16673         * lib/uniconv/u8-strconv-from-locale.c: New file.
16674
16675         * modules/uniconv/u32-strconv-to-enc: New file.
16676         * lib/uniconv/u32-strconv-to-enc.c: New file.
16677         * modules/uniconv/u32-strconv-to-enc-tests: New file.
16678         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
16679
16680         * modules/uniconv/u16-strconv-to-enc: New file.
16681         * lib/uniconv/u16-strconv-to-enc.c: New file.
16682         * lib/uniconv/u-strconv-to-enc.h: New file.
16683         * modules/uniconv/u16-strconv-to-enc-tests: New file.
16684         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
16685
16686         * modules/uniconv/u8-strconv-to-enc: New file.
16687         * lib/uniconv/u8-strconv-to-enc.c: New file.
16688         * modules/uniconv/u8-strconv-to-enc-tests: New file.
16689         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
16690
16691         * modules/uniconv/u32-strconv-from-enc: New file.
16692         * lib/uniconv/u32-strconv-from-enc.c: New file.
16693         * modules/uniconv/u32-strconv-from-enc-tests: New file.
16694         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
16695
16696         * modules/uniconv/u16-strconv-from-enc: New file.
16697         * lib/uniconv/u16-strconv-from-enc.c: New file.
16698         * modules/uniconv/u16-strconv-from-enc-tests: New file.
16699         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
16700
16701         * modules/uniconv/u8-strconv-from-enc: New file.
16702         * lib/uniconv/u8-strconv-from-enc.c: New file.
16703         * lib/uniconv/u-strconv-from-enc.h: New file.
16704         * modules/uniconv/u8-strconv-from-enc-tests: New file.
16705         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
16706
16707         * modules/uniconv/u32-conv-from-enc: New file.
16708         * lib/uniconv/u32-conv-from-enc.c: New file.
16709         * modules/uniconv/u32-conv-from-enc-tests: New file.
16710         * tests/uniconv/test-u32-conv-from-enc.c: New file.
16711
16712         * modules/uniconv/u16-conv-from-enc: New file.
16713         * lib/uniconv/u16-conv-from-enc.c: New file.
16714         * lib/uniconv/u-conv-from-enc.h: New file.
16715         * modules/uniconv/u16-conv-from-enc-tests: New file.
16716         * tests/uniconv/test-u16-conv-from-enc.c: New file.
16717
16718         * modules/uniconv/u8-conv-from-enc: New file.
16719         * lib/uniconv/u8-conv-from-enc.c: New file.
16720         * modules/uniconv/u8-conv-from-enc-tests: New file.
16721         * tests/uniconv/test-u8-conv-from-enc.c: New file.
16722
16723         * modules/uniconv/base: New file.
16724         * lib/uniconv.h: New file.
16725
16726 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
16727
16728         * doc/gnulib-tool.texi (Initial import): Update to match current
16729         behavior with strdup module.
16730         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
16731         * lib/memmem.h: Remove; all uses removed.  This is now done
16732         by <string.h>.
16733         * lib/mempcpy.h: Likewise.
16734         * lib/memrchr.h: Likewise.
16735         * lib/stpcpy.h: Likewise.
16736         * lib/stpncpy.h: Likewise.
16737         * lib/strcase.h: Likewise.
16738         * lib/strchrnul.h: Likewise.
16739         * lib/strdup.h: Likewise.
16740         * lib/strndup.h: Likewise.
16741         * lib/strnlen.h: Likewise.
16742         * lib/strpbrk.h: Likewise.
16743         * lib/strsep.h: Likewise.
16744         * lib/strstr.h: Likewise.
16745         * lib/strtok_r.h: Likewise.
16746         * lib/string_.h: New file.
16747         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
16748         Rely on <string.h> instead.
16749         * lib/canon-host.c: Likewise.
16750         * lib/chdir-long.c: Likewise.
16751         * lib/concatpath.c: Likewise.
16752         * lib/exclude.c: Likewise.
16753         * lib/fchdir.c: Likewise.
16754         * lib/getaddrinfo.c: Likewise.
16755         * lib/getcwd.c: Likewise.
16756         * lib/getsubopt.c: Likewise.
16757         * lib/glob.c: Likewise.
16758         * lib/hard-locale.c: Likewise.
16759         * lib/iconvme.c: Likewise.
16760         * lib/javacomp.c: Likewise.
16761         * lib/mempcpy.c: Likewise.
16762         * lib/memrchr.c: Likewise.
16763         * lib/regex_internal.h: Likewise.
16764         * lib/stpncpy.c: Likewise.
16765         * lib/strcasecmp.c: Likewise.
16766         * lib/strchrnul.c: Likewise.
16767         * lib/strdup.c: Likewise.
16768         * lib/striconv.c: Likewise.
16769         * lib/striconveh.c: Likewise.
16770         * lib/striconveha.c: Likewise.
16771         * lib/strncasecmp.c: Likewise.
16772         * lib/strndup.c: Likewise.
16773         * lib/strnlen.c: Likewise.
16774         * lib/strsep.c: Likewise.
16775         * lib/strstr.c: Likewise.
16776         * lib/strtok_r.c: Likewise.
16777         * lib/userspec.c: Likewise.
16778         * lib/w32spawn.h: Likewise.
16779         * lib/xstrndup.c: Likewise.
16780         * lib/mountlist.c (strstr): Remove decl.
16781         * m4/string_h.m4: New file.
16782         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
16783         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
16784         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
16785         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
16786         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
16787         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
16788         Set REPLACE_STRCASECMP if necessary.
16789         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
16790         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
16791         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
16792         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
16793         HAVE_DECL_STRDUP if necessary.
16794         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
16795         since gl_FUNC_STRNDUP does that now.
16796         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
16797         Check for decl here...
16798         (gl_PREREQ_STRNLEN): ... not here.
16799         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
16800         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
16801         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
16802         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
16803         necessary.
16804         * modules/string: New file.
16805         * modules/memmem (Files): Remove special-purpose include file.
16806         (Depends-on): Add string.
16807         (Include): Include <string.h>, not the removed file.
16808         * modules/mempcpy: Likewise.
16809         * modules/memrchr: Likewise.
16810         * modules/stpcpy: Likewise.
16811         * modules/stpncpy: Likewise.
16812         * modules/strcase: Likewise.
16813         * modules/strchrnul: Likewise.
16814         * modules/strdup: Likewise.
16815         * modules/strndup: Likewise.
16816         * modules/strnlen: Likewise.
16817         * modules/strpbrk: Likewise.
16818         * modules/strsep: Likewise.
16819         * modules/strstr: Likewise.
16820         * modules/strtok_r: Likewise.
16821         * tests/test-dirname.c: Don't include "strdup.h", since
16822         <string.h> now suffices.
16823         * tests/test-memmem.c: Don't include "memmem.h", since
16824         <string.h> now suffices.
16825
16826 2007-01-25  Bruno Haible  <bruno@clisp.org>
16827
16828         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
16829         *resultp is 0.
16830
16831         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
16832         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
16833         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
16834         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
16835
16836         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
16837         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
16838         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
16839         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
16840         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
16841         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
16842
16843 2007-01-24  Bruno Haible  <bruno@clisp.org>
16844
16845         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
16846         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
16847         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
16848         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
16849         gl_FUNC_FTS_CORE.
16850         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
16851         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
16852         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
16853         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
16854         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
16855         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
16856         gl_FUNC_FCHOWNAT.
16857         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
16858         gl_FUNC_STRFTIME.
16859         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
16860         Reported by Ralf Wildenhues.
16861
16862 2007-01-24  Bruno Haible  <bruno@clisp.org>
16863
16864         Drop AC_REQUIRE calls that are redundant with the module dependencies.
16865         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
16866         gl_GETADDRINFO.
16867         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
16868         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
16869         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
16870
16871 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
16872
16873         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
16874         Don't use 'exit'; just return from 'main'.
16875         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
16876
16877         * lib/fnmatch_.h: Readjust white space and comments to match
16878         glibc, to avoid spurious diffs.
16879
16880 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16881
16882         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
16883         2004-12-01 change by Jakub Jelinek, since this code won't compile
16884         if !LIBC.  Problem reported by Bob Proulx.
16885
16886 2007-01-23  Bruno Haible  <bruno@clisp.org>
16887
16888         * lib/striconveh.c: Include c-strcaseeq.h.
16889         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
16890         * modules/striconveh (Depends-on): Add c-strcaseeq.
16891
16892 2007-01-23  Bruno Haible  <bruno@clisp.org>
16893
16894         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
16895
16896         * modules/c-strcaseeq: New file.
16897         * lib/c-strcaseeq.h: New file.
16898
16899         * modules/streq: New file.
16900         * lib/streq.h: New file.
16901
16902 2007-01-23  Bruno Haible  <bruno@clisp.org>
16903
16904         * modules/striconveha-tests: New file.
16905         * tests/test-striconveha.c: New file.
16906
16907         * lib/striconveha.h: Include <stdbool.h>.
16908         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
16909         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
16910         (mem_iconveha_notranslit): Renamed from mem_iconveha.
16911         (mem_iconveha): New function.
16912         (str_iconveha_notranslit): Renamed from str_iconveha.
16913         (str_iconveha): New function.
16914         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
16915         c-strcase.
16916
16917 2007-01-23  Bruno Haible  <bruno@clisp.org>
16918
16919         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
16920         encodings without forgiving before trying any encoding with handler.
16921         (str_iconveha): Try all encodings without forgiving before trying any
16922         encoding with handler.
16923
16924 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16925
16926         Import the following changes from libc.
16927
16928         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
16929
16930         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
16931
16932         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
16933
16934         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
16935         normal_bracket label.
16936
16937         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
16938
16939         [BZ #361]
16940         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
16941         to normal_bracket after fetching the next character.
16942
16943 2007-01-22  Bruno Haible  <bruno@clisp.org>
16944
16945         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
16946         argument.
16947         * lib/striconveh.c (iconv_carefully_1): New function.
16948         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
16949         argument.
16950         (str_cd_iconveh): Update.
16951         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
16952         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
16953         * tests/test-striconveh.c (MAGIC): New macro.
16954         (new_offsets): New function.
16955         (main): Test call with and without offsets.
16956
16957 2007-01-22  Bruno Haible  <bruno@clisp.org>
16958
16959         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
16960         * modules/sys_select (Makefile.am): Likewise.
16961         * modules/sys_socket (Makefile.am): Likewise.
16962         * modules/sys_time (Makefile.am): Likewise.
16963
16964 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
16965
16966         * modules/gettimeofday (License): Change from GPL to LGPL, since
16967         gettimeofday is a library function.
16968
16969 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16970
16971         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
16972
16973 2007-01-21  Bruno Haible  <bruno@clisp.org>
16974
16975         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
16976
16977 2007-01-21  Bruno Haible  <bruno@clisp.org>
16978
16979         * modules/striconveha: New file.
16980         * lib/striconveha.h: New file.
16981         * lib/striconveha.c: New file.
16982         * MODULES.html.sh (Internationalization functions): Add striconveha.
16983         * lib/striconv.c (str_iconv): Optimize the case of an empty input
16984         string.
16985         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
16986
16987 2007-01-21  Bruno Haible  <bruno@clisp.org>
16988
16989         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
16990         * lib/striconveh.c (str_iconveh): Likewise.
16991
16992 2007-01-21  Bruno Haible  <bruno@clisp.org>
16993
16994         * lib/striconveh.h (mem_iconveh): New declaration.
16995         * lib/striconveh.c (mem_iconveh): New function.
16996         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
16997
16998 2007-01-21  Bruno Haible  <bruno@clisp.org>
16999
17000         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
17001
17002         * lib/striconveh.h (mem_cd_iconveh): Change specification.
17003         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
17004         original result buffer.
17005         (str_cd_iconveh): Update.
17006         * tests/test-striconveh.c (main): Update.
17007
17008         * lib/striconv.h (mem_cd_iconv): Change specification.
17009         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
17010         result buffer.
17011         (str_cd_iconv): Update.
17012         * tests/test-striconv.c (main): Update.
17013
17014 2007-01-21  Bruno Haible  <bruno@clisp.org>
17015
17016         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
17017
17018 2007-01-20  Jim Meyering  <jim@meyering.net>
17019
17020         * lib/userspec.c (parse_with_separator): If a user or group string
17021         starts with "+", skip the corresponding name-to-ID look-up, since
17022         such a look-up must fail: user and group names may not include "+".
17023
17024 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
17025
17026         * lib/poll.c: Include sys/time.h and time.h unconditionally,
17027         since we now assume the sys_time module.
17028         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
17029         check for sys/time.h; no longer needed.
17030         * modules/poll (Depends-on): Depend on sys_time.
17031
17032 2007-01-18  Bruno Haible  <bruno@clisp.org>
17033
17034         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
17035         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
17036
17037         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
17038         gettimeofday.
17039
17040         * tests/test-gettimeofday.c: Include <time.h>.
17041         (dummy): Remove variable.
17042
17043         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
17044         gl_HEADER_SYS_TIME_H.
17045         (gl_HEADER_SYS_TIME_H): New macro.
17046
17047         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
17048         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17049         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
17050         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
17051         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17052         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
17053         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
17054         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17055         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
17056         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
17057         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17058
17059         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
17060         last change; it caused a compilation error when cross-compiling to
17061         Cygwin.
17062
17063 2007-01-18  Jim Meyering  <jim@meyering.net>
17064
17065         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
17066         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
17067         than the race-prone "test -d sys || mkdir sys".
17068         (configure.ac): Use AC_PROG_MKDIR_P.
17069         * modules/sys_select: Likewise.
17070         * modules/sys_socket: Likewise.
17071         * modules/sys_time: Likewise.
17072
17073 2007-01-18  Eric Blake  <ebb9@byu.net>
17074
17075         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
17076         replace gettimeofday.
17077         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
17078         name, to avoid infinite recursion.
17079
17080 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
17081
17082         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
17083         module sys_time.
17084         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
17085         assume timespec.h defines struct timeval.
17086         * lib/settime.c: Likewise.
17087         * lib/utimens.c: Likewise.
17088         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
17089         since we now assume the gettimeofday module.
17090         * lib/tempname.c (__gen_tempname): Likewise.
17091         * lib/gettimeofday.h: Remove.
17092         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
17093         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
17094         Include <time.h>, for 'time()'.
17095         (localtime_buffer_addr): Also use this workaround if
17096         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
17097         to simplify the uses.  All uses changed.
17098         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
17099         that #undef is inside {}, and 'const' follows type name consistently.
17100         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
17101         (gettimeofday): Do not use the maximum possible value for
17102         tv->tv_usec, since that might break usages other than ls.c.
17103         Instead, we'll leave ls.c alone.  This undoes today's patch
17104         by Bruno.  Add a compile-time warning for 1s-clock resolution;
17105         we've never observed the problem but might as well keep the
17106         canary.
17107         * lib/nanosleep.c: Include timespec.h first, for interface check.
17108         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
17109         now assume the sys_time module.
17110         * lib/tempname.c: Likewise.
17111         * lib/timespec.h: Likewise.
17112         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
17113         needed.
17114         * lib/strftime.c: Likewise.
17115         * lib/timespec.h: Likewise.
17116         * lib/posixtm.c: Include posixtm.h first, for interface check.
17117         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
17118         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
17119         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
17120         * lib/sys_time_.h: New file.
17121         * lib/timespec.h (struct timespec): Use long int, not long.
17122         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
17123         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
17124         Remove obsolescent call to AC_HEADER_TIME.
17125         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
17126         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17127         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
17128         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
17129         Likewise.
17130         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
17131         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
17132         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
17133         into the sys_time module.  Check for gettimeofday just once.
17134         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
17135         for gettimeofday signature to just check the signature.  Merely
17136         compile it, since linking doesn't test signature.  Improve test for
17137         whether gettimeofday.o is actually needed.
17138         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
17139         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
17140         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
17141         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17142         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
17143         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
17144         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
17145         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
17146         than worrying about sys/time.h.
17147         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
17148         Don't bother worrying about TIME_WITH_SYS_TIME.
17149         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
17150         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
17151         * m4/sys_time_h.m4: New file.
17152         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
17153         Don't include sys/time.h.  Return from main rather than exiting.
17154         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
17155         all uses changed.
17156         * modules/gethrxtime (Depends-on): Add sys_time.
17157         * modules/gettime (Depends-on): Likewise.
17158         * modules/gettimeofday (Depends-on): Likewise.
17159         * modules/nanosleep (Depends-on): Likewise.
17160         * modules/settime (Depends-on): Likewise.
17161         * modules/tempname (Depends-on): Likewise.
17162         * modules/utimens (Depends-on): Likewise.
17163         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
17164         (Include:) Change back to <sys/time.h>.
17165         (Maintainer:) Add self.
17166         * modules/sys_time: New file.
17167         * modules/tempname (Depends-on): Add gettimeofday.
17168         * tests/test-gettimeofday.c: Include <sys/time.h>
17169         rather than gettimeofday.h.
17170
17171 2007-01-17  Bruno Haible  <bruno@clisp.org>
17172
17173         * gnulib-tool (func_get_license): Revert last patch. Instead, let
17174         the license default to GPL.
17175         (func_create_testdir): Don't complain if a module is LGPL and its
17176         tests module depends on GPLed modules.
17177
17178 2007-01-17  Bruno Haible  <bruno@clisp.org>
17179
17180         * lib/gettimeofday.c (gettimeofday): Add code for the case
17181         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
17182         maximum possible value for tv->tv_usec, rather than the minimum one.
17183
17184 2005-10-08  Martin Lambers  <marlam@marlam.de>
17185 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
17186 2007-01-16  Bruno Haible  <bruno@clisp.org>
17187
17188         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
17189         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
17190         gl_FUNC_GETTIMEOFDAY.
17191         (Include): Add gettimeofday.h.
17192         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
17193         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
17194         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
17195         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
17196         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
17197         * lib/gettimeofday.h: New file.
17198         * lib/gettimeofday.c: Include <sys/timeb.h>.
17199         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
17200         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17201         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
17202         fall back on time().
17203
17204         * tests/test-gettimeofday.c: New file.
17205         * modules/gettimeofday-tests: New file.
17206
17207 2007-01-16  Eric Blake  <ebb9@byu.net>
17208
17209         * modules/fnmatch (Depends-on): Depend on wchar.
17210         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
17211         * m4/fnmatch.m4: Likewise.
17212         * modules/mbchar (Makefile.am): Assume <wchar.h>.
17213         * m4/mbchar.m4: Likewise.
17214         * modules/mbswidth (Depends-on): Depend on wchar.
17215         * lib/mbswidth.c: Assume <wchar.h>.
17216         * m4/mbswidth.m4: Likewise.
17217         * modules/quotearg (Depends-on): Depend on wchar.
17218         * lib/quotearg.c: Assume <wchar.h>.
17219         * m4/quotearg.m4: Likewise.
17220         * modules/regex (Depends-on): Depend on wchar.
17221         * lib/regex_internal.h: Assume <wchar.h>.
17222         * m4/regex.m4: Likewise.
17223         * modules/stdint (Depends-on): Depend on wchar.
17224         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
17225         * m4/stdint.m4: Likewise.
17226         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
17227         * modules/strftime (Depends-on): Depend on wchar.
17228         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
17229         * modules/strtol (Depends-on): Depend on wchar.
17230         * lib/strtol.c: Assume <wchar.h>.
17231         * modules/wcwidth (Depends-on): Depend on wchar.
17232         * lib/wcwidth.h: Assume <wchar.h>.
17233         * m4/wcwidth.m4: Likewise.
17234
17235 2007-01-16  Bruno Haible  <bruno@clisp.org>
17236
17237         * modules/csharpexec-script: New, created from...
17238         * modules/csharpexec: ... this.
17239
17240 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
17241
17242         * modules/javaexec-script: New, created from...
17243         * modules/javaexec: ... this.
17244
17245 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17246
17247         * modules/poll (Dependencies): Add sys_select.
17248
17249 2007-01-15  Jim Meyering  <jim@meyering.net>
17250
17251         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
17252         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
17253         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
17254         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
17255
17256 2007-01-15  Bruno Haible  <bruno@clisp.org>
17257
17258         * modules/striconveh: New file.
17259         * lib/striconveh.h: New file.
17260         * lib/striconveh.c: New file.
17261         * MODULES.html.sh (Internationalization functions): Add striconveh.
17262
17263         * modules/striconveh-tests: New file.
17264         * tests/test-striconveh.c: New file.
17265
17266 2007-01-15  Bruno Haible  <bruno@clisp.org>
17267
17268         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
17269         not from GNU libiconv or GNU libc.
17270
17271 2007-01-15  Bruno Haible  <bruno@clisp.org>
17272
17273         * doc/gnulib-intro.texi (Copyright): Explain the different license
17274         terms for module descriptions, autoconf macros, tests, documentation.
17275
17276 2007-01-14  Bruno Haible  <bruno@clisp.org>
17277
17278         * modules/striconv-tests: New file.
17279         * tests/test-striconv.c: New file.
17280
17281 2007-01-14  Bruno Haible  <bruno@clisp.org>
17282
17283         * modules/iconv-tests: New file.
17284         * tests/test-iconv.c: New file.
17285
17286 2007-01-14  Bruno Haible  <bruno@clisp.org>
17287
17288         * gnulib-tool (func_get_license): For test modules, use the license of
17289         the main module.
17290
17291 2007-01-14  Bruno Haible  <bruno@clisp.org>
17292
17293         * modules/iconv (Include): Clarify that <iconv.h> can only be included
17294         if iconv is found to exist.
17295
17296 2007-01-14  Bruno Haible  <bruno@clisp.org>
17297
17298         * modules/c-ctype-tests: New file.
17299         * tests/test-c-ctype.c: New file.
17300
17301 2007-01-14  Bruno Haible  <bruno@clisp.org>
17302
17303         * modules/binary-io-tests: New file.
17304         * tests/test-binary-io.sh: New file.
17305         * tests/test-binary-io.c: New file.
17306
17307 2007-01-14  Bruno Haible  <bruno@clisp.org>
17308
17309         * modules/array-oset-tests: New file.
17310         * tests/test-array_oset.c: New file.
17311
17312 2007-01-14  Bruno Haible  <bruno@clisp.org>
17313
17314         * modules/array-list-tests: New file.
17315         * tests/test-array_list.c: New file.
17316
17317 2007-01-14  Bruno Haible  <bruno@clisp.org>
17318
17319         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
17320         and make.
17321         Reported by Simon Josefsson in
17322         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
17323
17324 2007-01-14  Bruno Haible  <bruno@clisp.org>
17325
17326         * modules/allocsa-tests: New file.
17327         * tests/test-allocsa.c: New file.
17328
17329 2007-01-14  Bruno Haible  <bruno@clisp.org>
17330
17331         * modules/fchdir (Depends-on): Add absolute-header.
17332         * modules/unistd (Depends-on): Likewise.
17333
17334 2006-12-30  Bruno Haible  <bruno@clisp.org>
17335
17336         * modules/fchdir: New file.
17337         * modules/unistd (Files): Add lib/unistd_.h.
17338         (Makefile.am): Generate unistd.h from unistd_.h.
17339         * lib/fchdir.c: New file.
17340         * lib/dirent_.h: New file.
17341         * lib/unistd_.h: New file.
17342         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
17343         * m4/fchdir.m4: New file.
17344         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
17345         (gl_HEADER_UNISTD): Invoke it.
17346         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
17347         function.
17348         * lib/backupfile.c (opendir, closedir): Undefine.
17349         * lib/chown.c (open, close): Undefine.
17350         * lib/clean-temp.c (open, close): Undefine.
17351         * lib/copy-file.c (open, close): Undefine.
17352         * lib/execute.c (open, close): Undefine.
17353         * lib/fsusage.c (open, close): Undefine.
17354         * lib/gc-gnulib.c (open, close): Undefine.
17355         * lib/getcwd.c (opendir, closedir): Undefine.
17356         * lib/glob.c (opendir, closedir): Undefine.
17357         * lib/javacomp.c (open, close): Undefine.
17358         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
17359         * lib/openat-proc.c (open, close): Undefine.
17360         * lib/pagealign_alloc.c (open, close): Undefine.
17361         * lib/pipe.c (open, close): Undefine.
17362         * lib/progreloc.c (open, close): Undefine.
17363         * lib/savedir.c (opendir, closedir): Undefine.
17364         * lib/utime.c (open, close): Undefine.
17365         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
17366
17367 2007-01-10  Bruno Haible  <bruno@clisp.org>
17368
17369         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
17370
17371 2007-01-12  Eric Blake  <ebb9@byu.net>
17372
17373         Provide a robust <wchar.h>.  Further simplifications are now
17374         possible in other modules, but not included here.
17375         * modules/wchar: New module.
17376         * m4/wchar.m4: New file.
17377         * lib/wchar_.h: Likewise.
17378         * modules/mbchar (Depends-on): Depend on wchar, as the first use
17379         of the new module.
17380         * MODULES.html.sh (Extended multibyte and wide character utilities):
17381         New section.
17382
17383 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
17384
17385         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
17386         to a reasonable default for memory allocation.
17387         (xreadlink): Don't allocate a huge buffer, to work around a buggy
17388         file system that reports garbage st_size values for symlinks.
17389         Problem reported by Liyang Hu.
17390
17391 2007-01-11  Simon Josefsson  <simon@josefsson.org>
17392
17393         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
17394         Emacs .#* auto-save files).
17395
17396 2007-01-11  Bruno Haible  <bruno@clisp.org>
17397
17398         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
17399         directory.
17400
17401 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17402
17403         Use @...@ consistently in lib/wctype_.h.
17404         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
17405         on it being set to 1 or 0.
17406         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
17407         go back to AC_SUBSTing it.
17408         * modules/wctype (Makefile.am): Undo previous change.
17409
17410 2007-01-10  Eric Blake  <ebb9@byu.net>
17411
17412         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
17413         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
17414         * modules/wctype (Makefile.am): Likewise.
17415         Reported by Chris McGuire.
17416
17417 2007-01-10  Jim Meyering  <jim@meyering.net>
17418
17419         fts.c: a small readability/maintainability improvement
17420         * lib/fts.c (fts_read): Make this code slightly more readable and
17421         maintainable by hoisting the "sp->fts_cur = p" assignments to
17422         immediately follow the statements that set P.  Derived from
17423         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
17424
17425 2007-01-10  Eric Blake  <ebb9@byu.net>
17426
17427         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
17428         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
17429         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
17430         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
17431         Reported by Chris McGuire.
17432
17433 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17434
17435         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
17436         in sed script.
17437
17438 2007-01-09  Bruno Haible  <bruno@clisp.org>
17439
17440         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
17441         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
17442         variables.
17443         (func_module): Use them.
17444
17445 2007-01-09  Bruno Haible  <bruno@clisp.org>
17446
17447         * modules/unistr/base: New file.
17448         * lib/unistr.h: New file.
17449
17450         * modules/unistr/u8-to-u16: New file.
17451         * lib/unistr/u8-to-u16.c: New file.
17452
17453         * modules/unistr/u8-to-u32: New file.
17454         * lib/unistr/u8-to-u32.c: New file.
17455
17456         * modules/unistr/u16-to-u8: New file.
17457         * lib/unistr/u16-to-u8.c: New file.
17458
17459         * modules/unistr/u16-to-u32: New file.
17460         * lib/unistr/u16-to-u32.c: New file.
17461
17462         * modules/unistr/u32-to-u8: New file.
17463         * lib/unistr/u32-to-u8.c: New file.
17464
17465         * modules/unistr/u32-to-u16: New file.
17466         * lib/unistr/u32-to-u16.c: New file.
17467
17468         * modules/unistr/u8-check: New file.
17469         * modules/unistr/u16-check: New file.
17470         * modules/unistr/u32-check: New file.
17471         * lib/unistr/u8-check.c: New file.
17472         * lib/unistr/u16-check.c: New file.
17473         * lib/unistr/u32-check.c: New file.
17474
17475         * modules/unistr/u8-chr: New file.
17476         * modules/unistr/u16-chr: New file.
17477         * modules/unistr/u32-chr: New file.
17478         * lib/unistr/u8-chr.c: New file.
17479         * lib/unistr/u16-chr.c: New file.
17480         * lib/unistr/u32-chr.c: New file.
17481
17482         * modules/unistr/u8-cmp: New file.
17483         * modules/unistr/u16-cmp: New file.
17484         * modules/unistr/u32-cmp: New file.
17485         * lib/unistr/u8-cmp.c: New file.
17486         * lib/unistr/u16-cmp.c: New file.
17487         * lib/unistr/u32-cmp.c: New file.
17488
17489         * modules/unistr/u8-cpy: New file.
17490         * modules/unistr/u16-cpy: New file.
17491         * modules/unistr/u32-cpy: New file.
17492         * lib/unistr/u8-cpy.c: New file.
17493         * lib/unistr/u16-cpy.c: New file.
17494         * lib/unistr/u32-cpy.c: New file.
17495         * lib/unistr/u-cpy.h: New file.
17496
17497         * modules/unistr/u8-cpy-alloc: New file.
17498         * modules/unistr/u16-cpy-alloc: New file.
17499         * modules/unistr/u32-cpy-alloc: New file.
17500         * lib/unistr/u8-cpy-alloc.c: New file.
17501         * lib/unistr/u16-cpy-alloc.c: New file.
17502         * lib/unistr/u32-cpy-alloc.c: New file.
17503         * lib/unistr/u-cpy-alloc.h: New file.
17504
17505         * modules/unistr/u8-endswith: New file.
17506         * modules/unistr/u16-endswith: New file.
17507         * modules/unistr/u32-endswith: New file.
17508         * lib/unistr/u8-endswith.c: New file.
17509         * lib/unistr/u16-endswith.c: New file.
17510         * lib/unistr/u32-endswith.c: New file.
17511         * lib/unistr/u-endswith.h: New file.
17512
17513         * modules/unistr/u8-mblen: New file.
17514         * modules/unistr/u16-mblen: New file.
17515         * modules/unistr/u32-mblen: New file.
17516         * lib/unistr/u8-mblen.c: New file.
17517         * lib/unistr/u16-mblen.c: New file.
17518         * lib/unistr/u32-mblen.c: New file.
17519
17520         * modules/unistr/u8-mbtouc: New file.
17521         * modules/unistr/u16-mbtouc: New file.
17522         * modules/unistr/u32-mbtouc: New file.
17523         * lib/unistr/u8-mbtouc.c: New file.
17524         * lib/unistr/u16-mbtouc.c: New file.
17525         * lib/unistr/u32-mbtouc.c: New file.
17526
17527         * modules/unistr/u8-mbtouc-safe: New file.
17528         * modules/unistr/u16-mbtouc-safe: New file.
17529         * modules/unistr/u32-mbtouc-safe: New file.
17530         * lib/unistr/u8-mbtouc-safe.c: New file.
17531         * lib/unistr/u16-mbtouc-safe.c: New file.
17532         * lib/unistr/u32-mbtouc-safe.c: New file.
17533
17534         * modules/unistr/u8-move: New file.
17535         * modules/unistr/u16-move: New file.
17536         * modules/unistr/u32-move: New file.
17537         * lib/unistr/u8-move.c: New file.
17538         * lib/unistr/u16-move.c: New file.
17539         * lib/unistr/u32-move.c: New file.
17540         * lib/unistr/u-move.h: New file.
17541
17542         * modules/unistr/u8-next: New file.
17543         * modules/unistr/u16-next: New file.
17544         * modules/unistr/u32-next: New file.
17545         * lib/unistr/u8-next.c: New file.
17546         * lib/unistr/u16-next.c: New file.
17547         * lib/unistr/u32-next.c: New file.
17548
17549         * modules/unistr/u8-prev: New file.
17550         * modules/unistr/u16-prev: New file.
17551         * modules/unistr/u32-prev: New file.
17552         * lib/unistr/u8-prev.c: New file.
17553         * lib/unistr/u16-prev.c: New file.
17554         * lib/unistr/u32-prev.c: New file.
17555
17556         * modules/unistr/u8-set: New file.
17557         * modules/unistr/u16-set: New file.
17558         * modules/unistr/u32-set: New file.
17559         * lib/unistr/u8-set.c: New file.
17560         * lib/unistr/u16-set.c: New file.
17561         * lib/unistr/u32-set.c: New file.
17562         * lib/unistr/u-set.h: New file.
17563
17564         * modules/unistr/u8-startswith: New file.
17565         * modules/unistr/u16-startswith: New file.
17566         * modules/unistr/u32-startswith: New file.
17567         * lib/unistr/u8-startswith.c: New file.
17568         * lib/unistr/u16-startswith.c: New file.
17569         * lib/unistr/u32-startswith.c: New file.
17570         * lib/unistr/u-startswith.h: New file.
17571
17572         * modules/unistr/u8-stpcpy: New file.
17573         * modules/unistr/u16-stpcpy: New file.
17574         * modules/unistr/u32-stpcpy: New file.
17575         * lib/unistr/u8-stpcpy.c: New file.
17576         * lib/unistr/u16-stpcpy.c: New file.
17577         * lib/unistr/u32-stpcpy.c: New file.
17578         * lib/unistr/u-stpcpy.h: New file.
17579
17580         * modules/unistr/u8-stpncpy: New file.
17581         * modules/unistr/u16-stpncpy: New file.
17582         * modules/unistr/u32-stpncpy: New file.
17583         * lib/unistr/u8-stpncpy.c: New file.
17584         * lib/unistr/u16-stpncpy.c: New file.
17585         * lib/unistr/u32-stpncpy.c: New file.
17586         * lib/unistr/u-stpncpy.h: New file.
17587
17588         * modules/unistr/u8-strcat: New file.
17589         * modules/unistr/u16-strcat: New file.
17590         * modules/unistr/u32-strcat: New file.
17591         * lib/unistr/u8-strcat.c: New file.
17592         * lib/unistr/u16-strcat.c: New file.
17593         * lib/unistr/u32-strcat.c: New file.
17594         * lib/unistr/u-strcat.h: New file.
17595
17596         * modules/unistr/u8-strchr: New file.
17597         * modules/unistr/u16-strchr: New file.
17598         * modules/unistr/u32-strchr: New file.
17599         * lib/unistr/u8-strchr.c: New file.
17600         * lib/unistr/u16-strchr.c: New file.
17601         * lib/unistr/u32-strchr.c: New file.
17602
17603         * modules/unistr/u8-strcmp: New file.
17604         * modules/unistr/u16-strcmp: New file.
17605         * modules/unistr/u32-strcmp: New file.
17606         * lib/unistr/u8-strcmp.c: New file.
17607         * lib/unistr/u16-strcmp.c: New file.
17608         * lib/unistr/u32-strcmp.c: New file.
17609
17610         * modules/unistr/u8-strcpy: New file.
17611         * modules/unistr/u16-strcpy: New file.
17612         * modules/unistr/u32-strcpy: New file.
17613         * lib/unistr/u8-strcpy.c: New file.
17614         * lib/unistr/u16-strcpy.c: New file.
17615         * lib/unistr/u32-strcpy.c: New file.
17616         * lib/unistr/u-strcpy.h: New file.
17617
17618         * modules/unistr/u8-strcspn: New file.
17619         * modules/unistr/u16-strcspn: New file.
17620         * modules/unistr/u32-strcspn: New file.
17621         * lib/unistr/u8-strcspn.c: New file.
17622         * lib/unistr/u16-strcspn.c: New file.
17623         * lib/unistr/u32-strcspn.c: New file.
17624         * lib/unistr/u-strcspn.h: New file.
17625
17626         * modules/unistr/u8-strdup: New file.
17627         * modules/unistr/u16-strdup: New file.
17628         * modules/unistr/u32-strdup: New file.
17629         * lib/unistr/u8-strdup.c: New file.
17630         * lib/unistr/u16-strdup.c: New file.
17631         * lib/unistr/u32-strdup.c: New file.
17632         * lib/unistr/u-strdup.h: New file.
17633
17634         * modules/unistr/u8-strlen: New file.
17635         * modules/unistr/u16-strlen: New file.
17636         * modules/unistr/u32-strlen: New file.
17637         * lib/unistr/u8-strlen.c: New file.
17638         * lib/unistr/u16-strlen.c: New file.
17639         * lib/unistr/u32-strlen.c: New file.
17640         * lib/unistr/u-strlen.h: New file.
17641
17642         * modules/unistr/u8-strmblen: New file.
17643         * modules/unistr/u16-strmblen: New file.
17644         * modules/unistr/u32-strmblen: New file.
17645         * lib/unistr/u8-strmblen.c: New file.
17646         * lib/unistr/u16-strmblen.c: New file.
17647         * lib/unistr/u32-strmblen.c: New file.
17648
17649         * modules/unistr/u8-strmbtouc: New file.
17650         * modules/unistr/u16-strmbtouc: New file.
17651         * modules/unistr/u32-strmbtouc: New file.
17652         * lib/unistr/u8-strmbtouc.c: New file.
17653         * lib/unistr/u16-strmbtouc.c: New file.
17654         * lib/unistr/u32-strmbtouc.c: New file.
17655
17656         * modules/unistr/u8-strncat: New file.
17657         * modules/unistr/u16-strncat: New file.
17658         * modules/unistr/u32-strncat: New file.
17659         * lib/unistr/u8-strncat.c: New file.
17660         * lib/unistr/u16-strncat.c: New file.
17661         * lib/unistr/u32-strncat.c: New file.
17662         * lib/unistr/u-strncat.h: New file.
17663
17664         * modules/unistr/u8-strncmp: New file.
17665         * modules/unistr/u16-strncmp: New file.
17666         * modules/unistr/u32-strncmp: New file.
17667         * lib/unistr/u8-strncmp.c: New file.
17668         * lib/unistr/u16-strncmp.c: New file.
17669         * lib/unistr/u32-strncmp.c: New file.
17670
17671         * modules/unistr/u8-strncpy: New file.
17672         * modules/unistr/u16-strncpy: New file.
17673         * modules/unistr/u32-strncpy: New file.
17674         * lib/unistr/u8-strncpy.c: New file.
17675         * lib/unistr/u16-strncpy.c: New file.
17676         * lib/unistr/u32-strncpy.c: New file.
17677         * lib/unistr/u-strncpy.h: New file.
17678
17679         * modules/unistr/u8-strnlen: New file.
17680         * modules/unistr/u16-strnlen: New file.
17681         * modules/unistr/u32-strnlen: New file.
17682         * lib/unistr/u8-strnlen.c: New file.
17683         * lib/unistr/u16-strnlen.c: New file.
17684         * lib/unistr/u32-strnlen.c: New file.
17685         * lib/unistr/u-strnlen.h: New file.
17686
17687         * modules/unistr/u8-strpbrk: New file.
17688         * modules/unistr/u16-strpbrk: New file.
17689         * modules/unistr/u32-strpbrk: New file.
17690         * lib/unistr/u8-strpbrk.c: New file.
17691         * lib/unistr/u16-strpbrk.c: New file.
17692         * lib/unistr/u32-strpbrk.c: New file.
17693         * lib/unistr/u-strpbrk.h: New file.
17694
17695         * modules/unistr/u8-strrchr: New file.
17696         * modules/unistr/u16-strrchr: New file.
17697         * modules/unistr/u32-strrchr: New file.
17698         * lib/unistr/u8-strrchr.c: New file.
17699         * lib/unistr/u16-strrchr.c: New file.
17700         * lib/unistr/u32-strrchr.c: New file.
17701
17702         * modules/unistr/u8-strspn: New file.
17703         * modules/unistr/u16-strspn: New file.
17704         * modules/unistr/u32-strspn: New file.
17705         * lib/unistr/u8-strspn.c: New file.
17706         * lib/unistr/u16-strspn.c: New file.
17707         * lib/unistr/u32-strspn.c: New file.
17708         * lib/unistr/u-strspn.h: New file.
17709
17710         * modules/unistr/u8-strstr: New file.
17711         * modules/unistr/u16-strstr: New file.
17712         * modules/unistr/u32-strstr: New file.
17713         * lib/unistr/u8-strstr.c: New file.
17714         * lib/unistr/u16-strstr.c: New file.
17715         * lib/unistr/u32-strstr.c: New file.
17716         * lib/unistr/u-strstr.h: New file.
17717
17718         * modules/unistr/u8-strtok: New file.
17719         * modules/unistr/u16-strtok: New file.
17720         * modules/unistr/u32-strtok: New file.
17721         * lib/unistr/u8-strtok.c: New file.
17722         * lib/unistr/u16-strtok.c: New file.
17723         * lib/unistr/u32-strtok.c: New file.
17724         * lib/unistr/u-strtok.h: New file.
17725
17726         * modules/unistr/u8-uctomb: New file.
17727         * modules/unistr/u16-uctomb: New file.
17728         * modules/unistr/u32-uctomb: New file.
17729         * lib/unistr/u8-uctomb.c: New file.
17730         * lib/unistr/u16-uctomb.c: New file.
17731         * lib/unistr/u32-uctomb.c: New file.
17732
17733         * MODULES.html.sh (Unicode string functions): Add the new modules.
17734
17735 2007-01-08  Bruno Haible  <bruno@clisp.org>
17736
17737         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
17738         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
17739         subdirectories.
17740
17741 2007-01-08  Karl Berry  <karl@gnu.org>
17742
17743         * doc/error.texi: mention that main() fns must set program_name
17744         when progname is used.
17745
17746 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
17747
17748         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
17749         WCTYPE_H is empty, for the benefit of builds from non-distclean
17750         directories.  Problem reported by Eric Blake in
17751         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
17752
17753 2007-01-08  Bruno Haible  <bruno@clisp.org>
17754
17755         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
17756         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
17757         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
17758         PROVIDE_CANONICALIZE_FILENAME_MODE.
17759         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
17760
17761 2007-01-08  Bruno Haible  <bruno@clisp.org>
17762
17763         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
17764         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
17765         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
17766         * lib/fts.c: Likewise.
17767         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
17768
17769 2006-12-25  Bruno Haible  <bruno@clisp.org>
17770
17771         * modules/utf8-ucs4-safe: New file.
17772         * lib/utf8-ucs4-safe.h: New file.
17773         * lib/unistr/utf8-ucs4-safe.c: New file.
17774
17775         * modules/utf16-ucs4-safe: New file.
17776         * lib/utf16-ucs4-safe.h: New file.
17777         * lib/unistr/utf16-ucs4-safe.c: New file.
17778
17779         * MODULES.html.sh (Unicode string functions): Add the new modules.
17780
17781 2007-01-08  Bruno Haible  <bruno@clisp.org>
17782
17783         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
17784         (Depends-on): Add unitypes.
17785         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
17786         (u8_mbtouc_aux): Move out to separate file.
17787         (u8_mbtouc): Use ucs4_t, uint8_t types.
17788         * lib/unistr/utf8-ucs4.c: New file.
17789
17790         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
17791         (Depends-on): Add unitypes.
17792         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
17793         (u16_mbtouc_aux): Move out to separate file.
17794         (u16_mbtouc): Use ucs4_t, uint16_t types.
17795         * lib/unistr/utf16-ucs4.c: New file.
17796
17797         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
17798         (Depends-on): Add unitypes.
17799         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
17800         (u8_uctomb_aux): Move out to separate file.
17801         (u8_uctomb): Use ucs4_t, uint8_t types.
17802         * lib/unistr/ucs4-utf8.c: New file.
17803
17804         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
17805         (Depends-on): Add unitypes.
17806         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
17807         (u16_uctomb_aux): Move out to separate file.
17808         (u16_uctomb): Use ucs4_t, uint16_t types.
17809         * lib/unistr/ucs4-utf16.c: New file.
17810
17811 2006-12-25  Bruno Haible  <bruno@clisp.org>
17812
17813         * modules/unitypes: New file.
17814         * lib/unitypes.h: New file.
17815         * MODULES.html.sh (func_all_modules): New section "Unicode string
17816         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
17817         this section. Add unitypes.
17818
17819 2007-01-08  Bruno Haible  <bruno@clisp.org>
17820
17821         Avoid variable names that conflict with those from libtool.
17822         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
17823         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
17824         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
17825         library_names_spec to acl_library_names_spec, hardcode_* to
17826         acl_hardcode_*.
17827         Reported by Ralf Wildenhues.
17828
17829 2007-01-08  Bruno Haible  <bruno@clisp.org>
17830
17831         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
17832         definition.
17833         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
17834         definition.
17835         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
17836         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
17837         definition.
17838         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
17839         definition.
17840         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
17841         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
17842         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
17843         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
17844         definition.
17845         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
17846         definition.
17847         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
17848         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
17849         GC_USE_<algorithm>.
17850         * lib/gc-libgcrypt.c: Likewise.
17851         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
17852         * modules/gc-arctwo (configure.ac): Likewise.
17853         * modules/gc-des (configure.ac): Likewise.
17854         * modules/gc-hmac-md5 (configure.ac): Likewise.
17855         * modules/gc-hmac-sha1 (configure.ac): Likewise.
17856         * modules/gc-md2 (configure.ac): Likewise.
17857         * modules/gc-md4 (configure.ac): Likewise.
17858         * modules/gc-md5 (configure.ac): Likewise.
17859         * modules/gc-random (configure.ac): Likewise.
17860         * modules/gc-rijndael (configure.ac): Likewise.
17861         * modules/gc-sha1 (configure.ac): Likewise.
17862
17863 2007-01-08  Bruno Haible  <bruno@clisp.org>
17864
17865         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
17866         macro definition.
17867         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
17868         definition.
17869         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
17870         definition.
17871         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
17872         * modules/fcntl-safer (configure.ac): Likewise.
17873         * modules/fopen-safer (configure.ac): Likewise.
17874         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
17875         GNULIB_FWRITEERROR macro definition.
17876
17877 2007-01-08  Bruno Haible  <bruno@clisp.org>
17878
17879         * m4/gnulib-common.m4: New file.
17880         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
17881         (func_get_filelist): Add m4/gnulib-common.m4.
17882
17883 2007-01-08  Bruno Haible  <bruno@clisp.org>
17884
17885         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
17886         command.
17887
17888 2007-01-08  Jim Meyering  <jim@meyering.net>
17889
17890         Use a more robust test for a "can't happen" condition.
17891         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
17892         narrowed the st_size value.  Presuming the "can't happen" condition
17893         is true, that narrowing could conceivably convert an invalid st_size
17894         value into a valid one.  Instead, use a change based on Matthew
17895         Woehlke's original patch.
17896
17897         Slight readability improvement: use an assert-like macro
17898         in place of literal "abort ()" uses.
17899         * lib/fts.c (fts_assert): Define.
17900         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
17901         Use this macro instead of a bare 'abort'.
17902
17903 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
17904
17905         Don't worry about using IRIX 5.3's wctype.h broken definitions;
17906         simply work around them.
17907         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
17908         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
17909         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
17910         declaring.
17911         Don't bother to define as macros, since the standard doesn't require it.
17912         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
17913         longer worry about IRIX 5.3.
17914         (HAVE_WCTYPE_CTMP_BUG): Remove.
17915
17916 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
17917
17918         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
17919         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
17920         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
17921         Problems reported by Georg Schwarz for IRIX 5.3.
17922
17923         * gnulib-tool (autoconf_minversion): Take the maximum version number
17924         found, not the minimum.  Problem reported by James Youngman.
17925
17926 2007-01-03  Karl Berry  <karl@gnu.org>
17927
17928         * doc/error.texi: new file, explaining interaction with progname.
17929         * doc/gnulib.texi: include it.  Update copyright.
17930
17931 2007-01-03  Simon Josefsson  <simon@josefsson.org>
17932
17933         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
17934         AC_CANONICAL_HOST, to improve autobuild outputs.
17935
17936 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
17937             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
17938
17939         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
17940         sockets, server sockets, and other file descriptors.  Count errors
17941         to compute the return value.  Reorder the code a bit to be easier
17942         to follow.  Don't set event bits that were not requested (except
17943         POLLERR and POLLHUP).
17944
17945 2007-01-01  Bruno Haible  <bruno@clisp.org>
17946
17947         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
17948
17949 2007-01-03  Jim Meyering  <jim@meyering.net>
17950
17951         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
17952
17953 2007-01-02  Bruno Haible  <bruno@clisp.org>
17954
17955         * modules/settime (Include): Require timespec.h.
17956         * modules/nanosleep (Include): Likewise.
17957
17958 2007-01-01  Bruno Haible  <bruno@clisp.org>
17959
17960         * gnulib-tool (func_emit_copyright_notice): Bump year.
17961         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
17962
17963 2007-01-01  Bruno Haible  <bruno@clisp.org>
17964
17965         Improve support for OpenBSD.
17966         * build-aux/config.rpath (libname_spec): Export.
17967         (library_names_spec): New variable. Export.
17968         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
17969         library_names_spec from the config.rpath output. Locate shared library
17970         through the name pattern in library_names_spec.
17971
17972 2007-01-01  Eric Blake  <ebb9@byu.net>
17973
17974         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
17975
17976 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
17977
17978         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
17979         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
17980         assume the C locale, and avoid an "eval" that could cause trouble.
17981         Problem with SORT reported by Bob Proulx.
17982
17983         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
17984         Define.  Trivial patch from Henning Nielsen Lund, originally
17985         sent to bug-grep@gnu.org today.
17986
17987 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
17988
17989         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
17990         struct stat.  Problem reported by Henning Nielsen Lund.
17991         * lib/acl.c: Include acl.h first, to check interface.  Don't
17992         bother to include sys/types.h and sys/stat.h again.
17993
17994 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
17995
17996         Import the following change from libc; problem reported by
17997         Sven Verdoolaege.
17998
17999         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
18000
18001         [BZ #1373]
18002         * lib/argp.h: Remove __NTH for __argp_usage inline function.
18003
18004 2006-12-28  Jim Meyering  <jim@meyering.net>
18005
18006         * build-aux/announce-gen: Do not assume that the package
18007         builds any of tar.gz, tar.bz2, and .xdelta files.
18008         Suggestion from Simon Josefsson.
18009
18010 2006-12-28  Simon Josefsson  <simon@josefsson.org>
18011
18012         * modules/announce-gen: New file.
18013
18014 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
18015
18016         * lib/mbchar.h: Just include <wctype.h>; the wctype module
18017         handles its gotchas now.
18018         * lib/mbswidth.c: Likewise.
18019         * lib/wcwidth.h: Likewise.
18020         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
18021         and iswcntrl; the wctype module does this stuff now.
18022         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
18023         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
18024         * modules/mbchar (Depends-on): Add wctype.
18025         * modules/mbswidth (Depends-on): Likewise.
18026         * modules/wcwidth (Depends-on): Likewise.
18027
18028 2006-12-27  Eric Blake  <ebb9@byu.net>
18029
18030         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
18031         module uses more than what <wctype.h> is required to provide.
18032
18033 2006-12-26  Eric Blake  <ebb9@byu.net>
18034
18035         * gnulib-tool (sed_extract_prog): Avoid space-tab.
18036
18037 2006-12-26  Eric Blake  <ebb9@byu.net>
18038
18039         * modules/absolute-header: New module.
18040         * modules/fcntl (Depends-on): Depend on it.
18041         * modules/inttypes (Depends-on): Likewise.
18042         * modules/stdint (Depends-on): Likewise.
18043         * modules/sys_stat (Depends-on): Likewise.
18044         * modules/wctype (Depends-on): Likewise.
18045         * MODULES.html.sh (Support for building libraries and
18046         executables): Document it.
18047
18048 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
18049
18050         * gnulib-tool (SED): Remove, undoing previous change.
18051         The problem was that it broke coreutils on Solaris, because
18052         "sed --posix" leaked into a makefile.
18053         (sed): New alias, if 'alias' and GNU sed.
18054
18055 2006-12-24  Jim Meyering  <jim@meyering.net>
18056
18057         Work around an fchownat bug in glibc-2.4:
18058         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
18059         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
18060         in spite of the -P option.
18061         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
18062         New macros.
18063         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
18064         * modules/openat (Files): Add lib/fchownat.c.
18065         * lib/openat.c (fchownat): Don't define here.  Move to...
18066         * lib/fchownat.c: ...this new file.
18067
18068 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
18069
18070         Fix bug reported by Bruno Haible in
18071         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
18072         where quotearg.c didn't compile on Mac OS X 10.2 because it
18073         lacks <wchar.h> and wint_t.
18074         * lib/wctype_.h (__wctype_wint_t): New type.
18075         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
18076         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
18077         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
18078         Arg is now of type __wctype_wint_t, not wint_t.
18079         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
18080         substitute HAVE_WINT_T.
18081         * modules/wctype (Files): Add m4/wint_t.m4.
18082         (wctype.h): Substitute HAVE_WINT_T.
18083
18084 2006-12-23  Bruno Haible  <bruno@clisp.org>
18085
18086         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
18087
18088 2006-12-23  Bruno Haible  <bruno@clisp.org>
18089
18090         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
18091         S_ISLNK.
18092         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
18093         mingw.
18094
18095 2006-12-22  Bruno Haible  <bruno@clisp.org>
18096
18097         * lib/copy-file.c: Include acl.h.
18098         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
18099         Close the file descriptors only after being done with copy_acl.
18100         * modules/copy-file (Depends-on): Add acl.
18101
18102 2006-12-22  Bruno Haible  <bruno@clisp.org>
18103
18104         * gnulib-tool (SED): New variable.
18105         Use $SED instead of sed everywhere.
18106
18107 2006-12-22  Bruno Haible  <bruno@clisp.org>
18108
18109         * modules/no-c++: New file.
18110         * m4/no-c++.m4: New file.
18111         * MODULES.html.sh (Support for building libraries and executables):
18112         Add no-c++.
18113
18114 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
18115
18116         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
18117         Include <limits.h>, and use its INT_MAX to rewrite the
18118         j loop so that it does not overflow 'int'.  Problem reported by
18119         Ralf Wildenhues in
18120         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
18121         Play it safe by shifting left by 1 rather than multiplying by 2,
18122         as GCC is less likely to optimize this away when the value
18123         is signed (when it assumes overflow leads to undefined behavior).
18124         Also, don't assume time_t uses two's complement.
18125
18126 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
18127
18128         * MODULES.html.sh: New module wctype.
18129         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
18130         * lib/fnmatch.c: Don't bother to include <wchar.h> before
18131         <wctype.h>, since the new wctype module should fix this.
18132         * lib/quotearg.c: Include <wctype.h> unconditionally, since
18133         the wctype module should arrange for it.
18134         * lib/regex_internal.h: Likewise.
18135         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
18136         since the wctype module should handle this now.
18137         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
18138         * modules/fnmatch (Depends-on): Add wctype.
18139         * modules/quotearg (Depends-on): Likewise.
18140         * modules/regex (Depends-on): Likewise.
18141
18142 2006-12-19  Bruno Haible  <bruno@clisp.org>
18143
18144         * lib/strdup.h [C++]: Wrap definitions in extern "C".
18145         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
18146
18147 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18148
18149         * modules/savewd (Depends-on): Fix dependency on fcntl.
18150
18151 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
18152
18153         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
18154         conforms to C99, rather than relying on the user's environment
18155         setting of STDINT_H.
18156
18157 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
18158         and Eric Blake  <ebb9@byu.net>
18159
18160         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
18161         This is more consistent with the other defines here.
18162         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
18163         Port to z/OS.  Problem reported by Paul Gilmartin.
18164         Change local vars to use gl_ prefix rather than ac_.
18165         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
18166         with other defines.
18167         * modules/double-slash-root: New module.
18168         * modules/dirname (Files): Remove m4/double-slash-root.m4.
18169         (Depends-on): Add double-slash-root.
18170         * MODULES.html.sh (File system functions): Mention new module.
18171
18172 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
18173
18174         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
18175         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
18176         This is for the benefit of gzip, which doesn't do i18n.
18177
18178 2006-12-12  Jim Meyering  <jim@meyering.net>
18179
18180         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
18181         Reported by Andreas Schwab <schwab@suse.de>.
18182
18183 2006-12-12  Bruno Haible  <bruno@clisp.org>
18184
18185         Merge these changes.
18186         2006-09-05  Bruno Haible  <bruno@clisp.org>
18187         * lib/iconvme.c (iconv_string): No need to save and restore errno when
18188         iconv_alloc succeeded.
18189         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
18190         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
18191         test for " && dest " at the end - dest is always != NULL there. Call
18192         iconv with 4xNULL arguments initially, to reset the state. Call iconv
18193         with 2xNULL arguments, also to flush the state storage. Handle the
18194         IRIX iconv behaviour. Realloc the final result, to throw away unused
18195         memory.
18196
18197 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
18198
18199         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
18200         and fchmodat unconditionally, since glibc 2.4 has them.
18201         Problem reported by Arkadiusz Miskiewicz.
18202
18203 2006-12-10  Bruno Haible  <bruno@clisp.org>
18204
18205         * gnulib-tool (func_import): Show the include files only for those
18206         modules that are copied and specified.
18207         Reported by Karl Berry.
18208
18209 2006-12-08  Jim Meyering  <jim@meyering.net>
18210
18211         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
18212         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
18213
18214         * build-aux/announce-gen: Add two new options, both optional:
18215         --bootstrap-tools=TOOL_LIST
18216               a comma-separated list of tools, e.g.,
18217               autoconf,automake,bison,gnulib
18218         --gnulib-snapshot-date=DATE
18219               if gnulib is in the bootstrap tool list,
18220               then report this as the snapshot date.
18221               If not specified, use the current date/time.
18222               If you specify a date here, be sure it's UTC.
18223
18224 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18225
18226         * tests/test-argp-2.sh: Fix test to match actual output.
18227         (func_compare): Fix sed script to be portable.
18228
18229 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
18230
18231         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
18232         workaround for this case.  It is not autoconfigured now; offhand
18233         it's hard to see how to autoconfigure it.
18234
18235 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
18236
18237         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
18238         a directory that is about to be chowned.  Such a directory's
18239         initial file permissions should permit the owner only and this
18240         should not be changed until after the chown, since the group and
18241         other bits would be incorrect if they granted permission before
18242         the chown.
18243
18244         Fix porting problem for iswctype reported by Georg Schwarz in:
18245         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
18246         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
18247         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
18248         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
18249         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
18250
18251 2006-12-03  Jim Meyering  <jim@meyering.net>
18252
18253         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
18254         p->fts_statp may not yet be defined.
18255         (fts_read): Instead, set it in the caller, once p->fts_statp is
18256         sure to be defined, and corresponds to a top-level directory.
18257         This bug made du -x fail.  Here's the coreutils test case:
18258         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
18259         Reported by Mike Frysinger.
18260
18261 2006-12-01  Jim Meyering  <jim@meyering.net>
18262
18263         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
18264         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
18265         Reported by Simon Josefsson.
18266
18267 2006-11-30  Jim Meyering  <jim@meyering.net>
18268
18269         * m4/warning.m4: Use the all-permissive copyright notice
18270         recommended by RMS (rather than LGPL).
18271         * m4/vararrays.m4: Likewise.
18272         * m4/flexmember.m4: Likewise.
18273
18274 2006-11-29  Bruno Haible  <bruno@clisp.org>
18275
18276         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
18277         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
18278         using +=.
18279         Reported by Simon Josefsson <simon@josefsson.org>.
18280
18281 2006-11-28  James Youngman <jay@gnu.org>
18282
18283         * README: Advise users that they might find the bug-gnulib@gnu.org
18284         and autotools-announce@gnu.org mailing lists useful.
18285
18286 2006-11-28  Bruno Haible  <bruno@clisp.org>
18287
18288         * m4/ptrdiff_max.m4: Remove file.
18289
18290 2006-11-21  Bruno Haible  <bruno@clisp.org>
18291
18292         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
18293         _AC_COMPUTE_INT.
18294         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18295         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
18296         _AC_COMPUTE_INT.
18297         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18298         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
18299         _AC_COMPUTE_INT.
18300         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18301
18302 2006-11-28  Jim Meyering  <jim@meyering.net>
18303
18304         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
18305         warning from "gcc -Wshadow" about shadowing the builtin.
18306
18307 2006-11-27  Bruno Haible  <bruno@clisp.org>
18308
18309         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
18310         _AC_COMPUTE_INT.
18311         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18312
18313 2006-11-27  Bruno Haible  <bruno@clisp.org>
18314             Paul Eggert  <eggert@cs.ucla.edu>
18315
18316         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
18317
18318 2006-11-26  Bruno Haible  <bruno@clisp.org>
18319
18320         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
18321         noinst_LTLIBRARIES.
18322
18323 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
18324             Bruno Haible  <bruno@clisp.org>
18325
18326         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
18327         if compiling with "gcc -ansi".
18328
18329 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
18330
18331         Fix some incompatibilities with gcc -ansi -pedantic.
18332         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
18333         if compiling pedantically with GCC, unless it's C99 or later.
18334         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
18335         it mishandles gcc -ansi -pedantic as well.
18336         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
18337         if gcc -pedantic.
18338         * lib/regexec.c (check_node_accept_bytes): Don't use auto
18339         initializers for struct if -pedantic, unless it's C99 or later.
18340
18341 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
18342
18343         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
18344         Don't close an fd more than once. Identical atimes indicate
18345         success, not failure.
18346
18347 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
18348
18349         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
18350
18351 2006-11-23  Jim Meyering  <jim@meyering.net>
18352
18353         * build-aux/announce-gen: New file.  From coreutils.
18354
18355 2006-11-22  Jim Meyering  <jim@meyering.net>
18356
18357         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
18358         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
18359         (fts_read): Use a temporary to narrow the overused st_size member
18360         before using it in a switch statement.  Reported by Matthew Woehlke.
18361
18362         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
18363         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
18364
18365 2006-11-20  Bruno Haible  <bruno@clisp.org>
18366
18367         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
18368         changequote instead of pairs of brackets.
18369         Reported by Andreas Schwab <schwab@suse.de>.
18370
18371 2006-11-21  Jim Meyering  <jim@meyering.net>
18372
18373         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
18374         so as to remain compatible with older compilers.
18375         Patch from Michael Deutschmann.
18376
18377 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
18378
18379         * MODULES.html.sh (File system functions): Add openat.
18380
18381         * lib/openat.h (rpl_fstatat): New macro, if
18382         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
18383         (fstatat): Define to rpl_fstatat under the same conditions,
18384         unless COMPILING_FSTATAT.
18385         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
18386         seems to have the bug.
18387         * lib/fstatat.c: New file.
18388         * modules/openat (Files): Add it.
18389
18390 2006-11-20  Bruno Haible  <bruno@clisp.org>
18391
18392         * Makefile: New file.
18393
18394 2006-11-20  Jim Meyering  <jim@meyering.net>
18395
18396         The beginnings of syntax-related checks for gnulib.
18397         * lib/Makefile: New file.
18398         * lib/t-idcache: New script.  Ensure that the two halves of
18399         idcache.c stay in sync.
18400
18401         * lib/idcache.c: Adjust comments in user- and group- portions to
18402         be more accurate, and to be consistent with one another.
18403
18404 2006-11-20  Jim Meyering  <jim@meyering.net>
18405
18406         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
18407         continue using the flexible array member (thus, this module performs
18408         half as many malloc calls), with the addition that...
18409         (getgroup, getuser): Consistently record a non-match via an empty
18410         "name" string, and map an empty string match to a NULL return value.
18411         * modules/idcache (Depends-on): Re-add flexmember.
18412
18413         * lib/idcache.c (getuser): Remove all uses of the register keyword.
18414         (getuidbyname, getgroup, getgidbyname): Likewise.
18415
18416         Use cleaner syntax: NULL rather than 0.
18417         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
18418
18419 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
18420
18421         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
18422         It mishandled the case where the group was missing.
18423         Problem reported by Greg Schafer.
18424         * modules/idcache: Likewise.
18425
18426 2006-11-18  Jim Meyering  <jim@meyering.net>
18427
18428         * check-module (%exempt_header): Add exception for some
18429         conditionally-included headers.
18430
18431         * modules/i-ring (Depends-on): Add verify.
18432         (License): Change to LGPL.
18433
18434 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
18435
18436         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
18437         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
18438         and inttostr.h.  Use snprintf rather than uinttostr, so that
18439         LGPLed code doesn't depend on GPLed.
18440
18441 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
18442
18443         * modules/inline (License): Change from GPL to LGPL.
18444
18445 2006-11-17  Jim Meyering  <jim@meyering.net>
18446
18447         * modules/d-type (License): Switch to LGPL.
18448
18449 2006-11-15  Bruno Haible  <bruno@clisp.org>
18450
18451         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
18452
18453 2006-11-15  Eric Blake  <ebb9@byu.net>
18454
18455         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
18456         the module dependency.
18457
18458 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
18459             Bruno Haible  <bruno@clisp.org>
18460
18461         * gnulib-tool (func_create_testdir): Add license consistency check.
18462
18463 2006-11-15  Eric Blake  <ebb9@byu.net>
18464
18465         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
18466         random "(cached)" in configure output.
18467
18468 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18469
18470         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
18471         test for conforming inttypes.h is both announced and cached.
18472
18473         * MODULES.html.sh (seen_modules, seen_files): New variables.
18474         (func_module): Rewrite to use a few less gnulib-tool and sed
18475         invocations.  Avoid a couple of quadratic algorithms for ...
18476         (missed_modules, missed_files): ... these, with ...
18477         (func_append, func_tmpdir): ... these new functions, from
18478         gnulib-tool.  Analogously, install traps for cleanup.
18479
18480         * tests/test-gc.c (main): Remove unused variables.
18481         * tests/test-read-file.c: Include stdlib.h, for 'free'.
18482
18483 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
18484
18485         * modules/inttostr (License): Change to LGPL.
18486
18487 2006-11-14  Eric Blake  <ebb9@byu.net>
18488
18489         * modules/tempname (License): Change to LGPL.
18490
18491 2006-11-14  Eric Blake  <ebb9@byu.net>
18492
18493         * doc/functions.texi (Function Portability): *printf functions on
18494         Cygwin now understand all POSIX size specifiers.
18495
18496 2006-11-14  Bruno Haible  <bruno@clisp.org>
18497
18498         * modules/c-ctype (License): Change to LGPL.
18499
18500 2006-11-12  Bruno Haible  <bruno@clisp.org>
18501
18502         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
18503         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
18504         for GNOME libraries, for which the include files are installed in
18505         subdirectories of $prefix/include.
18506
18507 2006-11-12  Bruno Haible  <bruno@clisp.org>
18508
18509         * m4/lib-link.m4: Require at least autoconf-2.54.
18510         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
18511         name to underscores for the --with option.
18512
18513 2006-11-13  Bruno Haible  <bruno@clisp.org>
18514
18515         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
18516         the tests directory.
18517         Reported by Ralf Wildenhues.
18518
18519 2006-11-13  Bruno Haible  <bruno@clisp.org>
18520
18521         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
18522         (func_emit_initmacro_end): Undo the override here.
18523         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
18524         Works around the famous automake error in coreutils.
18525
18526 2006-11-13  Eric Blake  <ebb9@byu.net>
18527
18528         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
18529         element, not its node.
18530
18531 2006-11-12  Bruno Haible  <bruno@clisp.org>
18532
18533         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
18534         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
18535
18536 2006-11-12  Bruno Haible  <bruno@clisp.org>
18537
18538         * gnulib-tool: New option --local-symlink.
18539         (func_usage): Document it.
18540         (lsymbolic): New variable.
18541         (func_import, func_create_testdir): If --symlink was not specified,
18542         test whether --local-symlink was specified and the file comes from
18543         the local_gnulib_dir.
18544
18545 2006-11-12  Bruno Haible  <bruno@clisp.org>
18546
18547         * gnulib-tool (func_ln): New function.
18548         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
18549
18550 2006-11-12  Bruno Haible  <bruno@clisp.org>
18551
18552         Finish support for source files in subdirectories.
18553         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
18554         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
18555         AUTOMAKE_OPTIONS.
18556         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
18557
18558 2006-11-12  Bruno Haible  <bruno@clisp.org>
18559
18560         * gnulib-tool (func_get_automake_snippet): Synthesize also an
18561         EXTRA_lib_SOURCES augmentation.
18562         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
18563
18564 2006-11-12  Jim Meyering  <jim@meyering.net>
18565
18566         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
18567         file descriptors.  This also averts a failure on systems with
18568         native openat support when a traversed directory lacks "x" access.
18569         * lib/fts_.h: Include "i-ring.h"
18570         (struct FTS) [fts_fd_ring]: New member.
18571         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
18572         (FCHDIR): Add parentheses.
18573         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
18574         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
18575         When descending, rather than simply closing the previous
18576         fts_cwd_fd value, push that file descriptor onto the ring.
18577         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
18578         (fts_open): Initialize the new fd_ring member.
18579         (fts_close): Clear the ring.
18580         (fts_safe_changedir): When possible, use our new fd_ring to skip
18581         the diropen and fstat and dev/ino comparison that would normally
18582         accompany a virtual `chdir ("..")'.
18583
18584         * modules/fts (Depends-on): Add i-ring.
18585         * modules/i-ring: New module.
18586         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
18587         * m4/i-ring.m4: New file.
18588
18589 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18590
18591         * gnulib-tool (func_create_testdir): Fix replacement of
18592         `build-aux' in configure.ac.  Run autotools in gltests
18593         subdirectory.
18594         (func_create_testdir, func_create_megatestdir, test): There is
18595         no need for '--force' in most autotool invocations in a new
18596         tree.  Actually fail the whole test if any of the tools, or the
18597         configure or make stages fail.
18598
18599         Sync from Automake.
18600         * build-aux/gnupload: Revert last change.  Add pointer to upload
18601         instructions of the GNU Maintenance Instructions.
18602         Suggestion by Karl Berry.
18603
18604 2006-11-10  Jim Meyering  <jim@meyering.net>
18605
18606         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
18607
18608 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
18609
18610         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
18611         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
18612         (bind_textdomain_codeset) [! ENABLE_NLS]:
18613         Evaluate all the arguments.  That way, callers get compatible behavior
18614         if the arguments have side effects.  Also, it avoids some GCC
18615         diagnostics in some cases; Joel E. Denny reported problems when Bison
18616         was configured with --enable-gcc-warnigs.
18617
18618 2006-11-10  Jim Meyering  <jim@meyering.net>
18619
18620         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
18621         relevant options in CFLAGS (like -O, -fno-inline) are taken into
18622         account.
18623
18624 2006-11-10  Jim Meyering  <jim@meyering.net>
18625
18626         * modules/inline: New file/module.
18627         * modules/xalloc (Files): Remove m4/inline.m4.
18628         (Depends-on): Add inline, instead.
18629         * modules/oset: Likewise.
18630         * modules/list: Likewise.
18631
18632 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
18633
18634         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
18635         Problem reported by Matthew Woehlke.
18636
18637 2006-11-09  Bruno Haible  <bruno@clisp.org>
18638
18639         * lib/tempname.c (gen_tempname): Remove variant that invokes
18640         __gen_tempname.
18641         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
18642         __gen_tempname.
18643
18644 2006-11-08  Bruno Haible  <bruno@clisp.org>
18645
18646         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
18647         to 'yes' instead of 'cross-compiling'.
18648
18649 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
18650
18651         * lib/quotearg.h (quotearg_free): New decl.
18652         * lib/quotearg.c (quotearg_free): New function.
18653         (slot0, nslots, slotvec0, slotvec):
18654         Now file-scope so that quotearg_free can get at them.
18655
18656 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18657
18658         Sync from Automake.
18659         * build-aux/gnupload: Add missing 'gnu' to example URL.
18660         Report by Karl Berry.
18661
18662 2006-11-08  Bruno Haible  <bruno@clisp.org>
18663
18664         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
18665         Suggested by Paul Eggert.
18666
18667 2006-11-08  Jim Meyering  <jim@meyering.net>
18668
18669         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
18670         It's already included if !_LIBC.
18671         (fts_safe_changedir): Add a comment.
18672
18673 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
18674
18675         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
18676         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
18677         Matthew Woehlke.
18678
18679         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
18680         definitions up, to avoid colliding with change below.
18681         (static_inline) [HAVE_INLINE]: New macro.
18682         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
18683         Provide extern decls when !HAVE_INLINE.  Do not define unless
18684         static_inline is defined, either by us or by xmalloc.c.  Use
18685         static_inline rather than static inline.
18686         (XCALLOC): Optimize sizeof(T) = 1 case.
18687         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
18688
18689 2006-11-07  Bruno Haible  <bruno@clisp.org>
18690
18691         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
18692         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
18693         AC_C_INLINE.
18694         * modules/xalloc (Files): Add m4/inline.m4.
18695
18696 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18697
18698         * README: Fix typo.
18699         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
18700         (Miscellanous Notes): ...from this.
18701
18702 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
18703
18704         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
18705         Mention that offsetof should be used instead of sizeof.
18706         From Bruno Haible.
18707
18708 2006-11-07  Bruno Haible  <bruno@clisp.org>
18709
18710         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
18711
18712 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
18713
18714         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
18715         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
18716         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
18717         (gl_tree_add_before, gl_tree_add_after):
18718         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
18719         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
18720         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
18721         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
18722         (gl_linked_add_after, gl_linked_add_at): Likewise.
18723         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
18724         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
18725         (gl_tree_add_before, gl_tree_add_after): Likewise.
18726         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
18727         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
18728         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
18729
18730 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18731
18732         * lib/gl_oset.h: Use C comment style, not C++ comment style.
18733
18734 2006-11-06  Bruno Haible  <bruno@clisp.org>
18735
18736         * m4/inline.m4: New file.
18737         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
18738         * modules/list (Files): Add m4/inline.m4.
18739         * modules/oset (Files): Likewise.
18740
18741 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
18742
18743         * lib/idcache.c: Include <stddef.h>, for offsetof.
18744         (struct userid.name): Change from char * to a flexible array member.
18745         All uses changed.
18746         * modules/idcache (Depends-on): Add flexmember.
18747
18748         * MODULES.html.sh (Core language properties): New module flexmember.
18749         * modules/flexmember, m4/flexmember.m4: New files.
18750
18751         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
18752         inline functions that are identical with the old xnmalloc_inline,
18753         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
18754         that we can avoid some unnecessary integer multiplications and
18755         divisions in the common case where the element size is known at
18756         compile time.
18757         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
18758         needed.
18759         (xnboundedmalloc): Remove.
18760         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
18761         arguments, for consistency with rest of this header.
18762         (xcharalloc): Rewrite using XNMALLOC.
18763         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
18764         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
18765         versions have been moved to lib/xalloc.h and renamed to be the
18766         non-*_inline versions.
18767         (xmalloc, xrealloc): Implement without reference to the xnmalloc
18768         and xnrealloc functions, since those functions are now inline and
18769         now call us.
18770         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
18771         renaming described above.
18772         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
18773         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
18774         captures the dependency in AC_C_INLINE.
18775
18776         New module canonicalize-lgpl, proposed by Charles Wilson in
18777         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
18778         with a few small changes afterwards.
18779         * MODULES.html.sh (File system functions): New module
18780         canonicalize-lgpl.
18781         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
18782         and canonicalize_file_name.
18783         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
18784         * modules/canonicalize-lgpl: New files.
18785
18786 2006-11-05  Bruno Haible  <bruno@clisp.org>
18787
18788         * gnulib-tool (func_import, func_create_testdir): Create directories
18789         also for files in subdirectories of lib/.
18790
18791 2006-11-05  Bruno Haible  <bruno@clisp.org>
18792
18793         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
18794         ANSI C compliant.
18795
18796 2006-11-03  Bruno Haible  <bruno@clisp.org>
18797
18798         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
18799         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
18800         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
18801         (xnboundedmalloc): New inline function.
18802         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
18803         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
18804         xmalloc.
18805         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
18806         xmalloc.
18807         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
18808         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
18809         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
18810         xmalloc.
18811         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
18812         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
18813         xmalloc.
18814         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
18815         gl_tree_add_after): Use XMALLOC instead of xmalloc.
18816         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
18817         xmalloc.
18818         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
18819         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
18820         gl_tree_add_after): Use XMALLOC instead of xmalloc.
18821         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
18822         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
18823         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
18824         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
18825
18826 2006-11-03  Bruno Haible  <bruno@clisp.org>
18827
18828         * lib/c-ctype.h [C++]: Define functions without name mangling.
18829         * lib/fwriteerror.h [C++]: Likewise.
18830         * lib/gcd.h [C++]: Likewise.
18831         * lib/linebreak.h [C++]: Likewise.
18832
18833 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
18834
18835         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
18836         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
18837         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
18838         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
18839         Check for functions and headers just once.
18840         Check for declaration of canonicalize_file_name.
18841         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
18842
18843 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
18844
18845         * gnulib-tool (func_import): Fix typo in actioncmd.
18846
18847 2006-11-02  Bruno Haible  <bruno@clisp.org>
18848
18849         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
18850         newline sequence in the Makefile.am snippet as a space, like "make"
18851         does.
18852         Reported by Roger Persson <perrog@gmail.com>.
18853
18854 2006-11-01  Bruno Haible  <bruno@clisp.org>
18855
18856         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
18857         already declared in <string.h>.
18858         * lib/strcase.h (strncasecmp): Don't declare it if yes.
18859
18860 2006-11-01  Bruno Haible  <bruno@clisp.org>
18861
18862         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
18863         * lib/strcase.h: Include <string.h>.
18864         (strcasecmp): Define to rpl_strcasecmp here.
18865
18866 2006-11-01  Bruno Haible  <bruno@clisp.org>
18867
18868         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
18869
18870 2006-11-01  Eric Blake  <ebb9@byu.net>
18871
18872         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
18873
18874         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
18875
18876 2006-10-29  Bruno Haible  <bruno@clisp.org>
18877
18878         Make it compile in C++ mode.
18879         * lib/full-write.c (full_rw): Add a cast.
18880
18881 2006-11-01  Bruno Haible  <bruno@clisp.org>
18882
18883         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
18884         be POSIX compliant.
18885         Reported by Roger Persson <perrog@gmail.com>.
18886
18887 2006-11-01  Eric Blake  <ebb9@byu.net>
18888
18889         * lib/getopt_.h: Fix comments.
18890
18891 2006-10-31  Eric Blake  <ebb9@byu.net>
18892
18893         * modules/tmpdir (Depends-on): Add sys_stat.
18894         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
18895         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
18896         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
18897         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
18898         tempname.
18899
18900 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
18901
18902         Avoid some C++ diagnostics reported by Bruno Haible.
18903         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
18904         xmalloc.
18905         (quotearg_alloc): Use xcharalloc rather than xmalloc.
18906         (struct slotvec): Move to top level.
18907         (quotearg_n_options): Rewrite to avoid xmalloc.
18908         * lib/xalloc.h (xcharalloc): New function.
18909         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
18910         [defined __cplusplus]: Add function template that provides result
18911         type propagation.  This part of the change is from Bruno Haible.
18912
18913 2006-10-29  Bruno Haible  <bruno@clisp.org>
18914
18915         Make it compile in C++ mode.
18916         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
18917         * lib/strnlen1.c (strnlen1): Cast memchr result.
18918         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
18919         * lib/clean-temp.c (string_equals, string_hash): Add casts.
18920         (create_temp_dir): Rename local variable 'template'.
18921         (compile_csharp_using_sscli): Add cast.
18922         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
18923         * lib/findprog.c (find_in_path): Likewise.
18924         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
18925         * lib/wait-process.c (register_slave_subprocess): Likewise.
18926
18927 2006-10-22  Bruno Haible  <bruno@clisp.org>
18928
18929         * modules/tsearch: New file.
18930         * lib/tsearch.h: New file.
18931         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
18932         * m4/tsearch.m4: New file.
18933         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
18934
18935 2006-10-29  Eric Blake  <ebb9@byu.net>
18936
18937         * lib/arcfour.c: Assume config.h.
18938         * lib/arctwo.c: Likewise.
18939         * lib/base64.c: Likewise.
18940         * lib/check-version.c: Likewise.
18941         * lib/crc.c: Likewise.
18942         * lib/des.c: Likewise.
18943         * lib/gc-gnulib.c: Likewise.
18944         * lib/gc-libgcrypt.c: Likewise.
18945         * lib/gc-pbkdf2-sha1.c: Likewise.
18946         * lib/getaddrinfo.c: Likewise.
18947         * lib/getdelim.c: Likewise.
18948         * lib/getline.c: Likewise.
18949         * lib/hmac-md5.c: Likewise.
18950         * lib/hmac-sha1.c: Likewise.
18951         * lib/iconvme.c: Likewise.
18952         * lib/md2.c: Likewise.
18953         * lib/md4.c: Likewise.
18954         * lib/memxor.c: Likewise.
18955         * lib/read-file.c: Likewise.
18956         * lib/readline.c: Likewise.
18957         * lib/rijndael-alg-fst.c: Likewise.
18958         * lib/rijndael-api-fst.c: Likewise.
18959         * lib/xgetdomainname.c: Likewise.
18960
18961 2006-10-28  Eric Blake  <ebb9@byu.net>
18962
18963         * lib/xstrndup.c: Assume config.h.
18964
18965 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
18966
18967         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
18968         stat-macros.h is now for our own macros, whereas stat_h is for
18969         macros in the <sys/stat.h> name space.
18970         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
18971         (STAT_MACROS_H): Remove.
18972         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
18973         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
18974         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
18975         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
18976         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
18977         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
18978         Move these macros to ...
18979         * lib/stat_.h: here.  Don't include stat-macros.h.
18980         * lib/canonicalize.c: Don't include stat-macros.h.
18981         * lib/chown.c: Likewise.
18982         * lib/euidaccess.c: Likewise.
18983         * lib/file-type.c: Likewise.
18984         * lib/filemode.c: Likewise.
18985         * lib/glob.c: Likewise.
18986         * lib/isapipe.c: Likewise.
18987         * lib/lchown.c: Likewise.
18988         * lib/lstat.c: Likewise.
18989         * lib/mkdir-p.c: Likewise.
18990         * lib/rmdir.c: Likewise.
18991         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
18992         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
18993         unless mkdir isn't declared, to speed up 'configure'.
18994         Always create sys/stat.h, since it's unlikely any real sys/stat.h
18995         would define all the S_* symbols.
18996         * modules/canonicalize (Depends-on):
18997         Depend on sys_stat, not stat-macros.
18998         * modules/chown: Likewise.
18999         * modules/euidaccess: Likewise.
19000         * modules/filemode: Likewise.
19001         * modules/file-type: Likewise.
19002         * modules/glob: Likewise.
19003         * modules/isapipe: Likewise.
19004         * modules/lchown: Likewise.
19005         * modules/lstat: Likewise.
19006         * modules/mkancesdirs: Likewise.
19007         * modules/rmdir: Likewise.
19008         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
19009         * modules/modechange: Likewise.
19010         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
19011         (configure.ac): Remove gl_STAT_MACROS.
19012         * modules/sys_stat (Depends-on): Remove stat-macros.
19013
19014 2006-10-27  Bruno Haible  <bruno@clisp.org>
19015
19016         * m4/signed.m4: Remove file.
19017         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
19018         invocation.
19019         * modules/vasnprintf (Files): Remove m4/signed.m4.
19020
19021 2006-10-27  Bruno Haible  <bruno@clisp.org>
19022
19023         Update to GNU gettext 0.16.
19024         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
19025         m4/inttypes-h.m4, m4/signed.m4.
19026         * m4/gettext.m4: Update to GNU gettext 0.16.
19027         * m4/intl.m4: New file, from GNU gettext.
19028         * m4/intldir.m4: New file, from GNU gettext.
19029         * config/srclist.txt: Update
19030
19031 2006-10-27  Eric Blake  <ebb9@byu.net>
19032
19033         * MODULES.html.sh: Document tempname.
19034         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
19035         dependencies.
19036         (Files): Move lib/tempname.c...
19037         * modules/tempname: ...to this new module.
19038         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
19039         (gl_PREREQ_TEMPNAME): Move...
19040         * m4/tempname.m4: ...to this new file.
19041         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
19042         * modules/sys_stat (Depends-on): Add stat-macros.
19043         * lib/stat_.h (includes): Pick up stat macros.
19044         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
19045         if stat macros are broken.
19046         * lib/tempname.c (includes): No need to include "stat-macros.h".
19047         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
19048         (direxists, __path_search) [!_LIBC]: Don't compile these in
19049         gnulib; the tmpdir module covers that.
19050         * lib/tempname.h: New file.
19051
19052 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
19053
19054         * COPYING: Explain how gnulib-tool converts licence headers.
19055         Almost all wording by Eric Blake.
19056
19057 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
19058
19059         * lib/mbchar.h (is_basic_table): Make read-only.
19060         * lib/mbchar.c (is_basic_table): Likewise.
19061         Reported by John Darrington.
19062
19063 2006-10-25  Bruno Haible  <bruno@clisp.org>
19064
19065         * lib/progname.h (set_program_name): Undefine before defining.
19066
19067 2006-10-25  Bruno Haible  <bruno@clisp.org>
19068
19069         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
19070         false for non-gcc C++ compilers.
19071         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
19072
19073 2006-10-24  Bruno Haible  <bruno@clisp.org>
19074
19075         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
19076         iconv implementations like Irix iconv.
19077
19078 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19079
19080         * modules/vararrays: New file.
19081         * m4/vararrays.m4: New file, taken from diffutils.
19082         * MODULES.html.sh: New module vararrays.
19083
19084 2006-10-24  Karl Berry  <karl@gnu.org>
19085
19086         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
19087         Don't call GNU Unix.
19088
19089 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19090
19091         * users.txt: Add Libtool.
19092
19093         Sync from Libtool:
19094
19095         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19096
19097         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
19098         to gnulib's policy of including config.h unconditionally.
19099
19100 2006-10-24  Bruno Haible  <bruno@clisp.org>
19101
19102         * modules/wcwidth (Files): Add m4/wint_t.m4.
19103         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
19104         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
19105
19106 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19107
19108         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
19109         to pacify GCC with some -W flags enabled.  Problem reported by
19110         Bruno Haible.
19111
19112 2006-10-24  Jim Meyering  <jim@meyering.net>
19113
19114         * MODULES.html.sh: Remove uinttostr.  It's not a module.
19115         Reported by Karl Berry.
19116
19117 2006-10-23  Bruno Haible  <bruno@clisp.org>
19118
19119         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
19120
19121 2006-10-24  Bruno Haible  <bruno@clisp.org>
19122
19123         * lib/gl_list.h: Use C comment style, not C++ comment style.
19124
19125 2006-10-23  Eric Blake  <ebb9@byu.net>
19126
19127         * lib/getaddrinfo.c (includes): Add missing include.
19128
19129 2006-10-23  Bruno Haible  <bruno@clisp.org>
19130             Paul Eggert  <eggert@cs.ucla.edu>
19131
19132         Ability to rename obstack_free.
19133         * lib/obstack.h (__obstack_free): New macro. Declare instead of
19134         obstack_free.
19135         (obstack_free): Invoke the __obstack_free macro.
19136         * lib/obstack.c (obstack_free): Use __obstack_free macro.
19137
19138 2006-10-23  Bruno Haible  <bruno@clisp.org>
19139             Paul Eggert  <eggert@cs.ucla.edu>
19140
19141         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
19142         __argc, __argv from the declaration. (They are defined as macros on
19143         mingw.)
19144
19145 2006-10-22  Bruno Haible  <bruno@clisp.org>
19146
19147         * doc/gnulib-intro.texi: New file.
19148         * doc/gnulib.texi: Include it.
19149
19150 2006-10-21  Bruno Haible  <bruno@clisp.org>
19151
19152         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
19153         "Introduction", "Miscellanous Notes", "Particular Modules".
19154
19155 2006-10-21  Bruno Haible  <bruno@clisp.org>
19156
19157         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
19158         Change mostlyclean-local rule to avoid sh syntax error from bash
19159         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
19160
19161 2006-10-23  Jim Meyering  <jim@meyering.net>
19162
19163         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
19164         in place of snprintf.
19165
19166         * modules/inttostr (Files): Add lib/uinttostr.c.
19167         * lib/uinttostr.c (inttostr): New file/function.
19168         * lib/inttostr.h (uinttostr): Declare.
19169         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
19170         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
19171         Add uinttostr.
19172         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
19173
19174 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19175
19176         * lib/canonicalize.c (ELOOP): Define if not already defined.
19177         Problem reported by Bruno Haible in
19178         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
19179
19180 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19181
19182         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
19183         Problem reported by Perry Smith and Ville Laurikari.
19184
19185         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
19186         uses.
19187
19188 2006-10-19  Bruno Haible  <bruno@clisp.org>
19189
19190         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
19191         for mingw.
19192
19193 2006-10-19  Bruno Haible  <bruno@clisp.org>
19194
19195         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
19196         Needed for mingw.
19197
19198 2006-10-19  Bruno Haible  <bruno@clisp.org>
19199
19200         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
19201
19202 2006-10-19  Bruno Haible  <bruno@clisp.org>
19203
19204         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
19205         it.
19206
19207 2006-10-19  Bruno Haible  <bruno@clisp.org>
19208
19209         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
19210         invocation.
19211
19212 2006-10-19  Bruno Haible  <bruno@clisp.org>
19213
19214         * gnulib-tool (func_create_testdir): Don't include ftruncate and
19215         mountlist by default.
19216
19217 2006-10-16  Bruno Haible  <bruno@clisp.org>
19218
19219         * lib/c-strstr.c: Include c-strstr.h.
19220
19221 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
19222
19223         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
19224         in a slash.
19225
19226 2006-10-18  Bruno Haible  <bruno@clisp.org>
19227
19228         * lib/lock.h [C++]: Wrap definitions in extern "C".
19229
19230 2006-10-18  Bruno Haible  <bruno@clisp.org>
19231
19232         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
19233         gl_LIBOBJS list.
19234
19235 2006-10-18  Bruno Haible  <bruno@clisp.org>
19236
19237         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
19238
19239 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
19240
19241         * lib/xstrtol.h: Include gettext.h.
19242         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
19243         Problem reported by Eric Blake.
19244         * modules/xstrtol (Depends-on): Add gettext-h.
19245
19246 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
19247
19248         * lib/strftime.c (advance): New macro.
19249         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
19250         incomplete type, so you can't add 0 to it.  Problem and patch
19251         reported by Eelco Dolstra for dietlibc.
19252
19253 2006-10-18  Jim Meyering  <jim@meyering.net>
19254
19255         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
19256         type for a local, and rename it: s/up/user_proc/.
19257
19258 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
19259
19260         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
19261         READ_UTMP_USER_PROCESS.
19262         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
19263
19264 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
19265
19266         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
19267         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
19268
19269 2006-10-17  Eric Blake  <ebb9@byu.net>
19270
19271         * lib/sigprocmask.c (sigprocmask): Fix typo.
19272
19273         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
19274
19275         * modules/clean-temp (Makefile.am): Don't add to make output...
19276         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
19277         config.h.
19278
19279 2006-10-17  Bruno Haible  <bruno@clisp.org>
19280
19281         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
19282         differently if DEFAULT_TEXT_DOMAIN is set.
19283
19284 2006-10-16  Bruno Haible  <bruno@clisp.org>
19285
19286         * lib/clean-temp.c: Include fwriteerror.h.
19287
19288 2006-10-16  Bruno Haible  <bruno@clisp.org>
19289
19290         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
19291
19292 2006-10-16  Bruno Haible  <bruno@clisp.org>
19293
19294         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
19295         * lib/sigprocmask.h: Include <sys/types.h>.
19296         (sigset_t): Use the system's definition if present.
19297
19298 2006-10-17  Eric Blake  <ebb9@byu.net>
19299
19300         * lib/xvasprintf.c (includes): Assume config.h.
19301         * lib/xasprintf.c (includes): Likewise.
19302
19303 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19304
19305         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
19306         at least as wide as intmax_t.
19307
19308 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
19309
19310         (Imported from Automake.)
19311         * build-aux/gnupload: Update to version 1.1 of directive file.
19312
19313 2006-10-16  Eric Blake  <ebb9@byu.net>
19314
19315         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
19316         match Automake 1.10a.
19317
19318 2006-10-14  Bruno Haible  <bruno@clisp.org>
19319
19320         * modules/sigprocmask: New file.
19321         * lib/sigprocmask.h: New file.
19322         * lib/sigprocmask.c: New file.
19323         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
19324         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
19325         request sigprocmask.o.
19326         (gl_PREREQ_SIGPROCMASK): New macro.
19327         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
19328         (Depends-on): Add sigprocmask.
19329         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
19330         gt_SIGNALBLOCKING. Test for 'raise' only once.
19331         * lib/fatal-signal.c: Include sigprocmask.h.
19332         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
19333         unblock_fatal_signals): Define always.
19334         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
19335         sigprocmask.
19336
19337 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19338
19339         Sync from Automake.
19340         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
19341         which incorrectly sets the mode of an existing destination
19342         directory.  In some cases the unpatched install-sh could do the
19343         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
19344         system.  We hope this is rare in practice, but it's clearly worth
19345         fixing.  Problem reported by Alex Unleashed in
19346         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
19347         Also, don't bother to check for -m bugs unless we're using -m;
19348         suggested by Stepan Kasal.
19349
19350 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19351
19352         Sync from Automake.
19353         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
19354         `-c' flag, so they appear at the same position as in %FASTDEP%
19355         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
19356         which ignores unknown options only after the first non-option.
19357         Bug report against M4 by Nelson H. F. Beebe.
19358
19359 2006-10-13  Jim Meyering  <jim@meyering.net>
19360
19361         Fix a bug in yesterday's change.
19362         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
19363         p->fts_statp->st_dev would be used uninitialized.
19364         Ensures that we always call fts_stat on the very first entry.
19365         Miklos Szeredi reported that find -xdev stopped working.
19366
19367 2006-10-12  Bruno Haible  <bruno@clisp.org>
19368
19369         * gnulib-tool (func_get_automake_snippet): Append an automatically
19370         computed EXTRA_DIST augmentation.
19371         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
19372         * modules/alloca-opt (Makefile.am): Likewise.
19373         * modules/allocsa (Makefile.am): Likewise.
19374         * modules/arcfour (Makefile.am): Likewise.
19375         * modules/arctwo (Makefile.am): Likewise.
19376         * modules/argmatch (Makefile.am): Likewise.
19377         * modules/argz (Makefile.am): Likewise.
19378         * modules/atexit (Makefile.am): Likewise.
19379         * modules/backupfile (Makefile.am): Likewise.
19380         * modules/byteswap (Makefile.am): Likewise.
19381         * modules/c-strtod (Makefile.am): Likewise.
19382         * modules/c-strtold (Makefile.am): Likewise.
19383         * modules/calloc (Makefile.am): Likewise.
19384         * modules/canon-host (Makefile.am): Likewise.
19385         * modules/canonicalize (Makefile.am): Likewise.
19386         * modules/chdir-long (Makefile.am): Likewise.
19387         * modules/chdir-safer (Makefile.am): Likewise.
19388         * modules/check-version (Makefile.am): Likewise.
19389         * modules/chown (Makefile.am): Likewise.
19390         * modules/cloexec (Makefile.am): Likewise.
19391         * modules/close-stream (Makefile.am): Likewise.
19392         * modules/closeout (Makefile.am): Likewise.
19393         * modules/crc (Makefile.am): Likewise.
19394         * modules/csharpexec (Makefile.am): Likewise.
19395         * modules/cycle-check (Makefile.am): Likewise.
19396         * modules/des (Makefile.am): Likewise.
19397         * modules/dev-ino (Makefile.am): Likewise.
19398         * modules/dirfd (Makefile.am): Likewise.
19399         * modules/dirname (Makefile.am): Likewise.
19400         * modules/dup2 (Makefile.am): Likewise.
19401         * modules/eealloc (Makefile.am): Likewise.
19402         * modules/error (Makefile.am): Likewise.
19403         * modules/euidaccess (Makefile.am): Likewise.
19404         * modules/exclude (Makefile.am): Likewise.
19405         * modules/exitfail (Makefile.am): Likewise.
19406         * modules/fcntl-safer (Makefile.am): Likewise.
19407         * modules/fcntl (Makefile.am): Likewise.
19408         * modules/file-type (Makefile.am): Likewise.
19409         * modules/fileblocks (Makefile.am): Likewise.
19410         * modules/filemode (Makefile.am): Likewise.
19411         * modules/filenamecat (Makefile.am): Likewise.
19412         * modules/fnmatch (Makefile.am): Likewise.
19413         * modules/fopen-safer (Makefile.am): Likewise.
19414         * modules/fpending (Makefile.am): Likewise.
19415         * modules/fprintftime (Makefile.am): Likewise.
19416         * modules/free (Makefile.am): Likewise.
19417         * modules/fsusage (Makefile.am): Likewise.
19418         * modules/ftruncate (Makefile.am): Likewise.
19419         * modules/fts (Makefile.am): Likewise.
19420         * modules/gc-arcfour (Makefile.am): Likewise.
19421         * modules/gc-des (Makefile.am): Likewise.
19422         * modules/gc-hmac-md5 (Makefile.am): Likewise.
19423         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
19424         * modules/gc-md4 (Makefile.am): Likewise.
19425         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
19426         * modules/gc-sha1 (Makefile.am): Likewise.
19427         * modules/gc (Makefile.am): Likewise.
19428         * modules/getaddrinfo (Makefile.am): Likewise.
19429         * modules/getcwd (Makefile.am): Likewise.
19430         * modules/getdelim (Makefile.am): Likewise.
19431         * modules/getdomainname (Makefile.am): Likewise.
19432         * modules/getgroups (Makefile.am): Likewise.
19433         * modules/gethostname (Makefile.am): Likewise.
19434         * modules/gethrxtime (Makefile.am): Likewise.
19435         * modules/getline (Makefile.am): Likewise.
19436         * modules/getloadavg (Makefile.am): Likewise.
19437         * modules/getlogin_r (Makefile.am): Likewise.
19438         * modules/getndelim2 (Makefile.am): Likewise.
19439         * modules/getopt (Makefile.am): Likewise.
19440         * modules/getpagesize (Makefile.am): Likewise.
19441         * modules/getpass-gnu (Makefile.am): Likewise.
19442         * modules/getpass (Makefile.am): Likewise.
19443         * modules/getsubopt (Makefile.am): Likewise.
19444         * modules/gettime (Makefile.am): Likewise.
19445         * modules/gettimeofday (Makefile.am): Likewise.
19446         * modules/getugroups (Makefile.am): Likewise.
19447         * modules/getusershell (Makefile.am): Likewise.
19448         * modules/glob (Makefile.am): Likewise.
19449         * modules/group-member (Makefile.am): Likewise.
19450         * modules/hard-locale (Makefile.am): Likewise.
19451         * modules/hash (Makefile.am): Likewise.
19452         * modules/hmac-md5 (Makefile.am): Likewise.
19453         * modules/hmac-sha1 (Makefile.am): Likewise.
19454         * modules/human (Makefile.am): Likewise.
19455         * modules/idcache (Makefile.am): Likewise.
19456         * modules/imaxabs (Makefile.am): Likewise.
19457         * modules/imaxdiv (Makefile.am): Likewise.
19458         * modules/inet_ntop (Makefile.am): Likewise.
19459         * modules/inet_pton (Makefile.am): Likewise.
19460         * modules/intprops (Makefile.am): Likewise.
19461         * modules/inttostr (Makefile.am): Likewise.
19462         * modules/inttypes (Makefile.am): Likewise.
19463         * modules/isapipe (Makefile.am): Likewise.
19464         * modules/javaversion (Makefile.am): Likewise.
19465         * modules/lchmod (Makefile.am): Likewise.
19466         * modules/lchown (Makefile.am): Likewise.
19467         * modules/localcharset (Makefile.am): Likewise.
19468         * modules/long-options (Makefile.am): Likewise.
19469         * modules/lstat (Makefile.am): Likewise.
19470         * modules/malloc (Makefile.am): Likewise.
19471         * modules/mathl (Makefile.am): Likewise.
19472         * modules/mbchar (Makefile.am): Likewise.
19473         * modules/md2 (Makefile.am): Likewise.
19474         * modules/md4 (Makefile.am): Likewise.
19475         * modules/md5 (Makefile.am): Likewise.
19476         * modules/memcasecmp (Makefile.am): Likewise.
19477         * modules/memchr (Makefile.am): Likewise.
19478         * modules/memcmp (Makefile.am): Likewise.
19479         * modules/memcoll (Makefile.am): Likewise.
19480         * modules/memcpy (Makefile.am): Likewise.
19481         * modules/memmem (Makefile.am): Likewise.
19482         * modules/memmove (Makefile.am): Likewise.
19483         * modules/mempcpy (Makefile.am): Likewise.
19484         * modules/memrchr (Makefile.am): Likewise.
19485         * modules/memset (Makefile.am): Likewise.
19486         * modules/memxor (Makefile.am): Likewise.
19487         * modules/mkancesdirs (Makefile.am): Likewise.
19488         * modules/mkdir-p (Makefile.am): Likewise.
19489         * modules/mkdir (Makefile.am): Likewise.
19490         * modules/mkdtemp (Makefile.am): Likewise.
19491         * modules/mkstemp (Makefile.am): Likewise.
19492         * modules/mktime (Makefile.am): Likewise.
19493         * modules/modechange (Makefile.am): Likewise.
19494         * modules/mountlist (Makefile.am): Likewise.
19495         * modules/nanosleep (Makefile.am): Likewise.
19496         * modules/obstack (Makefile.am): Likewise.
19497         * modules/openat (Makefile.am): Likewise.
19498         * modules/pagealign_alloc (Makefile.am): Likewise.
19499         * modules/pathmax (Makefile.am): Likewise.
19500         * modules/physmem (Makefile.am): Likewise.
19501         * modules/poll (Makefile.am): Likewise.
19502         * modules/posixtm (Makefile.am): Likewise.
19503         * modules/posixver (Makefile.am): Likewise.
19504         * modules/putenv (Makefile.am): Likewise.
19505         * modules/quote (Makefile.am): Likewise.
19506         * modules/quotearg (Makefile.am): Likewise.
19507         * modules/raise (Makefile.am): Likewise.
19508         * modules/read-file (Makefile.am): Likewise.
19509         * modules/readline (Makefile.am): Likewise.
19510         * modules/readlink (Makefile.am): Likewise.
19511         * modules/readtokens (Makefile.am): Likewise.
19512         * modules/readutmp (Makefile.am): Likewise.
19513         * modules/realloc (Makefile.am): Likewise.
19514         * modules/regex (Makefile.am): Likewise.
19515         * modules/rename-dest-slash (Makefile.am): Likewise.
19516         * modules/rename (Makefile.am): Likewise.
19517         * modules/rijndael (Makefile.am): Likewise.
19518         * modules/rmdir (Makefile.am): Likewise.
19519         * modules/rpmatch (Makefile.am): Likewise.
19520         * modules/safe-read (Makefile.am): Likewise.
19521         * modules/safe-write (Makefile.am): Likewise.
19522         * modules/same-inode (Makefile.am): Likewise.
19523         * modules/same (Makefile.am): Likewise.
19524         * modules/save-cwd (Makefile.am): Likewise.
19525         * modules/savedir (Makefile.am): Likewise.
19526         * modules/setenv (Makefile.am): Likewise.
19527         * modules/settime (Makefile.am): Likewise.
19528         * modules/sha1 (Makefile.am): Likewise.
19529         * modules/sig2str (Makefile.am): Likewise.
19530         * modules/snprintf (Makefile.am): Likewise.
19531         * modules/stat-macros (Makefile.am): Likewise.
19532         * modules/stat-time (Makefile.am): Likewise.
19533         * modules/stdbool (Makefile.am): Likewise.
19534         * modules/stdint (Makefile.am): Likewise.
19535         * modules/stdlib-safer (Makefile.am): Likewise.
19536         * modules/stpcpy (Makefile.am): Likewise.
19537         * modules/stpncpy (Makefile.am): Likewise.
19538         * modules/strcase (Makefile.am): Likewise.
19539         * modules/strcasestr (Makefile.am): Likewise.
19540         * modules/strchrnul (Makefile.am): Likewise.
19541         * modules/strcspn (Makefile.am): Likewise.
19542         * modules/strdup (Makefile.am): Likewise.
19543         * modules/strerror (Makefile.am): Likewise.
19544         * modules/strftime (Makefile.am): Likewise.
19545         * modules/strndup (Makefile.am): Likewise.
19546         * modules/strnlen (Makefile.am): Likewise.
19547         * modules/strpbrk (Makefile.am): Likewise.
19548         * modules/strsep (Makefile.am): Likewise.
19549         * modules/strstr (Makefile.am): Likewise.
19550         * modules/strtod (Makefile.am): Likewise.
19551         * modules/strtoimax (Makefile.am): Likewise.
19552         * modules/strtok_r (Makefile.am): Likewise.
19553         * modules/strtol (Makefile.am): Likewise.
19554         * modules/strtoll (Makefile.am): Likewise.
19555         * modules/strtoul (Makefile.am): Likewise.
19556         * modules/strtoull (Makefile.am): Likewise.
19557         * modules/strtoumax (Makefile.am): Likewise.
19558         * modules/strverscmp (Makefile.am): Likewise.
19559         * modules/sys_socket (Makefile.am): Likewise.
19560         * modules/sys_stat (Makefile.am): Likewise.
19561         * modules/sysexits (Makefile.am): Likewise.
19562         * modules/time_r (Makefile.am): Likewise.
19563         * modules/timegm (Makefile.am): Likewise.
19564         * modules/timespec (Makefile.am): Likewise.
19565         * modules/tmpfile-safer (Makefile.am): Likewise.
19566         * modules/trim (Makefile.am): Likewise.
19567         * modules/unistd-safer (Makefile.am): Likewise.
19568         * modules/unlinkdir (Makefile.am): Likewise.
19569         * modules/unlocked-io (Makefile.am): Likewise.
19570         * modules/userspec (Makefile.am): Likewise.
19571         * modules/utime (Makefile.am): Likewise.
19572         * modules/utimecmp (Makefile.am): Likewise.
19573         * modules/utimens (Makefile.am): Likewise.
19574         * modules/vasnprintf (Makefile.am): Likewise.
19575         * modules/vasprintf (Makefile.am): Likewise.
19576         * modules/vsnprintf (Makefile.am): Likewise.
19577         * modules/xalloc (Makefile.am): Likewise.
19578         * modules/xgetcwd (Makefile.am): Likewise.
19579         * modules/xnanosleep (Makefile.am): Likewise.
19580         * modules/xreadlink (Makefile.am): Likewise.
19581         * modules/xstrtod (Makefile.am): Likewise.
19582         * modules/xstrtol (Makefile.am): Likewise.
19583         * modules/xstrtold (Makefile.am): Likewise.
19584         * modules/yesno (Makefile.am): Likewise.
19585         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
19586
19587 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
19588
19589         * modules/error (Makefile.am): Distribute files through
19590         EXTRA_DIST, not lib_SOURCES.
19591
19592 2006-10-12  Eric Blake  <ebb9@byu.net>
19593
19594         * modules/error (Makefile.am): Distribute files in /lib.
19595         * modules/obstack (Makefile.am): Likewise.
19596
19597 2006-10-12  Bruno Haible  <bruno@clisp.org>
19598
19599         * modules/acl (Makefile.am): Distribute all files in lib/ through
19600         EXTRA_DIST.
19601         * modules/arcfour (Makefile.am): Likewise.
19602         * modules/arctwo (Makefile.am): Likewise.
19603         * modules/argmatch (Makefile.am): Likewise.
19604         * modules/argz (Makefile.am): Likewise.
19605         * modules/atexit (Makefile.am): Likewise.
19606         * modules/backupfile (Makefile.am): Likewise.
19607         * modules/c-strtod (Makefile.am): Likewise.
19608         * modules/c-strtold (Makefile.am): Likewise.
19609         * modules/calloc (Makefile.am): Likewise.
19610         * modules/canon-host (Makefile.am): Likewise.
19611         * modules/canonicalize (Makefile.am): Likewise.
19612         * modules/chdir-long (Makefile.am): Likewise.
19613         * modules/chdir-safer (Makefile.am): Likewise.
19614         * modules/check-version (Makefile.am): Likewise.
19615         * modules/chown (Makefile.am): Likewise.
19616         * modules/cloexec (Makefile.am): Likewise.
19617         * modules/close-stream (Makefile.am): Likewise.
19618         * modules/closeout (Makefile.am): Likewise.
19619         * modules/crc (Makefile.am): Likewise.
19620         * modules/cycle-check (Makefile.am): Likewise.
19621         * modules/des (Makefile.am): Likewise.
19622         * modules/dirfd (Makefile.am): Likewise.
19623         * modules/dirname (Makefile.am): Likewise.
19624         * modules/dup2 (Makefile.am): Likewise.
19625         * modules/euidaccess (Makefile.am): Likewise.
19626         * modules/exclude (Makefile.am): Likewise.
19627         * modules/exitfail (Makefile.am): Likewise.
19628         * modules/fcntl-safer (Makefile.am): Likewise.
19629         * modules/file-type (Makefile.am): Likewise.
19630         * modules/fileblocks (Makefile.am): Likewise.
19631         * modules/filemode (Makefile.am): Likewise.
19632         * modules/filenamecat (Makefile.am): Likewise.
19633         * modules/fnmatch (Makefile.am): Likewise.
19634         * modules/fopen-safer (Makefile.am): Likewise.
19635         * modules/fpending (Makefile.am): Likewise.
19636         * modules/fprintftime (Makefile.am): Likewise.
19637         * modules/free (Makefile.am): Likewise.
19638         * modules/fsusage (Makefile.am): Likewise.
19639         * modules/ftruncate (Makefile.am): Likewise.
19640         * modules/fts (Makefile.am): Likewise.
19641         * modules/gc (Makefile.am): Likewise.
19642         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
19643         * modules/getaddrinfo (Makefile.am): Likewise.
19644         * modules/getcwd (Makefile.am): Likewise.
19645         * modules/getdelim (Makefile.am): Likewise.
19646         * modules/getdomainname (Makefile.am): Likewise.
19647         * modules/getgroups (Makefile.am): Likewise.
19648         * modules/gethostname (Makefile.am): Likewise.
19649         * modules/gethrxtime (Makefile.am): Likewise.
19650         * modules/getline (Makefile.am): Likewise.
19651         * modules/getloadavg (Makefile.am): Likewise.
19652         * modules/getlogin_r (Makefile.am): Likewise.
19653         * modules/getopt (Makefile.am): Likewise.
19654         * modules/getpass (Makefile.am): Likewise.
19655         * modules/getpass-gnu (Makefile.am): Likewise.
19656         * modules/getsubopt (Makefile.am): Likewise.
19657         * modules/gettime (Makefile.am): Likewise.
19658         * modules/gettimeofday (Makefile.am): Likewise.
19659         * modules/getugroups (Makefile.am): Likewise.
19660         * modules/getusershell (Makefile.am): Likewise.
19661         * modules/glob (Makefile.am): Likewise.
19662         * modules/group-member (Makefile.am): Likewise.
19663         * modules/hard-locale (Makefile.am): Likewise.
19664         * modules/hash (Makefile.am): Likewise.
19665         * modules/hmac-md5 (Makefile.am): Likewise.
19666         * modules/hmac-sha1 (Makefile.am): Likewise.
19667         * modules/human (Makefile.am): Likewise.
19668         * modules/idcache (Makefile.am): Likewise.
19669         * modules/imaxabs (Makefile.am): Likewise.
19670         * modules/imaxdiv (Makefile.am): Likewise.
19671         * modules/inet_ntop (Makefile.am): Likewise.
19672         * modules/inet_pton (Makefile.am): Likewise.
19673         * modules/inttostr (Makefile.am): Likewise.
19674         * modules/isapipe (Makefile.am): Likewise.
19675         * modules/lchown (Makefile.am): Likewise.
19676         * modules/long-options (Makefile.am): Likewise.
19677         * modules/lstat (Makefile.am): Likewise.
19678         * modules/malloc (Makefile.am): Likewise.
19679         * modules/mathl (Makefile.am): Likewise.
19680         * modules/mbchar (Makefile.am): Likewise.
19681         * modules/md2 (Makefile.am): Likewise.
19682         * modules/md4 (Makefile.am): Likewise.
19683         * modules/md5 (Makefile.am): Likewise.
19684         * modules/memcasecmp (Makefile.am): Likewise.
19685         * modules/memchr (Makefile.am): Likewise.
19686         * modules/memcmp (Makefile.am): Likewise.
19687         * modules/memcoll (Makefile.am): Likewise.
19688         * modules/memcpy (Makefile.am): Likewise.
19689         * modules/memmem (Makefile.am): Likewise.
19690         * modules/memmove (Makefile.am): Likewise.
19691         * modules/mempcpy (Makefile.am): Likewise.
19692         * modules/memrchr (Makefile.am): Likewise.
19693         * modules/memset (Makefile.am): Likewise.
19694         * modules/memxor (Makefile.am): Likewise.
19695         * modules/mkancesdirs (Makefile.am): Likewise.
19696         * modules/mkdir (Makefile.am): Likewise.
19697         * modules/mkdir-p (Makefile.am): Likewise.
19698         * modules/mkdtemp (Makefile.am): Likewise.
19699         * modules/mkstemp (Makefile.am): Likewise.
19700         * modules/mktime (Makefile.am): Likewise.
19701         * modules/modechange (Makefile.am): Likewise.
19702         * modules/mountlist (Makefile.am): Likewise.
19703         * modules/nanosleep (Makefile.am): Likewise.
19704         * modules/openat (Makefile.am): Likewise.
19705         * modules/pagealign_alloc (Makefile.am): Likewise.
19706         * modules/physmem (Makefile.am): Likewise.
19707         * modules/poll (Makefile.am): Likewise.
19708         * modules/posixtm (Makefile.am): Likewise.
19709         * modules/posixver (Makefile.am): Likewise.
19710         * modules/putenv (Makefile.am): Likewise.
19711         * modules/quote (Makefile.am): Likewise.
19712         * modules/quotearg (Makefile.am): Likewise.
19713         * modules/raise (Makefile.am): Likewise.
19714         * modules/read-file (Makefile.am): Likewise.
19715         * modules/readline (Makefile.am): Likewise.
19716         * modules/readlink (Makefile.am): Likewise.
19717         * modules/readtokens (Makefile.am): Likewise.
19718         * modules/readutmp (Makefile.am): Likewise.
19719         * modules/realloc (Makefile.am): Likewise.
19720         * modules/regex (Makefile.am): Likewise.
19721         * modules/rename (Makefile.am): Likewise.
19722         * modules/rename-dest-slash (Makefile.am): Likewise.
19723         * modules/rijndael (Makefile.am): Likewise.
19724         * modules/rmdir (Makefile.am): Likewise.
19725         * modules/rpmatch (Makefile.am): Likewise.
19726         * modules/safe-read (Makefile.am): Likewise.
19727         * modules/safe-write (Makefile.am): Likewise.
19728         * modules/same (Makefile.am): Likewise.
19729         * modules/save-cwd (Makefile.am): Likewise.
19730         * modules/savedir (Makefile.am): Likewise.
19731         * modules/setenv (Makefile.am): Likewise.
19732         * modules/settime (Makefile.am): Likewise.
19733         * modules/sha1 (Makefile.am): Likewise.
19734         * modules/sig2str (Makefile.am): Likewise.
19735         * modules/snprintf (Makefile.am): Likewise.
19736         * modules/stdlib-safer (Makefile.am): Likewise.
19737         * modules/stpcpy (Makefile.am): Likewise.
19738         * modules/stpncpy (Makefile.am): Likewise.
19739         * modules/strcase (Makefile.am): Likewise.
19740         * modules/strcasestr (Makefile.am): Likewise.
19741         * modules/strchrnul (Makefile.am): Likewise.
19742         * modules/strcspn (Makefile.am): Likewise.
19743         * modules/strdup (Makefile.am): Likewise.
19744         * modules/strerror (Makefile.am): Likewise.
19745         * modules/strftime (Makefile.am): Likewise.
19746         * modules/strndup (Makefile.am): Likewise.
19747         * modules/strnlen (Makefile.am): Likewise.
19748         * modules/strpbrk (Makefile.am): Likewise.
19749         * modules/strsep (Makefile.am): Likewise.
19750         * modules/strstr (Makefile.am): Likewise.
19751         * modules/strtod (Makefile.am): Likewise.
19752         * modules/strtoimax (Makefile.am): Likewise.
19753         * modules/strtok_r (Makefile.am): Likewise.
19754         * modules/strtol (Makefile.am): Likewise.
19755         * modules/strtoll (Makefile.am): Likewise.
19756         * modules/strtoul (Makefile.am): Likewise.
19757         * modules/strtoull (Makefile.am): Likewise.
19758         * modules/strtoumax (Makefile.am): Likewise.
19759         * modules/strverscmp (Makefile.am): Likewise.
19760         * modules/time_r (Makefile.am): Likewise.
19761         * modules/timegm (Makefile.am): Likewise.
19762         * modules/tmpfile-safer (Makefile.am): Likewise.
19763         * modules/unistd-safer (Makefile.am): Likewise.
19764         * modules/unlinkdir (Makefile.am): Likewise.
19765         * modules/userspec (Makefile.am): Likewise.
19766         * modules/utime (Makefile.am): Likewise.
19767         * modules/utimecmp (Makefile.am): Likewise.
19768         * modules/utimens (Makefile.am): Likewise.
19769         * modules/vasnprintf (Makefile.am): Likewise.
19770         * modules/vasprintf (Makefile.am): Likewise.
19771         * modules/vsnprintf (Makefile.am): Likewise.
19772         * modules/xalloc (Makefile.am): Likewise.
19773         * modules/xgetcwd (Makefile.am): Likewise.
19774         * modules/xnanosleep (Makefile.am): Likewise.
19775         * modules/xreadlink (Makefile.am): Likewise.
19776         * modules/xstrtod (Makefile.am): Likewise.
19777         * modules/xstrtol (Makefile.am): Likewise.
19778         * modules/xstrtold (Makefile.am): Likewise.
19779         * modules/yesno (Makefile.am): Likewise.
19780
19781 2006-10-12  Jim Meyering  <jim@meyering.net>
19782
19783         * m4/getloadavg.m4: Revert the change below.
19784
19785         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
19786         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
19787         fail with a symlink, which is what coreutils' ./bootstrap now
19788         creates by default.
19789
19790 2006-10-12  Bruno Haible  <bruno@clisp.org>
19791
19792         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
19793         mingw.
19794         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
19795         MSVC and mingw explicitly.
19796
19797 2006-10-11  Simon Josefsson  <jas@extundo.com>
19798             Bruno Haible  <bruno@clisp.org>
19799
19800         Add support for multiple gnulib-tool invocations in the scope of a
19801         single configure.ac file.
19802         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
19803         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
19804         with the same contents as the _LIBADD variable.
19805         (func_emit_initmacro_start, func_emit_initmacro_end,
19806         func_emit_initmacro_done): New functions.
19807         (func_import, func_create_testdir): Invoke them. Allow the identifiers
19808         gl_LIBOBJS and gl_LTLIBOBJS.
19809
19810 2006-10-11  Bruno Haible  <bruno@clisp.org>
19811
19812         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
19813         (func_create_testdir): Don't create po/Makefile.am, don't invoke
19814         autoreconf. Instead, invoke autopoint explicitly but move back the
19815         *.m4 files from gnulib.
19816
19817 2006-10-11  Bruno Haible  <bruno@clisp.org>
19818
19819         * gnulib-tool (func_usage): Make module names after --create-testdir
19820         optional.
19821         (func_create_testdir): If no module was specified, use nearly all
19822         modules.
19823
19824 2006-10-12  Jim Meyering  <jim@meyering.net>
19825
19826         Big performance improvement for fts-based tools that use FTS_NOSTAT.
19827         Avoid spurious inode-mismatch problems on non-POSIX file systems.
19828         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
19829         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
19830         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
19831         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
19832         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
19833         (fts_set_stat_required): New function.
19834         (fts_open): Defer the calls to fts_stat, if possible or requested.
19835         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
19836         into fts_stat itself.
19837         (fts_read): Perform any required (deferred) fts_stat call.
19838         (fts_build): Likewise, for the directory we're about to open and read.
19839         In the readdir loop, carefully decide whether each entry will require
19840         an eventual call to fts_stat, using dirent.d_type info if available.
19841         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
19842         a command line argument into this function.  Update all callers.
19843         Map a return value of FTS_DOT to FTS_D for a command line argument.
19844         * modules/fts (Depends-on): Add d-type.  Alphabetize.
19845         Thanks to Miklos Szeredi for his tenacity and for the initial
19846         bug report about "find" failing on a FUSE-based file system.
19847
19848         * lib/fts.c (fts_open): Use consistent indentation.
19849
19850 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
19851
19852         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
19853         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
19854         reported by Jim Meyering.  All uses of cache variables renamed
19855         to match Autoconf's.
19856         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
19857         the other one.
19858
19859         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
19860         Fix misspelling in diagnostic.
19861
19862 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
19863
19864         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
19865         defined.  Problem reported by Matthew Woehlke.
19866
19867         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
19868         Add support for Tandem NonStop R series.
19869         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
19870         Use new macro.
19871
19872         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
19873         (has_trailing_slash): Omit size arg; all callers changed.
19874         Omit 'inline', since it doesn't help performance and we'd
19875         need to configure it.
19876         Don't count //, ///, etc. as having a trailing slash.
19877         As a side effect, this removes a C99ism reported by Matthew Woehlke.
19878         (rpl_rename_dest_slash): On failure, use rename's errno rather
19879         than (in some cases) an incorrect or junk errno.
19880         Simplify code by removing need to compute length; this does
19881         cause it to make two passes instead of one over the file name,
19882         but it's worth it.
19883
19884         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
19885         change, since Autoconf's version may no longer be appropriate now
19886         that we are using CVS Autoconf's version.  Add support for Tandem.
19887
19888 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
19889             Bruno Haible  <bruno@clisp.org>
19890
19891         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
19892         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
19893         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
19894         gl_AC_TYPE_LONG_LONG.
19895
19896         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
19897         instead of HAVE_LONG_LONG.
19898         * lib/printf-args.c (printf_fetchargs): Likewise.
19899         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
19900         * lib/vasnprintf.c (VASNPRINTF): Likewise.
19901         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
19902         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
19903         gl_AC_TYPE_LONG_LONG.
19904
19905 2006-10-11  Bruno Haible  <bruno@clisp.org>
19906
19907         * m4/longlong.m4: Add comments.
19908         * m4/ulonglong.m4: Likewise.
19909
19910 2006-10-10  Bruno Haible  <bruno@clisp.org>
19911
19912         Make it possible to #define stpcpy, strdup to aliases.
19913         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
19914         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
19915
19916 2006-10-10  Bruno Haible  <bruno@clisp.org>
19917
19918         Make it possible to #define gcd to an alias.
19919         * lib/gcd.c: Include config.h.
19920
19921 2006-10-10  Bruno Haible  <bruno@clisp.org>
19922
19923         Make it possible to #define c_isascii to an alias.
19924         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
19925         defined. Undefine the macros before defining them, to avoid gcc
19926         warnings.
19927         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
19928         define NO_C_CTYPE_MACROS early.
19929
19930 2006-10-10  Bruno Haible  <bruno@clisp.org>
19931
19932         Make it possible to #define set_program_name to an alias.
19933         * lib/progname.c: Don't undefine set_program_name; instead, undefine
19934         ENABLE_RELOCATABLE early.
19935
19936 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
19937
19938         Port to Tandem NSK OSS, which has 64-bit signed int but at most
19939         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
19940         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
19941         More generally, don't assume that 64-bit signed int is available
19942         if unsigned int is, and vice versa.
19943         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
19944         unsigned symbols, not on their signed counterparts.
19945         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
19946         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
19947         (UINT64_C, UINTMAX_C):
19948         Likewise.
19949         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
19950         unsigned counterparts.
19951         (Have_long_long, Unsigned): New macros.
19952         (Int): Renamed from INT.
19953         (strtoimax): Use the new macros.
19954         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
19955         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
19956         * modules/inttypes (inttypes.h): Substitute
19957         HAVE_UNSIGNED_LONG_LONG_INT.
19958         * modules/stdint (stdint.h): Likewise.
19959         (Files): Add m4/ulonglong.m4.
19960
19961 2006-10-10  Bruno Haible  <bruno@clisp.org>
19962
19963         Fix a gcc -Wshadow warning.
19964         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
19965         to 'bucket'.
19966         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
19967         gl_linked_indexof_from_to): Likewise.
19968         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
19969         Likewise.
19970         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
19971         Likewise.
19972         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
19973         Reported by Eric Blake.
19974
19975 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
19976
19977         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
19978         for NetBSD.  Problem reported by Bruno Haible.
19979
19980 2006-10-09  Jim Meyering  <jim@meyering.net>
19981
19982         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
19983         Patch from Bruno Haible.
19984
19985 2006-10-09  Jim Meyering  <jim@meyering.net>
19986
19987         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
19988         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
19989         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
19990
19991 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
19992
19993         Don't include <config.h> twice; this doesn't work in some cases,
19994         e.g., when config.h has "#define intmax_t long long int" and
19995         we include <config.h>, <inttypes.h>, <config.h> in that order.
19996         Problem reported by Matthew Woehlke in:
19997         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
19998         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
19999         * lib/fts-cycle.c: Don't include config.h.
20000         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
20001         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
20002         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
20003         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
20004         inttypes.h.
20005         * lib/xstrtoumax.c: Likewise.
20006         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
20007         __strtol and the like, so that this module is more like its siblings.
20008         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
20009         Remove; no longer needed now that we assume gnulib inttypes.h.
20010
20011 2006-10-08  Bruno Haible  <bruno@clisp.org>
20012
20013         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
20014         option.
20015
20016 2006-10-07  Jim Meyering  <jim@meyering.net>
20017
20018         * modules/inttypes (inttypes.h): Revert what seems to have been
20019         an inadvertent part of today's change: use "|", not "/" in the
20020         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
20021
20022 2006-10-07  Bruno Haible  <bruno@clisp.org>
20023
20024         * modules/sublist: New file.
20025
20026 2006-10-07  Bruno Haible  <bruno@clisp.org>
20027
20028         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
20029         * modules/argz (argz.h): Likewise.
20030         * modules/arpa_inet (arpa/inet.h): Likewise.
20031         * modules/byteswap (byteswap.h): Likewise.
20032         * modules/configmake (configmake.h): Likewise.
20033         * modules/fcntl (fcntl.h): Likewise.
20034         * modules/fnmatch (fnmatch.h): Likewise.
20035         * modules/getopt (getopt.h): Likewise.
20036         * modules/glob (glob.h): Likewise.
20037         * modules/inttypes (inttypes.h): Likewise.
20038         * modules/netinet_in (netinet/in.h): Likewise.
20039         * modules/poll (poll.h): Likewise.
20040         * modules/stdbool (stdbool.h): Likewise.
20041         * modules/stdint (stdint.h): Likewise.
20042         * modules/sys_select (sys/select.h): Likewise.
20043         * modules/sys_socket (sys/socket.h): Likewise.
20044         * modules/sys_stat (sys/stat.h): Likewise.
20045         * modules/sysexits (sysexits.h): Likewise.
20046         * modules/unistd (unistd.h): Likewise.
20047         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20048         Add a "DO NOT EDIT" comment to the generated file.
20049         (func_import): Likewise for gnulib-comp.m4.
20050
20051 2006-10-07  Bruno Haible  <bruno@clisp.org>
20052
20053         * lib/gl_sublist.h: New file.
20054         * lib/gl_sublist.c: New file.
20055
20056 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
20057
20058         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
20059         name (relative to the original working directory) and the file
20060         name component (relative to the temporary working directory).  All
20061         callers changed.
20062         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
20063         * lib/mkdir-p.c (make_dir_parents): Likewise.
20064         * lib/mkdir-p.h (make_dir_parents): Likewise.
20065
20066 2006-10-06  Eric Blake  <ebb9@byu.net>
20067
20068         Define several macros for use by the clean-temp module.
20069         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
20070         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
20071         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
20072
20073         * lib/clean-temp.h (close_stream_temp): New declaration.
20074         * lib/clean-temp.c (includes): Pull in headers according to what
20075         other modules are in use.
20076         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
20077
20078 2006-10-06  Bruno Haible  <bruno@clisp.org>
20079
20080         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
20081         instead of fopen, fwriteerror.
20082
20083 2006-10-06  Bruno Haible  <bruno@clisp.org>
20084
20085         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
20086         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
20087         int.
20088         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
20089         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
20090         Return an error indicator.
20091         Suggested by Eric Blake.
20092
20093 2006-10-06  Bruno Haible  <bruno@clisp.org>
20094
20095         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
20096         Reported by Eric Blake.
20097
20098 2006-10-06  Bruno Haible  <bruno@clisp.org>
20099
20100         * modules/closeout (Description): Mention stderr too.
20101
20102 2006-10-06  Bruno Haible  <bruno@clisp.org>
20103         and Paul Eggert  <eggert@cs.ucla.edu>
20104
20105         * lib/closeout.c (close_stdout): Also close stderr.
20106         * lib/closeout.h: Update comment.
20107
20108 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
20109
20110         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
20111         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
20112         * lib/dirchownmod.c: Include lchown.h.
20113         * lib/lchown.c: Don't include files that lchown.h now includes.
20114         Don't declare chown, since lchown.h now does that.
20115         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
20116         (lchown): Define to rpl_chown if lchown is declared but
20117         does not exist.  Declare using a prototype if lchown is not
20118         declared.  Add a copyright notice.
20119         * lib/mkstemp.h: Include <unistd.h>.
20120         * lib/openat.c: Include lchown.h.
20121
20122         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
20123         we now test for that separately.
20124         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
20125         rather than O_NOFOLLOW, when testing whether it's possible to
20126         avoid a race condition reliably.
20127         * lib/savewd.c (savewd_chdir): Likewise.
20128
20129         Remove macros that are no longer needed now that stdint.h is
20130         reliable.
20131         * lib/fsusage.c (UINTMAX_MAX): Remove.
20132         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
20133         * lib/utimecmp.c (SIZE_MAX): Remove.
20134
20135         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
20136
20137         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
20138         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
20139         O_NOATIME works.
20140
20141 2006-10-05  Bruno Haible  <bruno@clisp.org>
20142
20143         * lib/gl_list.h (gl_sortedlist_search_from_to,
20144         gl_sortedlist_indexof_from_to): New declarations.
20145         (gl_list_implementation): New fields sortedlist_search_from_to,
20146         sortedlist_indexof_from_to.
20147         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
20148         inline functions.
20149         * lib/gl_list.c (gl_sortedlist_search_from_to,
20150         gl_sortedlist_indexof_from_to): New functions.
20151         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
20152         function.
20153         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
20154         (gl_array_sortedlist_search_from_to): New function.
20155         (gl_array_list_implementation): Update.
20156         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
20157         function.
20158         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
20159         (gl_carray_sortedlist_search_from_to): New function.
20160         (gl_carray_list_implementation): Update.
20161         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
20162         gl_linked_sortedlist_indexof_from_to): New functions.
20163         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
20164         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
20165         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
20166         gl_tree_sortedlist_indexof_from_to): New functions.
20167         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
20168         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
20169         Update.
20170         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
20171         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
20172         Update.
20173
20174 2006-10-05  Bruno Haible  <bruno@clisp.org>
20175
20176         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
20177         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
20178         (struct gl_list_implementation): Add fields search_from_to,
20179         indexof_from_to. Remove fields search, indexof.
20180         (gl_list_search): Use the search_from_to method.
20181         (gl_list_search_from, gl_list_search_from_to): New functions.
20182         (gl_list_indexof): Use the indexof_from_to method.
20183         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
20184         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
20185         (gl_list_search_from, gl_list_search_from_to): New functions.
20186         (gl_list_indexof): Use the indexof_from_to method.
20187         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
20188         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
20189         gl_array_indexof. Add start_index, end_index arguments.
20190         (gl_array_search_from_to): Renamed from gl_array_search. Add
20191         start_index, end_index arguments.
20192         (gl_array_remove, gl_array_list_implementation): Update.
20193         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
20194         gl_carray_indexof. Add start_index, end_index arguments.
20195         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
20196         start_index, end_index arguments.
20197         (gl_carray_remove, gl_carray_list_implementation): Update.
20198         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
20199         gl_linked_search. Add start_index, end_index arguments.
20200         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
20201         start_index, end_index arguments.
20202         (gl_linked_remove): Update.
20203         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
20204         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
20205         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
20206         field to 'size_t'.
20207         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
20208         gl_tree_search. Add start_index, end_index arguments.
20209         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
20210         start_index, end_index arguments.
20211         (gl_tree_remove): Update.
20212         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
20213         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
20214         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
20215         function.
20216         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
20217         gl_tree_search. Add start_index, end_index arguments.
20218         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
20219         start_index, end_index arguments.
20220         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
20221         Update.
20222         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
20223
20224 2006-10-05  Bruno Haible  <bruno@clisp.org>
20225
20226         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
20227
20228         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
20229         fwriteerror_temp): New declarations.
20230         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
20231         (descriptors): New variable.
20232         (cleanup): First, close the descriptors.
20233         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
20234         fclose_temp, fwriteerror_temp): New functions.
20235
20236 2006-10-04  Jim Meyering  <jim@meyering.net>
20237
20238         * lib/fts.c (fts_open): Tiny comment change.
20239
20240 2006-10-04  Bruno Haible  <bruno@clisp.org>
20241
20242         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
20243         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
20244         gl_LOCK_BODY.
20245         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
20246         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
20247         gl_LOCK_EARLY_BODY.
20248         (gl_LOCK): Require gl_LOCK_BODY.
20249
20250 2006-10-04  Bruno Haible  <bruno@clisp.org>
20251
20252         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
20253         (gl_oset_search_atleast): New declaration.
20254         (struct gl_oset_implementation): Add field 'search_atleast'.
20255         (gl_oset_search_atleast): New inline function.
20256         * lib/gl_oset.c (gl_oset_search_atleast): New function.
20257         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
20258         (gl_array_oset_implementation): Update.
20259         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
20260         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
20261         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
20262
20263 2006-10-04  Bruno Haible  <bruno@clisp.org>
20264
20265         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
20266
20267 2006-10-03  Bruno Haible  <bruno@clisp.org>
20268
20269         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
20270         from gl_avltreehash_list_implementation.
20271
20272 2006-10-03  Bruno Haible  <bruno@clisp.org>
20273
20274         * lib/gl_oset.c (gl_oset_add): Fix return type.
20275
20276 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
20277
20278         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
20279
20280 2006-10-02  Eric Blake  <ebb9@byu.net>
20281
20282         * modules/strnlen (Depends-on): Add extensions.
20283
20284 2006-10-02  Eric Blake  <ebb9@byu.net>
20285
20286         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
20287         definition in 2.60+.
20288
20289 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
20290
20291         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
20292         checks.
20293
20294 2006-10-02  Bruno Haible  <bruno@clisp.org>
20295
20296         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
20297         to the AUTOMAKE_OPTIONS.
20298         Reported by Jim Meyering.
20299
20300 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
20301
20302         Work around bug in Solaris 10 /proc file system:
20303         /proc/self/fd/NNN/.. isn't the parent directory of
20304         the directory whose file descriptor is NNN.  This needs to
20305         be worked around at run time, not compile time, since a
20306         program might be built on Solaris 8, where things work, and
20307         run on Solaris 10.
20308         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
20309         to use the following interface instead:
20310         (OPENAT_BUFFER_SIZE): New macro.
20311         (openat_proc_name): New function.
20312         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
20313         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
20314         Likewise.
20315         * lib/openat-proc.c: New file.
20316         * modules/openat (Files): Add lib/openat-proc.c.
20317         (Depends-on): Add same-inode, stdbool.
20318         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
20319
20320 2006-09-29  Bruno Haible  <bruno@clisp.org>
20321
20322         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
20323         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
20324         argument. Set stdout_closed before testing for ferror, not after.
20325         (fwriteerror, fwriteerror_no_ebadf): New functions.
20326
20327 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20328
20329         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
20330
20331 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
20332
20333         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
20334         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
20335
20336 2006-09-28  Jim Meyering  <jim@meyering.net>
20337
20338         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
20339         Include <unistd.h>.
20340
20341 2006-09-28  Bruno Haible  <bruno@clisp.org>
20342
20343         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
20344         * modules/linkedhash-list (Depends-on): Likewise.
20345         * modules/rbtreehash-list (Depends-on): Likewise.
20346
20347 2006-09-28  Bruno Haible  <bruno@clisp.org>
20348
20349         * lib/strndup.h: Simplify the redefinition of strndup.
20350         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
20351         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
20352
20353 2006-09-28  Bruno Haible  <bruno@clisp.org>
20354
20355         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
20356         * lib/gl_linkedhash_list.c: Likewise.
20357         * lib/gl_rbtreehash_list.c: Likewise.
20358
20359 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
20360
20361         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
20362         getaddrinfo.
20363
20364         * lib/__fpending.h: Don't include <stdio_ext.h> unless
20365         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
20366         it causes <stdio_ext.h> to cause a compile-time error.
20367         Problem reported by Nelson H. F. Beebe.
20368         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
20369         of HAVE_DECL___PENDING.
20370
20371         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
20372         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
20373         declaration.
20374
20375 2006-09-27  Jim Meyering  <jim@meyering.net>
20376
20377         This file could end up with a definition for a function
20378         named __strndup, rather than rpl_strndup on a system with
20379         incomplete weak_alias support.
20380         * lib/strndup.c (strndup): Rename from __strndup.
20381         Remove #defines that used to map __strndup to strndup.
20382         Don't use K&R prototypes.
20383         Remove LIBC-related code, since this file is not sync'd with glibc.
20384         * lib/strndup.h: Revamp, accordingly.
20385         * m4/strndup.m4: Modernize.
20386
20387 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
20388
20389         * modules/savewd (Depends-on): Add 'raise'.
20390         * lib/savewd.c: Include <signal.h>, for 'raise'.
20391
20392 2006-09-26  Jim Meyering  <jim@meyering.net>
20393
20394         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
20395         when we detect Darwin 8.7.0's acl_get_file bug.
20396         Rearrange to perform the new (below) run-test while $LIBS
20397         contains any acl-related library.  Set USE_ACL at the end.
20398         (gl_ACL_GET_FILE): New function.
20399
20400 2006-09-26  Eric Blake  <ebb9@byu.net>
20401
20402         * lib/verror.c: Include <config.h> unconditionally.
20403
20404 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
20405
20406         * modules/clock-time (Maintainer): Add self.
20407         * modules/getlogin_r (Depends-on): Add extensions.
20408
20409 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20410
20411         * modules/clock-time: New module.
20412         * modules/nanosleep (Depends-on): Add clock-time.
20413         * modules/gethrxtime (Depends-on): Likewise.
20414         * modules/gettime (Depends-on): Likewise.
20415         * modules/settime (Depends-on): Likewise.
20416
20417         * modules/fts-lgpl: Depend on openat.
20418         * modules/mkancesdirs: Depend on savewd.
20419         * modules/mkdir-p: Likewise.
20420
20421 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20422
20423         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
20424
20425         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
20426         `gl_have_arbitrary_file_name_length_limit' to
20427         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
20428         actually works between configure runs.
20429
20430 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20431             Bruno Haible  <bruno@clisp.org>
20432
20433         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
20434
20435 2006-09-25  Jim Meyering  <jim@meyering.net>
20436
20437         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
20438         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
20439
20440 2006-09-25  Eric Blake  <ebb9@byu.net>
20441
20442         * gnulib-tool (func_import, func_create_testdir): Fix typos in
20443         exec's in 2006-09-18 patch when shuffling fds.
20444
20445 2006-09-25  Bruno Haible  <bruno@clisp.org>
20446
20447         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
20448         Reported by Jim Meyering.
20449
20450 2006-09-24  Jim Meyering  <jim@meyering.net>
20451
20452         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
20453         compare a pointer against a literal "0".  That caused failures with
20454         at least HP-UX's hpcc.
20455
20456 2006-09-22  Simon Josefsson  <jas@extundo.com>
20457
20458         * modules/gc-sha1:
20459         * modules/gc-md4:
20460         * modules/gc-hmac-sha1:
20461         * modules/gc-hmac-md5:
20462         * modules/gc-des:
20463         * modules/gc-arcfour: Distribute more files.
20464
20465 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20466
20467         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
20468         (gl_linked_iterator_from_to): Initialize struct completely.
20469         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
20470         (gl_tree_iterator_from_to): Likewise
20471         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
20472         * lib/gl_array_list.c [lint] (gl_array_iterator)
20473         (gl_array_iterator_from_to): Likewise.
20474         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
20475         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
20476         (gl_carray_iterator_from_to): Likewise.
20477
20478         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
20479         * lib/md4.c (md4_process_block): Remove unused variable.
20480         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
20481         parentheses for clarity.
20482
20483 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20484
20485         * modules/bison-i18n (Depends-on): Add gettext.
20486
20487 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20488
20489         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
20490         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
20491         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
20492         also add missing comma that caused broken test.
20493         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
20494         stdlib.h, for `abort'.
20495         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
20496         variables.
20497         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
20498         include unistd.h if present, for `rmdir'.
20499         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
20500         variables.
20501         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
20502         in the process include standard headers for prototypes.
20503         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
20504         gets declared on GNU/Linux.
20505         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
20506         unistd.h, for `rmdir'.
20507         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
20508
20509         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
20510         always true.
20511         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
20512
20513         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
20514
20515 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20516
20517         * gnulib-tool (func_version): Create output all at once.  This
20518         may help avoid triggering unnecessary SIGPIPEs, and at any
20519         rate it doesn't hurt.
20520
20521 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20522             Bruno Haible  <bruno@clisp.org>
20523
20524         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
20525         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
20526         * m4/signed.m4 (bh_C_SIGNED): Likewise.
20527
20528         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
20529         (gl_FUNC_VASPRINTF): Invoke it.
20530
20531 2006-09-22  Bruno Haible  <bruno@clisp.org>
20532
20533         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
20534         getloadavg.c as first argument.
20535
20536 2006-09-22  Bruno Haible  <bruno@clisp.org>
20537
20538         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
20539         at the beginning of the gl_INIT macro.
20540         * modules/getloadavg (configure.ac): Pass $gl_source_base to
20541         gl_GETLOADAVG.
20542
20543 2006-09-22  Bruno Haible  <bruno@clisp.org>
20544
20545         * gnulib-tool (func_create_megatestdir): Don't include the config-h
20546         module.
20547         Suggested by Ralf Wildenhues.
20548
20549 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
20550
20551         Import this patch from libc:
20552
20553         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
20554
20555         * lib/regex_internal.c (re_string_reconstruct): Handle
20556         offset < pstr->valid_raw_len && pstr->offsets_needed case.
20557         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
20558         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
20559         re_string_context_at.
20560
20561         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
20562         now requires it.
20563         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
20564         gl_REGEX now does it for us.
20565         (gl_REGEX): Add test taken from
20566         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
20567
20568         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
20569         Check that large offsets work.  Modernize Autoconf usages.
20570         Prefer "yes" to mean a good thing rather than a bad.
20571         Don't put "#define mkstemp" in config.h, as this might interfere
20572         with standard system headers that "#define mkstemp mkstemp64".
20573
20574         * modules/mkstemp (Depends-on): Add extensions, so that
20575         mkstemp is visible on some platforms.
20576         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
20577         (Include): Change to "mkstemp.h" from <stdlib.h>.
20578         (Files): Add mkstemp.h.
20579
20580         * lib/mkstemp.h: New file, since some standard headers
20581         #define mkstemp.
20582         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
20583         Include "mkstemp.h".
20584         Make the _LIBC code resemble glibc original more,
20585         e.g., use K&R style.
20586         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
20587         (mkstemp): Remove, since mkstemp.h does this for us.
20588         * lib/stdlib--.h: Include mkstemp.h.
20589
20590         Import this patch from libc:
20591
20592         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
20593
20594         * lib/tempname.c (__gen_tempname): Change attempts_min
20595         into a macro.  Use preprocessor to decide how to initialize
20596         attempts [Coverity CID 67].
20597
20598 2006-09-20  Bruno Haible  <bruno@clisp.org>
20599
20600         * lib/mkdtemp.c: Import from libc.
20601         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
20602                 * sysdeps/posix/tempname.c (__gen_tempname): Change
20603                 attempts_min into a macro.  Use preprocessor to decide how to
20604                 initialize attempts [Coverity CID 67].
20605         2001-11-27  Paul Eggert  <eggert@twinsun.com>
20606                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
20607                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
20608
20609 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20610
20611         * gnulib-tool (func_exit): New function, to allow to pass the
20612         exit status portably through the trap.  Use everywhere.
20613         (--help, --version): Signal a write error.
20614         (trap): catch SIGPIPE, for write errors.
20615         Exit at the end of the trap, with the correct exit status.
20616
20617 2006-09-19  Karl Berry  <karl@gnu.org>
20618
20619         * doc/gnulib.texi: note about the license texinfo files.
20620
20621 2006-09-19  Eric Blake  <ebb9@byu.net>
20622
20623         * gnulib-tool: Avoid space-tab.
20624
20625 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
20626
20627         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
20628         that prevented coreutils 6.1 from building.  Problem reported
20629         by Petter Reinholdtsen.
20630
20631 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
20632
20633         * gnulib-tool (avoidlist): Fix typo that broke options like
20634         --avoid=lock that are used by coreutils bootstrap.
20635
20636 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
20637
20638         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
20639         more systematically.
20640
20641 2006-09-18  Jim Meyering  <jim@meyering.net>
20642
20643         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
20644
20645 2006-09-18  Bruno Haible  <bruno@clisp.org>
20646
20647         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
20648
20649 2006-09-18  Bruno Haible  <bruno@clisp.org>
20650
20651         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
20652         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
20653         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
20654         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
20655         * m4/gettext.m4: Require autoconf >= 2.52.
20656         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
20657         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
20658         of gl_cv_header_inttypes_h.
20659
20660 2006-09-18  Bruno Haible  <bruno@clisp.org>
20661
20662         * lib/javaversion.c: Include configmake.h.
20663
20664 2006-09-18  Bruno Haible  <bruno@clisp.org>
20665
20666         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
20667         avoid that the while loops be executed in a subshell.
20668
20669 2006-09-18  Bruno Haible  <bruno@clisp.org>
20670
20671         * MODULES.html.sh (func_module): Break long lines.
20672         Suggested by Bruce Korb <bkorb@gnu.org>.
20673
20674 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20675
20676         Speed up by a factor of 1.12.
20677         * gnulib-tool (nl): New variable.
20678         (func_import): Rewrite include directive extraction to only read each
20679         directive once.
20680
20681 2006-09-17  Bruno Haible  <bruno@clisp.org>
20682
20683         * modules/javaversion (Makefile.am): Remove DEFS setting.
20684         (Depends-on): Add configmake, for PKGDATADIR definition.
20685
20686 2006-09-17  Bruno Haible  <bruno@clisp.org>
20687
20688         * gnulib-tool (func_create_testdir): Rewrite all files at once.
20689
20690 2006-09-17  Bruno Haible  <bruno@clisp.org>
20691
20692         * gnulib-tool (func_append): New function, stolen from libtool.m4.
20693         (func_modules_transitive_closure, func_modules_add_dummy,
20694         func_modules_to_filelist, func_import, func_create_testdir,
20695         func_create_megatestdir, ...): Use it wherever possible.
20696         Suggested by Ralf Wildenhues.
20697
20698 2006-09-16  Karl Berry  <karl@gnu.org>
20699
20700         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
20701         to avoid sectioning errors.
20702         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
20703         [ifinfo]: blank line after @center-ed titles.
20704         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
20705         Spell FSF address consistently with others.
20706         (These changes approved by rms.)
20707
20708 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20709
20710         Speed up by a factor of 1.61.
20711         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
20712         already checked module names again.
20713
20714 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20715
20716         Speed up by a factor of 1.13.
20717         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
20718         for new_files, and the input to func_add_or_update.
20719
20720 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20721
20722         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
20723         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
20724
20725 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20726
20727         * modules/mkancesdirs (Depends-on): Add fcntl.
20728         * modules/savewd: New file.
20729         * MODULES.html.sh (File system functions): Add savewd.
20730
20731         * modules/configmake (Makefile.am): Add support for the
20732         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
20733
20734 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20735
20736         * m4/savewd.m4: New file.
20737
20738 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20739
20740         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
20741         (dirchownmod): New arg FD.  All callers changed.
20742         Use FD rather than opening the directory ourself, as opening is
20743         now the caller's responsibility.
20744         * lib/dirchownmod.h: Likewise.
20745         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
20746         hosts that require <sys/types.h> before <sys/stat.h>.  Include
20747         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
20748         (test_dir): Remove.
20749         (mkancesdirs): Return length of prefix of FILE that has already
20750         been made, or -2 if there is a child doing the work.  Redo
20751         algorithm so that it is O(N) rather than O(N**2).  Optimize away
20752         ".", and treat ".." specially since it might stray back into
20753         already-created areas.  Use a subprocess if necessary.  New arg
20754         WD; all users changed.  MAKE_DIR function should now return 1
20755         if it creates a directory that is not readable.  Return -2 if
20756         a child process is spun off.
20757         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
20758         Adjust signature to match code.
20759         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
20760         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
20761         all users changed.
20762         * lib/savewd.c, lib/savewd.h: New files.
20763
20764 2006-09-15  Jim Meyering  <jim@meyering.net>
20765
20766         * modules/rename-dest-slash: New module.
20767         * MODULES.html.sh (posix_compat): Add it here.
20768
20769         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
20770
20771 2006-09-15  Jim Meyering  <jim@meyering.net>
20772
20773         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
20774         file.
20775
20776         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
20777
20778 2006-09-15  Jim Meyering  <jim@meyering.net>
20779
20780         * lib/rename-dest-slash.c (has_trailing_slash): Use
20781         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
20782         (rpl_rename_dest_slash): Perform the cheaper trailing slash
20783         test before testing whether SRC is a directory.
20784         Suggestions from Bruno Haible.
20785
20786         Avoid a warning about an unused variable.
20787         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
20788         into the #ifdef block where it's used.
20789
20790         * lib/rename-dest-slash.c: New file.
20791
20792 2006-09-14  Bruno Haible  <bruno@clisp.org>
20793
20794         * lib/allocsa.c: Include <config.h> unconditionally.
20795         * lib/asnprintf.c: Likewise.
20796         * lib/asprintf.c: Likewise.
20797         * lib/c-strcasecmp.c: Likewise.
20798         * lib/c-strcasestr.c: Likewise.
20799         * lib/c-strncasecmp.c: Likewise.
20800         * lib/c-strstr.c: Likewise.
20801         * lib/classpath.c: Likewise.
20802         * lib/clean-temp.c: Likewise.
20803         * lib/concatpath.c: Likewise.
20804         * lib/copy-file.c: Likewise.
20805         * lib/csharpcomp.c: Likewise.
20806         * lib/csharpexec.c: Likewise.
20807         * lib/execute.c: Likewise.
20808         * lib/fatal-signal.c: Likewise.
20809         * lib/findprog.c: Likewise.
20810         * lib/fwriteerror.c: Likewise.
20811         * lib/gl_array_list.c: Likewise.
20812         * lib/gl_array_oset.c: Likewise.
20813         * lib/gl_avltree_list.c: Likewise.
20814         * lib/gl_avltree_oset.c: Likewise.
20815         * lib/gl_avltreehash_list.c: Likewise.
20816         * lib/gl_carray_list.c: Likewise.
20817         * lib/gl_linked_list.c: Likewise.
20818         * lib/gl_linkedhash_list.c: Likewise.
20819         * lib/gl_list.c: Likewise.
20820         * lib/gl_oset.c: Likewise.
20821         * lib/gl_rbtree_list.c: Likewise.
20822         * lib/gl_rbtree_oset.c: Likewise.
20823         * lib/gl_rbtreehash_list.c: Likewise.
20824         * lib/imaxabs.c: Likewise.
20825         * lib/imaxdiv.c: Likewise.
20826         * lib/javacomp.c: Likewise.
20827         * lib/javaexec.c: Likewise.
20828         * lib/javaversion.c: Likewise.
20829         * lib/linebreak.c: Likewise.
20830         * lib/localcharset.c: Likewise.
20831         * lib/lock.c: Likewise.
20832         * lib/mbchar.c: Likewise.
20833         * lib/mbswidth.c: Likewise.
20834         * lib/mkdtemp.c: Likewise.
20835         * lib/pipe.c: Likewise.
20836         * lib/printf-args.c: Likewise.
20837         * lib/printf-parse.c: Likewise.
20838         * lib/progname.c: Likewise.
20839         * lib/progreloc.c: Likewise.
20840         * lib/readlink.c: Likewise.
20841         * lib/sh-quote.c: Likewise.
20842         * lib/stpcpy.c: Likewise.
20843         * lib/stpncpy.c: Likewise.
20844         * lib/strcasecmp.c: Likewise.
20845         * lib/strcasestr.c: Likewise.
20846         * lib/strcspn.c: Likewise.
20847         * lib/striconv.c: Likewise.
20848         * lib/strncasecmp.c: Likewise.
20849         * lib/strnlen1.c: Likewise.
20850         * lib/strstr.c: Likewise.
20851         * lib/strtok_r.c: Likewise.
20852         * lib/tls.c: Likewise.
20853         * lib/tmpdir.c: Likewise.
20854         * lib/unicodeio.c: Likewise.
20855         * lib/unsetenv.c: Likewise.
20856         * lib/vasnprintf.c: Likewise.
20857         * lib/vasprintf.c: Likewise.
20858         * lib/wait-process.c: Likewise.
20859         * lib/xallocsa.c: Likewise.
20860         * lib/xsetenv.c: Likewise.
20861         * lib/xstriconv.c: Likewise.
20862
20863 2006-09-13  Simon Josefsson  <jas@extundo.com>
20864
20865         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
20866         that internally, suggested by Ralf Wildenhues
20867         <Ralf.Wildenhues@gmx.de>.
20868
20869 2006-09-13  Simon Josefsson  <jas@extundo.com>
20870
20871         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
20872         @LIBOBJS@.
20873         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20874
20875 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
20876
20877         * lib/_fpending.c: Include <config.h> unconditionally, since we no
20878         longer worry about uses that don't define HAVE_CONFIG_H.
20879         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
20880         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
20881         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
20882         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
20883         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
20884         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
20885         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
20886         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
20887         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
20888         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
20889         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
20890         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
20891         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
20892         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
20893         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
20894         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
20895         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
20896         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
20897         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
20898         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
20899         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
20900         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
20901         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
20902         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
20903         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
20904         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
20905         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
20906         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
20907         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
20908         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
20909         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
20910         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
20911         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
20912         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
20913         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
20914         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
20915         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
20916         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
20917         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
20918         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
20919         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
20920         Likewise.
20921
20922 2006-09-13  Eric Blake  <ebb9@byu.net>
20923
20924         * lib/getopt.c: Fix typo in last commit.
20925
20926 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
20927
20928         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
20929         dgettext.
20930
20931 2006-09-12  Jim Meyering  <jim@meyering.net>
20932
20933         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
20934         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
20935         Reported by Nelson H. F. Beebe.
20936
20937 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
20938
20939         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
20940         program_invocation_name and program_invocation_short_name are
20941         initialized.
20942         * lib/argp-namefrob.h: Move declarations of program_invocation_name
20943         and program_invocation_short_name to argp.h, so they are visible
20944         to user programs.
20945         * lib/argp.h: Likewise
20946
20947 2006-09-10  Bruno Haible  <bruno@clisp.org>
20948
20949         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
20950         m4/inttypes_h.m4, m4/uintmax_t.m4.
20951
20952 2006-09-10  Bruno Haible  <bruno@clisp.org>
20953
20954         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
20955         gl_AC_TYPE_UINTMAX_T.
20956
20957 2006-09-10  Bruno Haible  <bruno@clisp.org>
20958
20959         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
20960
20961 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20962
20963         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
20964         convention.  Text proposed by Bruno Haible.
20965         (struct argp_option): Document the use of N_() wrappers.
20966
20967         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
20968         '\v', and translate the two parts separately, instead of feeding
20969         the whole string to gettext.  This allows to exclude
20970         '\v' from the strings visible to the translator by writing doc
20971         strings as N_("..") "\v" N_("..").
20972
20973 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20974
20975         * config/srclist.txt: Undo latest change; the bug was fixed.
20976
20977 2006-09-09  Bruno Haible  <bruno@clisp.org>
20978
20979         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
20980         assignments if building a library without libtool.
20981         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
20982         in func_emit_lib_Makefile_am.
20983         (func_import): When building a static library libfoo.a, arrange to
20984         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
20985         (func_create_testdir): Likewise.
20986         * modules/gc (configure.ac, Makefile.am): If building statically,
20987         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
20988         * modules/iconvme (configure.ac, Makefile.am): Likewise.
20989         * modules/striconv (configure.ac, Makefile.am): Likewise.
20990         Based on a suggestion by Ralf Wildenhues.
20991
20992 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20993
20994         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
20995         Check for unistd.h too, since Autoconf doesn't assume POSIX.
20996         Also:
20997
20998         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20999         Add year_2050_test to catch glibc bug 2821
21000         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
21001
21002         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21003         Prefer #ifdef to #if.
21004
21005         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
21006         Return from 'main' instead of calling 'exit'.
21007
21008 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21009
21010         * lib/mktime.c (guess_time_tm): Fix bug where mktime
21011         returned the maximum time_t value rather than (time_t) -1.
21012         Problem originally reported by William Bardwell
21013         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
21014
21015         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
21016         Moved to here ...
21017         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
21018         ... from here.
21019
21020 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21021
21022         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
21023         2821 is fixed.
21024
21025 2006-09-08  Jim Meyering  <jim@meyering.net>
21026
21027         Don't make generated files read-only.  That would bother too many
21028         people.  However, do retain the ability to work when targets are
21029         read-only: remove the destination and temporary files before writing
21030         them (when generated via sed or echo), or by using the -f option for
21031         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
21032         * modules/alloca-opt, modules/argz, modules/arpa_inet:
21033         * modules/byteswap, modules/configmake, modules/fcntl:
21034         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
21035         * modules/localcharset, modules/netinet_in, modules/poll:
21036         * modules/stdbool, modules/stdint, modules/sys_select:
21037         * modules/sys_socket, modules/sys_stat, modules/sysexits:
21038
21039 2006-09-08  Jim Meyering  <jim@meyering.net>
21040
21041         Avoid new build failure on FreeBSD 6.0.
21042         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
21043         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
21044         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
21045
21046 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21047
21048         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
21049
21050 2006-09-07  Jim Meyering  <jim@meyering.net>
21051
21052         Fix global typo in last change: use chmod u-w, not chmod u-x.
21053         Spotted by Paul Eggert and Bruce Korb.
21054         * modules/alloca-opt, modules/argz, modules/arpa_inet:
21055         * modules/byteswap, modules/configmake, modules/fcntl:
21056         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
21057         * modules/localcharset, modules/netinet_in, modules/poll:
21058         * modules/stdbool, modules/stdint, modules/sys_select:
21059         * modules/sys_socket, modules/sys_stat, modules/sysexits:
21060
21061 2006-09-06  Jim Meyering  <jim@meyering.net>
21062
21063         Make generated files be read-only.
21064         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
21065         Ensure that each generated file is now read-only.
21066         * modules/argz: Likewise.
21067         * modules/arpa_inet: Likewise.
21068         * modules/byteswap: Likewise.
21069         * modules/configmake: Likewise.
21070         * modules/fcntl: Likewise.
21071         * modules/fnmatch: Likewise.
21072         * modules/getopt: Likewise.
21073         * modules/glob: Likewise.
21074         * modules/inttypes: Likewise.
21075         * modules/netinet_in: Likewise.
21076         * modules/poll: Likewise.
21077         * modules/stdbool: Likewise.
21078         * modules/stdint: Likewise.
21079         * modules/sys_select: Likewise.
21080         * modules/sys_socket: Likewise.
21081         * modules/sys_stat: Likewise.
21082         * modules/sysexits: Likewise.
21083         * modules/localcharset: Same as above, but continue using temporary
21084         file named "t-$@" (why different?) rather than the "$@-t" used
21085         everywhere else.
21086
21087         * modules/sysexits (Makefile.am): Replace literal occurrences
21088         of "sysexit.h" more readable, and more consistent, "$@".
21089
21090 2006-09-06  Bruno Haible  <bruno@clisp.org>
21091
21092         * modules/striconv: New file.
21093         * modules/xstriconv: New file.
21094         * MODULES.html.sh (Internationalization functions): Add striconv,
21095         xstriconv.
21096
21097 2006-09-06  Bruno Haible  <bruno@clisp.org>
21098
21099         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
21100         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
21101         not using libtool correctly.
21102
21103 2006-09-06  Bruno Haible  <bruno@clisp.org>
21104
21105         * lib/striconv.h: New file.
21106         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
21107         iconvstring.c.
21108         * lib/xstriconv.h: New file.
21109         * lib/xstriconv.c: New file.
21110
21111 2006-09-06  Bruno Haible  <bruno@clisp.org>
21112
21113         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
21114         lib_..._LDFLAGS.
21115
21116 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21117
21118         * lib/argz_.h: Sync from Libtool.
21119
21120         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
21121                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
21122
21123         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
21124
21125 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
21126
21127         * modules/trim: New file.
21128
21129 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
21130
21131         * lib/trim.h: New file.
21132         * lib/trim.c: New file.
21133
21134 2006-09-05  Bruno Haible  <bruno@clisp.org>
21135
21136         * MODULES.html.sh (String handling): Add trim.
21137
21138 2006-09-04  Karl Berry  <karl@gnu.org>
21139
21140         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
21141         until next release.
21142
21143 2006-09-03  Bruno Haible  <bruno@clisp.org>
21144
21145         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
21146         correctly.
21147
21148 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21149
21150         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
21151         not gl_GETLOADAVG.  Omit unneeded semicolons.
21152         Problems reported by Ralf Wildenhues in
21153         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
21154         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
21155         at the end, which is the usual gnulib style.
21156
21157         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
21158         of doing all the work ourselves.
21159         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
21160         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
21161
21162 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21163
21164         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
21165         Problem reported by Ralf Wildenhues in
21166         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
21167
21168         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
21169         HAVE_STRUCT_STATFS_F_FSTYPENAME.
21170
21171 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21172
21173         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
21174         yesterday's patch by changing test -n to test -z.
21175
21176 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21177
21178         * modules/getloadavg (Files): Add m4/getloadavg.m4.
21179         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
21180         the former is now obsolescent.
21181
21182         * modules/chdir-long (Depends-on): Add fcntl.
21183
21184 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21185
21186         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
21187         obsolescent, and programs should use gnulib instead.
21188         * m4/getloadavg.m4: New file, with contents taken from Autoconf
21189         but with prefixes changed.
21190
21191 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21192
21193         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
21194         or stdbool.h, because they might not exist while configuring.
21195
21196         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
21197         Don't include unistd.h or limits.h; not needed, since chdir-long.h
21198         does that for us.
21199         (O_DIRECTORY): Remove.
21200
21201 2006-08-31  Eric Blake  <ebb9@byu.net>
21202
21203         * gnulib-tool: Don't let emacs change spaces to TAB.
21204
21205 2006-08-31  Bruno Haible  <bruno@clisp.org>
21206
21207         * gnulib-tool: When calling func_import more than once, do it in a
21208         subshell.
21209         Reported by Eric Blake <ebb9@byu.net>.
21210
21211 2006-08-31  Bruno Haible  <bruno@clisp.org>
21212
21213         * gnulib-tool (nl): Remove variable.
21214         (sed_transform_lib_file): Use more robust test for config-h module.
21215         (func_import): Fix typo in 2006-08-25 patch.
21216
21217 2006-08-31  Bruno Haible  <bruno@clisp.org>
21218
21219         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
21220         specified, augment Makefile.am variables instead of assigning them.
21221
21222 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21223
21224         Work around a bug in both the Linux and SunOS 64-bit kernels:
21225         nanosleep mishandles sleeps for longer than 2**31 seconds.
21226         Problem reported by Frank v Waveren in
21227         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
21228         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
21229         Check for nanosleep bug.
21230         (LIB_NANOSLEEP): Append clock_gettime library if needed.
21231
21232 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21233
21234         Work around a bug in both the Linux and SunOS 64-bit kernels:
21235         nanosleep mishandles sleeps for longer than 2**31 seconds.
21236         Problem reported by Frank v Waveren in
21237         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
21238         * lib/nanosleep.c (BILLION): New constant.
21239         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
21240         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
21241         implementation.
21242
21243 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21244
21245         * modules/nanosleep (Depends-on): Add gettime.
21246
21247 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21248         and Simon Josefsson  <jas@extundo.com>
21249         and Oskar Liljeblad  <oskar@osk.mine.nu>
21250
21251         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
21252         * gnulib-tool (func_import): New license type 'unmodifiable license
21253         text'.
21254         * modules/fdl: Use it.  Longer description.
21255         * module/gpl, module/lgpl: New files.
21256
21257 2006-08-30  Jim Meyering  <jim@meyering.net>
21258
21259         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
21260         shadowing the parameter.
21261
21262 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21263
21264         Sync from Libtool:
21265
21266         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21267
21268         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
21269         sharing with gnulib.  Report by Eric Blake.
21270
21271 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21272
21273         * modules/isapipe: New file.
21274         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
21275
21276 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21277
21278         * modules/configmake (Makefile.am): Add a comment, and omit
21279         the CONFIGMAKE_ prefix from generated macro names.  Suggested
21280         by Bruno Haible.
21281
21282 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21283
21284         * m4/isapipe.m4: New file.
21285
21286 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21287
21288         * lib/isapipe.c, lib/isapipe.h: New files.
21289
21290 2006-08-29  Jim Meyering  <jim@meyering.net>
21291
21292         * modules/configmake (Makefile.am): Make configmake.h depend on
21293         Makefile.  Otherwise, a stale configmake.h could hang around.
21294
21295 2006-08-29  Eric Blake  <ebb9@byu.net>
21296
21297         * lib/error.c (error_at_line, print_errno_message): Match libc, after
21298         resolution of upstream bug 3044.
21299
21300 2006-08-29  Bruno Haible  <bruno@clisp.org>
21301
21302         * modules/localcharset (Depends-on): Add configmake.
21303         (Makefile.am): Remove setting of LIBDIR through DEFS.
21304
21305 2006-08-29  Bruno Haible  <bruno@clisp.org>
21306
21307         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
21308         defined.
21309
21310 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21311
21312         * modules/fcntl: New file.
21313         * modules/chdir-safer (Depends-on): Add fcntl.
21314         * modules/fts: Likewise.
21315         * modules/mkdir-p: Likewise.
21316
21317         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
21318         This undoes the most recent change, since we're now addressing the
21319         problem in a different way.
21320
21321         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
21322         into output, since the output might be called Makefile.am even
21323         if $makefile_name is something different.
21324         (func_import): Use $makefile_am rather than
21325         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
21326         empty.
21327
21328         * modules/inttypes (Files): Add m4/inttypes-h.m4.
21329
21330 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21331
21332         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
21333         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
21334         recent change to stdint.m4, since we're now addressing the problem in a
21335         different way.
21336
21337 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21338
21339         * m4/fcntl_h.m4: New file.
21340
21341 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21342
21343         * lib/fcntl_.h: New file.
21344         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
21345         the fcntl module.
21346         * lib/dirchownmod.c: Likewise.
21347         * lib/fts.c: Likewise.
21348
21349         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
21350         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
21351         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
21352         just before including <inttypes.h>, to avoid circular inclusion.
21353
21354 2006-08-28  Jim Meyering  <jim@meyering.net>
21355
21356         * doc/visibility.texi: Actually read and correct the grammar of the
21357         sentence affected by yesterday's change.
21358
21359 2006-08-28  Eric Blake  <ebb9@byu.net>
21360
21361         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
21362         needs wrapper.
21363
21364 2006-08-28  Eric Blake  <ebb9@byu.net>
21365
21366         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
21367
21368 2006-08-28  Eric Blake  <ebb9@byu.net>
21369
21370         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
21371
21372 2006-08-28  Bruno Haible  <bruno@clisp.org>
21373
21374         * modules/c-strstr: New file, from GNU gettext.
21375         * MODULES.html.sh (String handling): Add c-strstr.
21376
21377 2006-08-28  Bruno Haible  <bruno@clisp.org>
21378
21379         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
21380         macros.
21381         Reported by Eric Blake.
21382
21383 2006-08-28  Bruno Haible  <bruno@clisp.org>
21384
21385         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
21386         (VASNPRINTF): Return a string of length > INT_MAX without failing.
21387         * lib/vasprintf.c: Include errno.h, limits.h.
21388         (EOVERFLOW): New fallback definition.
21389         (vasprintf): Test here whether the string length is > INT_MAX.
21390         * lib/vsnprintf.c: Include errno.h, limits.h.
21391         (EOVERFLOW): New fallback definition.
21392         (vsnprintf): Fix bug when generated string was too long for the buffer.
21393         Test here whether the string length is > INT_MAX.
21394
21395 2006-08-28  Bruno Haible  <bruno@clisp.org>
21396
21397         * lib/inttypes_.h (SCNX*): Remove definitions.
21398         Reported by Eric Blake.
21399
21400 2006-08-28  Bruno Haible  <bruno@clisp.org>
21401
21402         * lib/c-strstr.h: New file, from GNU gettext.
21403         * lib/c-strstr.c: New file, from GNU gettext.
21404
21405 2006-08-28  Bruno Haible  <bruno@clisp.org>
21406
21407         * gnulib-tool: Reorder some statements.
21408
21409 2006-08-28  Bruno Haible  <bruno@clisp.org>
21410
21411         * gnulib-tool: New option --makefile-name.
21412         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
21413         $makefile_name.
21414         (func_import): Write $makefile_name to the cache file, and read it from
21415         there unless explicitly specified. Use $makefile_name as file name
21416         instead of Makefile.am. Adjust the recommendations accordingly.
21417
21418 2006-08-28  Bruno Haible  <bruno@clisp.org>
21419
21420         * gnulib-tool (func_verify_module): Check against misapplying patch.
21421
21422 2006-08-28  Bruno Haible  <bruno@clisp.org>
21423
21424         * gnulib-tool (func_relativize, func_relconcat): New functions.
21425         Give an error if --local-dir is given with --update.
21426         Remove trailing slashes from $local_gnulib_dir.
21427         (func_import): Store the relativized $local_gnulib_dir in
21428         gnulib-cache.m4, and read it from there if not specified explicitly.
21429
21430 2006-08-28  Bruno Haible  <bruno@clisp.org>
21431
21432         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
21433         is the current directory. Respect also $local_gnulib_dir.
21434
21435 2006-08-28  Bruno Haible  <bruno@clisp.org>
21436             Simon Josefsson  <jas@extundo.com>
21437
21438         BeOS portability.
21439         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
21440
21441 2006-08-27  Jim Meyering  <jim@meyering.net>
21442
21443         * doc/visibility.texi: Remove duplicate word: "pointer".
21444
21445 2006-08-26  Bruno Haible  <bruno@clisp.org>
21446
21447         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
21448         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
21449         (Makefile.am): Create inttypes.h from inttypes_.h.
21450         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
21451
21452         * modules/imaxabs: New file.
21453
21454         * modules/imaxdiv: New file.
21455
21456 2006-08-26  Bruno Haible  <bruno@clisp.org>
21457
21458         * m4/inttypes.m4: New file.
21459         * m4/_inttypes_h.m4: Remove file.
21460         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
21461         PRI_MACROS_BROKEN.
21462         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
21463
21464         * m4/imaxabs.m4: New file.
21465
21466         * m4/imaxdiv.m4: New file.
21467
21468 2006-08-26  Bruno Haible  <bruno@clisp.org>
21469
21470         * lib/inttypes_.h: New file.
21471         * lib/inttypes.h: Remove file.
21472         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
21473
21474         * lib/imaxabs.c: New file.
21475
21476         * lib/imaxdiv.c: New file.
21477
21478 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21479
21480         New config-h module, so that "make" output needn't be cluttered
21481         by -DHAVE_CONFIG_H.
21482         * MODULES.html.sh (Support for building libraries and executables):
21483         Add config-h.
21484         * modules/config-h: New file.
21485         * gnulib-tool (nl, sed_transform_lib_file): New vars.
21486         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
21487         the config-h module is used.
21488
21489         New configmake module, so that "make" output needn't be cluttered
21490         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
21491         * MODULES.html.sh (Support for building libraries and executables):
21492         Add configmake.
21493         * modules/configmake: New file.
21494
21495 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21496
21497         * m4/config-h.m4: New file.
21498
21499 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21500
21501         * config/srclist.txt: Add elisp-comp.
21502
21503 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21504
21505         * MODULES.html.sh (Support for building libraries and executables):
21506         Add elisp-comp.
21507         * build-aux/elisp-comp: New file.
21508         * modules/elisp-comp: New file.
21509
21510 2006-08-24  Bruno Haible  <bruno@clisp.org>
21511
21512         * gnulib-tool (func_create_testdir): Use non-default values of
21513         sourcebase and m4base.
21514
21515 2006-08-24  Bruno Haible  <bruno@clisp.org>
21516
21517         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
21518         HTML structure.
21519
21520 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21521
21522         * modules/openat (Depends-on): Add lchown.
21523
21524 2006-08-23  Bruno Haible  <bruno@clisp.org>
21525
21526         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
21527         of gl_LOCK_EARLY instead of gl_LOCK.
21528
21529 2006-08-23  Bruno Haible  <bruno@clisp.org>
21530
21531         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
21532         on OSF/1 to no.
21533         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
21534
21535 2006-08-23  Bruno Haible  <bruno@clisp.org>
21536
21537         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
21538         as unusable.
21539
21540         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
21541         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
21542         (gl_LOCK): New macro.
21543
21544 2006-08-22  Simon Josefsson  <jas@extundo.com>
21545
21546         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
21547         to md5 module.
21548
21549 2006-08-22  Simon Josefsson  <jas@extundo.com>
21550
21551         * MODULES.html.sh: Add "Support for maintaining and release
21552         projects".
21553
21554         * build-aux/gnupload: New file, from coreutils.
21555
21556 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
21557
21558         Avoid the need for AC_LIBSOURCES in m4 macros.
21559         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
21560         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
21561         * modules/check-version (EXTRA_DIST): Add check-version.h.
21562         * modules/crc (EXTRA_DIST): Add crc.h.
21563         * modules/des (EXTRA_DIST): Add des.h.
21564         * modules/gc (EXTRA_DIST): Add gc.h.
21565         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
21566         * modules/getline (EXTRA_DIST): Add getline.h.
21567         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
21568         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
21569         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
21570         * modules/md2 (EXTRA_DIST): Add md2.h.
21571         * modules/md4 (EXTRA_DIST): Add md4.h.
21572         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
21573         * modules/read-file (EXTRA_DIST): Add read-file.h.
21574         * modules/readline (EXTRA_DIST): Add readline.h.
21575         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
21576         rijndael-api-fst.h.
21577
21578 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
21579
21580         * m4/rijndael.m4 (gl_ARCFOUR):
21581         * m4/arctwo.m4 (gl_ARCTWO):
21582         * m4/check-version.m4 (gl_CHECK_VERSION):
21583         * m4/crc.m4 (gl_CRC):