d8a1b17634ab7449b2eb9886a57af54a8a1b88a9
[gnulib.git] / ChangeLog
1 2008-10-19  Bruno Haible  <bruno@clisp.org>
2
3         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
4         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
5         mingw.
6
7 2008-10-19  Bruno Haible  <bruno@clisp.org>
8
9         * lib/atanl.c: Don't include isnanl.h.
10         * lib/cosl.c: Likewise.
11         * lib/ldexpl.c: Likewise.
12         * lib/logl.c: Likewise.
13         * lib/sinl.c: Likewise.
14         * lib/sqrtl.c: Likewise.
15         * lib/tanl.c: Likewise.
16
17         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
18         * lib/isnanf.h: Remove file.
19         * lib/isnand.h: Remove file.
20         * lib/isnanl.h: Remove file.
21         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
22         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
23         macros.
24         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
25         HAVE_ISNANF, don't define it as a C macro.
26         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
27         HAVE_ISNAND, don't define it as a C macro.
28         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
29         HAVE_ISNANL, don't define it as a C macro.
30         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
31         HAVE_ISNAN[FDL].
32         * modules/isnanf (Files): Remove lib/isnanf.h.
33         (Depends-on): Add math.
34         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
35         (Include): Specify <math.h> instead of isnanf.h.
36         * modules/isnand (Files): Remove lib/isnand.h.
37         (Depends-on): Add math.
38         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
39         (Include): Specify <math.h> instead of isnand.h.
40         * modules/isnanl (Files): Remove lib/isnanl.h.
41         (Depends-on): Add math.
42         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
43         (Include): Specify <math.h> instead of isnanl.h.
44         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
45         HAVE_ISNAN[FDL].
46         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
47         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
48         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
49         * NEWS: Mention the change.
50
51 2008-10-18  Bruno Haible  <bruno@clisp.org>
52
53         Add getusershell(), setusershell(), endusershell() declarations to
54         <unistd.h>.
55         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
56         declarations.
57         * lib/getusershell.c: Include unistd.h.
58         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
59         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
60         HAVE_GETUSERSHELL.
61         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
62         and HAVE_GETUSERSHELL.
63         * modules/getusershell (Depends-on): Add unistd, extensions.
64         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
65         (Include): Specify <unistd.h>.
66         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
67         HAVE_GETUSERSHELL.
68
69 2008-10-18  Bruno Haible  <bruno@clisp.org>
70
71         Add a getloadavg() declaration to <stdlib.h>.
72         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
73         getloadavg declaration.
74         (getloadavg): New declaration.
75         * lib/getloadavg.c: Include <stdlib.h> first.
76         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
77         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
78         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
79         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
80         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
81         * modules/getloadavg (Depends-on): Add stdlib, extensions.
82         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
83         (Include): Specify <stdlib.h>.
84         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
85         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
86
87 2008-10-18  Bruno Haible  <bruno@clisp.org>
88
89         * lib/dirchownmod.c: Don't include lchmod.h.
90
91         Move the lchmod() declaration to <sys/stat.h>.
92         * lib/lchmod.h: Remove file.
93         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
94         (lchmod): New declaration, moved here from lib/lchown.h.
95         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
96         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
97         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
98         and HAVE_LCHMOD.
99         * modules/lchmod (Files): Remove lib/lchmod.h.
100         (Depends-on): Add sys_stat, extensions.
101         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
102         (Include): Specify <sys/stat.h> instead of lchmod.h.
103         * modules/sys_stat (Depends-on): Add link-warning.
104         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
105         definition of GL_LINK_WARNING.
106         * NEWS: Mention the change.
107
108 2008-10-18  Bruno Haible  <bruno@clisp.org>
109
110         * lib/fchdir.c: Don't include dirfd.h.
111         * lib/fts.c: Likewise.
112         * lib/getcwd.c: Likewise.
113         * lib/glob.c: Likewise.
114
115         Move the dirfd() declaration to <dirent.h>.
116         * lib/dirfd.h: Remove file.
117         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
118         (dirfd): New declaration.
119         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
120         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
121         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
122         HAVE_DECL_DIRFD.
123         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
124         HAVE_DECL_DIRFD.
125         * modules/dirfd (Files): Remove lib/dirfd.h.
126         (Depends-on): Add dirent, extensions.
127         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
128         (Include): Specify <dirent.h> instead of dirfd.h.
129         * modules/dirent (Depends-on): Add link-warning.
130         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
131         definition of GL_LINK_WARNING.
132         * NEWS: Mention the change.
133
134 2008-10-18  Bruno Haible  <bruno@clisp.org>
135
136         Move the euidaccess() declaration to <unistd.h>.
137         * lib/euidaccess.h: Remove file.
138         * lib/unistd.in.h (euidaccess): New declaration.
139         * lib/euidaccess.c: Don't include euidaccess.h.
140         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
141         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
142         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
143         and HAVE_EUIDACCESS.
144         * modules/euidaccess (Files): Remove lib/euidaccess.h.
145         (Depends-on): Add unistd.
146         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
147         (Include): Specify <unistd.h> instead of euidaccess.h.
148         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
149         HAVE_EUIDACCESS.
150         * NEWS: Mention the change.
151
152 2008-10-18  Bruno Haible  <bruno@clisp.org>
153
154         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
155
156         Move the getdomainname() declaration to <unistd.h>.
157         * lib/getdomainname.h: Remove file.
158         * lib/unistd.in.h (getdomainname): New declaration.
159         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
160         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
161         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
162         HAVE_GETDOMAINNAME.
163         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
164         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
165         * modules/getdomainname (Files): Remove lib/getdomainname.h.
166         (Depends-on): Add unistd, extensions.
167         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
168         (Includes): Specify <unistd.h> instead of getdomainname.h.
169         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
170         HAVE_GETDOMAINNAME.
171         * NEWS: Mention the change.
172
173 2008-10-18  Bruno Haible  <bruno@clisp.org>
174
175         * modules/dirent: New file.
176         * m4/dirent_h.m4: New file.
177         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
178         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
179         * modules/fchdir (Files): Remove lib/dirent.in.h.
180         (Depends-on): Add dirent.
181         (Makefile.am): Move rules to modules/dirent.
182         * doc/posix-headers/dirent.texi: Mention the new module.
183
184 2008-10-18  Bruno Haible  <bruno@clisp.org>
185
186         Avoid -Wunused-parameter warnings in public gnulib header files.
187         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
188         macro.
189         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
190
191 2008-10-18  Bruno Haible  <bruno@clisp.org>
192
193         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
194         * doc/glibc-functions/error.texi: Mention the module 'error'.
195         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
196         * doc/glibc-functions/getdomainname.texi: Mention the module
197         'getdomainname'.
198         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
199         * doc/glibc-functions/getpagesize.texi: Mention the module
200         'getpagesize'.
201         * doc/glibc-functions/getusershell.texi: Mention the module
202         'getusershell'.
203         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
204         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
205         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
206         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
207         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
208         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
209         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
210         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
211         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
212         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
213         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
214         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
215         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
216         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
217
218 2008-10-17  Bruno Haible  <bruno@clisp.org>
219
220         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
221         HP-UX and IRIX, use -0.0L.
222         * tests/test-ceill.c (minus_zero): Likewise.
223         * tests/test-floorl.c (minus_zero): Likewise.
224         * tests/test-frexpl.c (minus_zero): Likewise.
225         * tests/test-isnan.c (minus_zerol): Likewise.
226         * tests/test-isnanl.h (minus_zero): Likewise.
227         * tests/test-ldexpl.c (minus_zero): Likewise.
228         * tests/test-roundl.c (minus_zero): Likewise.
229         * tests/test-signbit.c (minus_zerol): Likewise.
230         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
231         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
232         * tests/test-truncl.c (minus_zero): Likewise.
233         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
234         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
235         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
236         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
237
238 2008-10-17  Bruno Haible  <bruno@clisp.org>
239
240         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
241         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
242         that it gets activated only for gcc >= 3.0.
243         * lib/dirent.in.h: Likewise.
244         * lib/errno.in.h: Likewise.
245         * lib/fcntl.in.h: Likewise.
246         * lib/float.in.h: Likewise.
247         * lib/iconv.in.h: Likewise.
248         * lib/inttypes.in.h: Likewise.
249         * lib/locale.in.h: Likewise.
250         * lib/math.in.h: Likewise.
251         * lib/netdb.in.h: Likewise.
252         * lib/netinet_in.in.h: Likewise.
253         * lib/search.in.h: Likewise.
254         * lib/signal.in.h: Likewise.
255         * lib/spawn.in.h: Likewise.
256         * lib/stdarg.in.h: Likewise.
257         * lib/stdint.in.h: Likewise.
258         * lib/stdio.in.h: Likewise.
259         * lib/stdlib.in.h: Likewise.
260         * lib/string.in.h: Likewise.
261         * lib/strings.in.h: Likewise.
262         * lib/sys_file.in.h: Likewise.
263         * lib/sys_ioctl.in.h: Likewise.
264         * lib/sys_select.in.h: Likewise.
265         * lib/sys_socket.in.h: Likewise.
266         * lib/sys_stat.in.h: Likewise.
267         * lib/sys_time.in.h: Likewise.
268         * lib/sysexits.in.h: Likewise.
269         * lib/time.in.h: Likewise.
270         * lib/unistd.in.h: Likewise.
271         * lib/wchar.in.h: Likewise.
272         * lib/wctype.in.h: Likewise.
273         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
274
275 2008-10-17  Jim Meyering  <meyering@redhat.com>
276
277         ignore-value: don't depend on inline module
278         * modules/ignore-value (Depends-on): Remove 'inline'.
279         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
280         Suggestion from Bruno Haible.
281
282 2008-10-17  Bruno Haible  <bruno@clisp.org>
283
284         New implementation of condition variables for Win32.
285         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
286         (gl_linked_waitqueue_t): New type.
287         (gl_cond_t): Use it.
288         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
289         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
290         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
291         (glthread_cond_init_func, glthread_cond_wait_func,
292         glthread_cond_timedwait_func, glthread_cond_signal_func,
293         glthread_cond_broadcast_func, glthread_cond_destroy_func):
294         Reimplemented on the basis of gl_linked_waitqueue_t.
295         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
296         gl_waitqueue_t.
297         (gl_rwlock_t): Update.
298         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
299
300 2008-10-17  Simon Josefsson  <simon@josefsson.org>
301
302         * modules/recvfrom (Depends-on): Add dependency on getpeername.
303         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
304
305 2008-10-17  Jim Meyering  <meyering@redhat.com>
306
307         ignore-value: new module
308         * modules/ignore-value: New file.
309         * lib/ignore-value.h: New file.
310         * MODULES.html.sh (Compiler warning management): New section,
311         just for this module.  More to come.
312
313 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
314
315         open-safer.c: avoid 'signed and unsigned in conditional...' warning
316         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
317         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
318
319 2008-10-16  Jim Meyering  <meyering@redhat.com>
320
321         openat-die.c: avoid 'no previous prototype' warning
322         * lib/openat-die.c: Include "openat.h".
323         Reported by Reuben Thomas <rrt@sc3d.org>.
324
325 2008-10-16  Simon Josefsson  <simon@josefsson.org>
326
327         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
328         * lib/netdb.in.h: Fix typo.
329         Reported by Bruno Haible  <bruno@clisp.org>
330
331         * lib/netdb.in.h: Include sys/socket.h for platforms without
332         netdb.h, to get structures like hostent on MinGW.
333         * modules/netdb (Depends-on): Add sys_socket.
334
335 2008-10-15  Simon Josefsson  <simon@josefsson.org>
336
337         * modules/netdb, modules/netdb-tests: New file.
338         * m4/netdb_h.m4: New file.
339         * lib/netdb.in.h: Add, currently just an empty file pending
340         definitions.
341         * tests/test-netdb.c: New file.
342         * doc/posix-headers/netdb.texi: Mention that we replace it if
343         needed.
344         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
345         netdb.
346
347 2008-10-15  Simon Josefsson  <simon@josefsson.org>
348
349         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
350         with code.
351
352 2008-10-13  Bruno Haible  <bruno@clisp.org>
353
354         * lib/glthread/cond.c (glthread_cond_wait_func,
355         glthread_cond_timedwait_func): Add a comment.
356
357 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
358
359         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
360         * tests/test-select.c: Likewise,
361
362 2008-10-13  Bruno Haible  <bruno@clisp.org>
363
364         * lib/glthread/cond.c (glthread_cond_wait_func,
365         glthread_cond_timedwait_func): Fix variable name.
366         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
367
368 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
369
370         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
371         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
372         struct sockaddr.sa_len.
373         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
374
375 2008-10-13  Simon Josefsson  <simon@josefsson.org>
376
377         * build-aux/pmccabe2html: Add css and css_url parameters.
378
379 2008-10-12  Bruno Haible  <bruno@clisp.org>
380
381         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
382         calling aclx_get.
383         Reported by Rainer Tammer <tammer@tammer.net>.
384
385 2008-10-12  Bruno Haible  <bruno@clisp.org>
386
387         Use msvcrt aware primitives for creation/termination of Win32 threads.
388         * lib/glthread/thread.c: Include <process.h>.
389         (glthread_create_func): Use _beginthreadex instead of CreateThread.
390         (wrapper_func): Update signature.
391         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
392
393 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
394             Bruno Haible  <bruno@clisp.org>
395
396         Provide a Win32 implementation of the 'cond' module.
397         * lib/glthread/cond.h [USE_WIN32]: New implementation.
398         * lib/glthread/cond.c (glthread_cond_init_func,
399         glthread_cond_wait_func, glthread_cond_timedwait_func,
400         glthread_cond_signal_func, glthread_cond_broadcast_func,
401         glthread_cond_destroy_func) [USE_WIN32]: New functions.
402         * modules/cond (Dependencies): Add gettimeofday.
403
404 2008-10-11  Bruno Haible  <bruno@clisp.org>
405
406         Make sleep work on older versions of mingw.
407         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
408         only whether it exists.
409         * doc/posix-functions/sleep.texi: Mention the problem with older
410         versions of mingw.
411
412 2008-10-11  Bruno Haible  <bruno@clisp.org>
413
414         New module 'shutdown'.
415         * modules/shutdown: New file.
416         * lib/sys_socket.in.h (shutdown): New declaration.
417         * lib/winsock.c (shutdown): New function.
418         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
419         GNULIB_SHUTDOWN.
420         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
421         * doc/posix-functions/shutdown.texi: Document the new module.
422
423 2008-10-11  Jim Meyering  <meyering@redhat.com>
424
425         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
426
427 2008-10-11  Bruno Haible  <bruno@clisp.org>
428
429         New module 'fclose'.
430         * modules/fclose: New file.
431         * lib/stdio.in.h (fclose): New declaration.
432         * lib/fclose.c: New file.
433         * m4/fclose.m4: New file.
434         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
435         REPLACE_FCLOSE.
436         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
437         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
438         REPLACE_FCLOSE.
439         * modules/close (Depends-on): fclose.
440         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
441
442 2008-10-11  Bruno Haible  <bruno@clisp.org>
443
444         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
445         set errno and don't call _close.
446
447 2008-10-10  Bruno Haible  <bruno@clisp.org>
448
449         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
450         ACL, not afterwards. Fixes test failure on Cygwin.
451
452 2008-10-09  Ben Pfaff  <blp@gnu.org>
453
454         * build-aux/announce-gen: Fix gnulib version related part of usage
455         message.  Die with a useful error message if no tarballs are
456         found.
457
458 2008-10-10  Jim Meyering  <meyering@redhat.com>
459
460         bootstrap: use git's --depth=N option only if it's supported
461         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
462         recognize the --depth option.  Reported by Pádraig Brady.
463
464 2008-10-09  Bruno Haible  <bruno@clisp.org>
465
466         New module 'ioctl'.
467         * modules/ioctl: New file.
468         * lib/sys_socket.in.h (ioctl): Remove declaration.
469         * lib/winsock.c: Include <sys/ioctl.h>.
470         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
471         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
472         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
473         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
474         * doc/posix-functions/ioctl.texi: Mention the new module.
475
476 2008-10-09  Bruno Haible  <bruno@clisp.org>
477
478         New module 'sys_ioctl'.
479         * lib/sys_ioctl.in.h: New file.
480         * m4/sys_ioctl_h.m4: New file.
481         * modules/sys_ioctl: New file.
482         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
483
484 2008-10-09  Bruno Haible  <bruno@clisp.org>
485
486         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
487         * lib/winsock.c: Include <stdarg.h>.
488         (rpl_ioctl): Change to second argument 'int' and then varargs.
489
490 2008-10-09  Bruno Haible  <bruno@clisp.org>
491
492         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
493         when the sys_socket module is present and the system has <winsock2.h>.
494
495 2008-10-09  Bruno Haible  <bruno@clisp.org>
496
497         * doc/posix-functions/close.texi: Mention module 'close' instead of
498         module 'sys_socket'.
499
500 2008-10-09  Bruno Haible  <bruno@clisp.org>
501
502         * doc/glibc-headers/sys_ioctl.texi: New file.
503         * doc/gnulib.texi: Include it.
504
505 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
506             Bruno Haible  <bruno@clisp.org>
507
508         Combine the two replacements of 'close'.
509         * lib/sys_socket.in.h (close): Define to a reminder to include
510         <unistd.h>.
511         (_gl_close_fd_maybe_socket): New declaration.
512         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
513         * lib/winsock.c (close): Remove undefinition.
514         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
515         needed for the gnulib module 'close'.
516         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
517         define to an error symbol or to a warning, if suitable.
518         * lib/close.c: Include <sys/socket.h>.
519         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
520         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
521         UNISTD_H_HAVE_WINSOCK2_H.
522         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
523         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
524         UNISTD_H_HAVE_WINSOCK2_H.
525         * modules/sys_socket (Files): Add m4/unistd_h.m4.
526         (configure.ac): Set a module indicator.
527         (Makefile.am): Substitute GNULIB_CLOSE.
528         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
529         * modules/poll-tests (Depends-on): Add close.
530         * modules/select-tests (Depends-on): Likewise.
531
532 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
533             Bruno Haible  <bruno@clisp.org>
534
535         New module 'close'.
536         * modules/close: New file.
537         * lib/unistd.in.h (close): Move declaration out of the
538         FCHDIR_REPLACEMENT scope.
539         (_gl_unregister_fd): New declaration.
540         * lib/close.c: New file.
541         * lib/fchdir.c (rpl_close): Remove function.
542         * m4/close.m4: New file.
543         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
544         close.
545         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
546         REPLACE_CLOSE.
547         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
548         REPLACE_CLOSE.
549         * modules/fchdir (Depends-on): Add close.
550
551 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
552             Bruno Haible  <bruno@clisp.org>
553
554         * lib/fcntl.in.h (open): Simplify conditionals.
555         (_gl_register_fd): New declaration.
556         * lib/fchdir.c (rpl_open): Remove function.
557         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
558         also.
559         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
560         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
561         open.
562
563 2008-10-09  Jim Meyering  <meyering@redhat.com>
564
565         GNUmakefile: use the more name-space-friendly "_version"
566         * top/GNUmakefile (_dummy): Update.
567         (_version): Rename from "version".
568
569 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
570             Bruno Haible  <bruno@clisp.org>
571
572         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
573         rpl_close.
574         (_gl_register_fd): New function, extracted from rpl_open.
575         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
576         (rpl_open, rpl_opendir): Use _gl_register_fd.
577
578 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
579
580         Fix organization of 'open' replacement.
581         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
582         (gl_FUNC_OPEN): Use it.
583         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
584
585 2008-10-08  Bruno Haible  <bruno@clisp.org>
586
587         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
588
589 2008-10-08  Simon Josefsson  <simon@josefsson.org>
590
591         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
592         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
593         listen).
594
595 2008-10-08  Eric Blake  <ebb9@byu.net>
596
597         GNUmakefile: add 'make version' target
598         * top/GNUmakefile (_curr-ver): Split version update rules...
599         (version): ...into a target.
600
601 2008-10-07  Bruno Haible  <bruno@clisp.org>
602
603         Use a more portable replacement expression for -0.0L.
604         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
605         instead of -0.0L. Fix m4 quotation.
606
607         * tests/test-signbit.c: Include <float.h>.
608         (minus_zero): New variable.
609         (test_signbitl): Use minus_zero instead of -zero.
610         * modules/signbit-tests (Depends-on): Add float.
611
612         * tests/test-ceill.c: Include <float.h>.
613         (zero): Remove variable.
614         (minus_zero): New variable.
615         (main): Use minus_zero instead of -zero.
616         * modules/ceill-tests (Depends-on): Add float.
617
618         * tests/test-floorl.c: Include <float.h>.
619         (zero): Remove variable.
620         (minus_zero): New variable.
621         (main): Use minus_zero instead of -zero.
622         * modules/floorl-tests (Depends-on): Add float.
623
624         * tests/test-roundl.c: Include <float.h>.
625         (zero): Remove variable.
626         (minus_zero): New variable.
627         (main): Use minus_zero instead of -zero.
628         * modules/roundl-tests (Depends-on): Add float.
629
630         * tests/test-truncl.c: Include <float.h>.
631         (zero): Remove variable.
632         (minus_zero): New variable.
633         (main): Use minus_zero instead of -zero.
634         * modules/truncl-tests (Depends-on): Add float.
635
636         * tests/test-frexpl.c (zero): Remove variable.
637         (minus_zero): New variable.
638         (main): Use minus_zero instead of -zero.
639         * modules/frexpl-tests (Depends-on): Add float.
640
641         * tests/test-isnan.c (zerol): Remove variable.
642         (minus_zerol): New variable.
643         (test_long_double): Use minus_zerol instead of -zerol.
644         * modules/isnan-tests (Depends-on): Add float.
645
646         * tests/test-isnanl.h (zero): Remove variable.
647         (minus_zero): New variable.
648         (main): Use minus_zero instead of -zero.
649         * modules/isnanl-nolibm-tests (Depends-on): Add float.
650         * modules/isnanl-tests (Depends-on): Add float.
651
652         * tests/test-ldexpl.c (zero): Remove variable.
653         (minus_zero): New variable.
654         (main): Use minus_zero instead of -zero.
655         * modules/ldexpl-tests (Depends-on): Add float.
656
657         * tests/test-snprintf-posix.h (zerol): Remove variable.
658         (minus_zerol): New variable.
659         (test_function): Use minus_zerol instead of -zerol.
660         * modules/snprintf-posix-tests (Depends-on): Add float.
661         * modules/vsnprintf-posix-tests (Depends-on): Add float.
662
663         * tests/test-sprintf-posix.h (zerol): Remove variable.
664         (minus_zerol): New variable.
665         (test_function): Use minus_zerol instead of -zerol.
666         * modules/sprintf-posix-tests (Depends-on): Add float.
667         * modules/vsprintf-posix-tests (Depends-on): Add float.
668
669         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
670         (minus_zerol): New variable.
671         (test_function): Use minus_zerol instead of -zerol.
672         * modules/vasnprintf-posix-tests (Depends-on): Add float.
673
674         * tests/test-vasprintf-posix.c (zerol): Remove variable.
675         (minus_zerol): New variable.
676         (test_function): Use minus_zerol instead of -zerol.
677         * modules/vasprintf-posix-tests (Depends-on): Add float.
678
679 2008-10-07  Simon Josefsson  <simon@josefsson.org>
680
681         * MODULES.html.sh (Support for building documentation): Mention
682         pmccabe2html.  Sort entries.
683
684         Add pmccabe2html module, from gnupdf.
685         * build-aux/pmccabe.css: New file.
686         * build-aux/pmccabe2html: New file.
687         * m4/pmccabe2html.m4: New file.
688         * modules/pmccabe2html: New file.
689
690 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
691
692         flock: new module
693         * MODULES.html.sh: Add to list of modules.
694         * lib/flock.c: flock implementation for Windows and Unix systems
695         which have fcntl.
696         * doc/glibc-functions/flock.texi: Update documentation.
697         * lib/sys_file.in.h: <sys/file.h> header file.
698         * m4/flock.m4: M4 macros.
699         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
700         * modules/flock: flock module.
701         * modules/flock-tests: flock tests module.
702         * modules/sys_file: sys/file.h module.
703         * tests/test-flock.c: test suite for flock.
704
705 2008-10-06  Jim Meyering  <meyering@redhat.com>
706
707         bootstrap: check for LT_INIT more portably still ;-)
708         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
709         Spotted by Bruno Haible.
710
711 2008-10-06  Eric Blake  <ebb9@byu.net>
712
713         test-signbit: avoid tripping Irix cc bug on -0.0L
714         * tests/test-signbit.c (minus_zerol): Delete, and replace with
715         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
716         entire testsuite consistent and avoids an Irix 6.2 bug.
717
718 2008-10-05  Bruno Haible  <bruno@clisp.org>
719             Jim Meyering  <jim@meyering.net>
720
721         Add an option for ignoring EPIPE during close_stdout.
722         * lib/closeout.h: Include <stdbool.h>.
723         (close_stdout_set_ignore_EPIPE): New declaration.
724         * lib/closeout.c: Include <stdbool.h>.
725         (ignore_EPIPE): New variable.
726         (close_stdout_set_ignore_EPIPE): New function.
727         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
728         * lib/close-stream.c (close_stream): Mention the possible EPIPE
729         failure.
730         * modules/closeout (Depends-on): Add stdbool.
731
732 2008-10-05  Bruno Haible  <bruno@clisp.org>
733
734         * modules/accept: New file.
735         * modules/bind: New file.
736         * modules/connect: New file.
737         * modules/getpeername: New file.
738         * modules/getsockname: New file.
739         * modules/getsockopt: New file.
740         * modules/listen: New file.
741         * modules/recv: New file.
742         * modules/recvfrom: New file.
743         * modules/send: New file.
744         * modules/sendto: New file.
745         * modules/setsockopt: New file.
746         * modules/socket: New file.
747         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
748         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
749         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
750         the particular module is requested. Add a link warning when the
751         particular module is not requested.
752         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
753         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
754         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
755         the particular module is requested.
756         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
757         gl_SYS_SOCKET_H_DEFAULTS): New macros.
758         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
759         * modules/sys_socket (Depends-on): Add link-warning.
760         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
761         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
762         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
763         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
764         GL_LINK_WARNING.
765         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
766         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
767         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
768         * doc/posix-functions/getpeername.texi: Mention the new module
769         'getpeername'.
770         * doc/posix-functions/getsockname.texi: Mention the new module
771         'getsockname'.
772         * doc/posix-functions/getsockopt.texi: Mention the new module
773         'getsockopt'.
774         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
775         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
776         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
777         * doc/posix-functions/send.texi: Mention the new module 'send'.
778         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
779         * doc/posix-functions/setsockopt.texi: Mention the new module
780         'setsockopt'.
781         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
782         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
783         listen, connect, accept.
784         * modules/select-tests (Depends-on): Likewise.
785
786 2008-10-05  Bruno Haible  <bruno@clisp.org>
787
788         * lib/winsock.c (strerror): Remove unused #undef.
789         (rpl_close): Remove unused local variable.
790
791         * modules/sys_socket (Depends-on); Add errno.
792
793 2008-10-05  Bruno Haible  <bruno@clisp.org>
794
795         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
796         (select): Add a link warning when the 'select' module is not used.
797         * modules/sys_select (Depends-on): Add link-warning.
798         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
799         Suggested by Paolo Bonzini.
800
801 2008-10-05  Jim Meyering  <meyering@redhat.com>
802
803         bootstrap: check for LT_INIT more portably
804         * build-aux/bootstrap: Avoid using grep -E, since it's not
805         portable enough.  Suggestion from Bruno Haible.
806
807 2008-10-05  Bruno Haible  <bruno@clisp.org>
808
809         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
810         as being fixed by gnulib.
811
812 2008-10-05  Bruno Haible  <bruno@clisp.org>
813
814         * modules/select-tests: New file, mostly copied from
815         modules/sys_select-tests.
816         * tests/test-select.c: New file, mostly copied from
817         tests/test-sys_select.c.
818         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
819         * modules/sys_select-tests (Depends-on): Remove all dependencies.
820         (Makefile.am): Remove test_sys_select_LDADD.
821
822         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
823         to an undefined symbol, for an error message.
824         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
825         (gl_SYS_SELECT_H_DEFAULTS): New macro.
826         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
827         winsock-select.c here.
828         * modules/sys_select (Files): Remove lib/winsock-select.c.
829         (Depends-on): Remove alloca.
830         (Makefile.am): Substitute GNULIB_SELECT.
831         * modules/select: New file.
832         * doc/posix-functions/select.texi: Update.
833
834 2008-10-05  Bruno Haible  <bruno@clisp.org>
835
836         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
837         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
838         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
839         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
840         getdtablesize.
841         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
842         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
843
844 2008-10-05  Bruno Haible  <bruno@clisp.org>
845
846         * modules/getdtablesize-tests: New file.
847         * tests/test-getdtablesize.c: New file.
848
849         New module 'getdtablesize'.
850         * lib/unistd.in.h (getdtablesize): New declaration.
851         * lib/getdtablesize.c: New file.
852         * m4/getdtablesize.m4: New file.
853         * modules/getdtablesize: New file.
854         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
855         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
856         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
857         HAVE_GETDTABLESIZE.
858         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
859
860 2008-10-05  Bruno Haible  <bruno@clisp.org>
861
862         * modules/sched (Makefile.am): Fix typo.
863         Reported by Simon Josefsson.
864
865 2008-10-05  Jim Meyering  <meyering@redhat.com>
866
867         bootstrap: check for LT_INIT, too
868         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
869         are deprecated.  Suggestion from Ralf Wildenhues.
870
871 2008-10-05  Bruno Haible  <bruno@clisp.org>
872
873         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
874         overriding them by ours.
875         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
876
877 2008-10-05  Jim Meyering  <meyering@redhat.com>
878
879         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
880         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
881         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
882
883 2008-10-04  Bruno Haible  <bruno@clisp.org>
884
885         * modules/dup2 (License): Change to LGPLv2+.
886         * modules/sleep (License): Likewise.
887         * modules/perror (License): Likewise.
888         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
889         Blake.
890         * modules/signal (License): Likewise.
891         * modules/sigprocmask (License): Likewise.
892         * modules/raise (License): Change to LGPLv2+, with approval by Jim
893         Meyering.
894
895 2008-10-04  Bruno Haible  <bruno@clisp.org>
896
897         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
898         Reported by Rainer Tammer <tammer@tammer.net>.
899
900 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
901             Bruno Haible  <bruno@clisp.org>
902
903         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
904         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
905         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
906
907 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
908
909         filevercmp: new module
910         * lib/filevercmp.h: New function filevercmp comparing version strings.
911         * lib/filevercmp.c: Implementation of filevercmp function.
912         * modules/filevercmp: Module metadata.
913         * tests/test-filevercmp.c: Unit test for new module.
914         * modules/filevercmp-tests: Unit test metadata.
915         * MODULES.html.sh: Add filevercmp module.
916
917 2008-10-03  Bruno Haible  <bruno@clisp.org>
918
919         * lib/c-ctype.h: Add comment.
920         Reported by Jim Meyering.
921
922 2008-10-02  Bruno Haible  <bruno@clisp.org>
923
924         * modules/posix_spawn-internal (Depends-on): Add 'open'.
925
926 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
927
928         * build-aux/bootstrap: Allow renaming bootstrap, and change the
929         name of bootstrap.conf accordingly.
930
931 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
932
933         * build-aux/bootstrap: Install git-merge-changelog configuration
934         items into .gitconfig if needed.
935
936 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
937
938         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
939         git repository, and initialize/update it accordingly.
940
941 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
942
943         * modules/fsync-tests: New file.
944         * tests/test-fsync.c: New file.
945
946         New module 'fsync'.
947         * lib/fsync.c: New file.
948         * m4/fsync.m4: New file.
949         * modules/fsync: New file.
950         * lib/unistd.in.h (fsync): New declaration.
951         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
952         GNULIB_FSYNC and HAVE_FSYNC.
953         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
954         * MODULES.html.sh (posix_functions): Add fsync.
955         * doc/posix-functions/fsync.texi: Mention the new module.
956
957 2008-10-02  Jim Meyering  <meyering@redhat.com>
958
959         fts.c: sync with similar code from coreutils' remove.c
960         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
961         Guard also with "#if defined __linux__", since for now at least,
962         this code is Linux-kernel-specific.
963
964 2008-10-02  Jim Meyering  <meyering@redhat.com>
965
966         fts: bug fixes
967         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
968         Include <sys/vfs.h>, not <sys/statfs.h>.
969
970         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
971         Include <sys/vfs.h>, not <sys/statfs.h>.
972
973 2008-10-01  Bruno Haible  <bruno@clisp.org>
974
975         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
976         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
977         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
978         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
979         * doc/posix-functions/posix_spawnp.texi: Likewise.
980         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
981         whether posix_spawn actually works.
982         * m4/pipe.m4 (gl_PIPE): Likewise.
983         * modules/execute (Files): Add m4/posix_spawn.m4.
984         * modules/pipe (Files): Add m4/posix_spawn.m4.
985         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
986
987 2008-10-01  Jim Meyering  <meyering@redhat.com>
988
989         remove trailing spaces
990         * NEWS: Likewise.
991         * lib/poll.c (poll): Likewise.
992         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
993         * lib/winsock.c (rpl_close): Likewise.
994         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
995         * modules/yield: Likewise.
996         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
997         * tests/test-sys_select.c (connect_to_socket): Likewise.
998
999         fts.c: adjust a new interface to be more generally useful
1000         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
1001         (fts_build): Adjust caller.
1002
1003 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1004
1005         * modules/cond-tests: New file.
1006         * tests/test-cond.c: New file.
1007
1008 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1009             Bruno Haible  <bruno@clisp.org>
1010
1011         * modules/cond (Dependencies): Add errno, time.
1012         * lib/glthread/cond.h: Include <time.h>.
1013         (gl_cond_define, gl_cond_define_initialized): Use the same definition
1014         across platforms.
1015
1016 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1017             Bruno Haible  <bruno@clisp.org>
1018
1019         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
1020
1021 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1022             Bruno Haible  <bruno@clisp.org>
1023
1024         * modules/tls-tests (Depends-on): Add thread, yield.
1025         (configure.ac): Remove all checks.
1026         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
1027         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
1028         gl_thread_self): Remove definitions. Include glthread/thread.h and
1029         glthread/yield.h instead.
1030         (test_tls): Pass an additional NULL argument to gl_thread_join.
1031
1032 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1033             Bruno Haible  <bruno@clisp.org>
1034
1035         * modules/lock-tests (Depends-on): Add thread, yield.
1036         (configure.ac): Remove all checks.
1037         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
1038         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
1039         gl_thread_self): Remove definitions. Include glthread/thread.h and
1040         glthread/yield.h instead.
1041         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
1042         additional NULL argument to gl_thread_join.
1043
1044 2008-09-30  Bruno Haible  <bruno@clisp.org>
1045
1046         Fix the Win32 implementation of the 'thread' module.
1047         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
1048         pointer type.
1049         (gl_thread_self): Invoke gl_thread_self_func.
1050         (gl_thread_self_func): New declaration.
1051         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
1052         (do_init_self_key, init_self_key): New functions.
1053         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
1054         Remove some fields.
1055         (running_threads, running_lock): Remove variables.
1056         (get_current_thread_handle): New function.
1057         (gl_thread_self_func, wrapper_func, glthread_create_func,
1058         glthread_join_func, gl_thread_exit_func): Largely rewritten and
1059         simplified.
1060
1061 2008-09-30  Bruno Haible  <bruno@clisp.org>
1062
1063         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
1064         files.
1065
1066 2008-09-30  Jim Meyering  <meyering@redhat.com>
1067
1068         fts.m4: correct the test for statfs.f_type
1069         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
1070         when checking for statfs.f_type.
1071
1072 2008-09-15  Simon Josefsson  <simon@josefsson.org>
1073
1074         tests: avoid some compiler warnings
1075         * tests/test-memchr.c (main): Pass NULL indirectly.
1076         * tests/test-getdate.c (main): Remove unused variable 'ret'.
1077
1078 2008-09-29  OndÅ™ej Vašík  <ovasik@redhat.com>
1079
1080         getdate.y: disallow countable dayshifts like "4 yesterday ago"
1081         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
1082         exactly specified dayshifts.
1083         (dayshift): New rule.
1084         (rel): Add dayshift.
1085         (relative_time_table) [tomorrow, yesterday, today, now]:
1086         Use tDAY_SHIFT in place of tDAY_UNIT.
1087         * tests/test-getdate.c: Add tests for now-disallowed countable
1088         dayshifts, e.g., "4 yesterday ago".
1089
1090 2008-09-29  Bruno Haible  <bruno@clisp.org>
1091
1092         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
1093         * tests/test-posix_spawn1.in.sh: Renamed from
1094         tests/test-posix_spawn.in.sh.
1095         * tests/test-posix_spawn2.c: New file.
1096         * tests/test-posix_spawn2.in.sh: New file.
1097         * modules/posix_spawnp-tests (Files): Update.
1098         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
1099
1100 2008-09-29  Bruno Haible  <bruno@clisp.org>
1101
1102         Propagate effects of putenv/setenv/unsetenv to child processes.
1103         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
1104         * lib/pipe.c (create_pipe): Likewise.
1105
1106 2008-09-29  Bruno Haible  <bruno@clisp.org>
1107
1108         Enable use of shell scripts as executables in mingw.
1109         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
1110         run the program as a shell script.
1111         * lib/pipe.c (create_pipe): Likewise.
1112         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
1113         resulting array.
1114
1115 2008-09-29  Eric Blake  <ebb9@byu.net>
1116
1117         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
1118
1119 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
1120
1121         * doc/posix-functions/accept.texi: Update mingw problems.
1122         * doc/posix-functions/bind.texi: Update mingw problems.
1123         * doc/posix-functions/close.texi: Update mingw problems.
1124         * doc/posix-functions/connect.texi: Update mingw problems.
1125         * doc/posix-functions/getpeername.texi: Update mingw problems.
1126         * doc/posix-functions/getsockname.texi: Update mingw problems.
1127         * doc/posix-functions/getsockopt.texi: Update mingw problems.
1128         * doc/posix-functions/ioctl.texi: Update mingw problems.
1129         * doc/posix-functions/listen.texi: Update mingw problems.
1130         * doc/posix-functions/recv.texi: Update mingw problems.
1131         * doc/posix-functions/recvfrom.texi: Update mingw problems.
1132         * doc/posix-functions/select.texi: Update mingw problems.
1133         * doc/posix-functions/send.texi: Update mingw problems.
1134         * doc/posix-functions/sendto.texi: Update mingw problems.
1135         * doc/posix-functions/setsockopt.texi: Update mingw problems.
1136         * doc/posix-functions/socket.texi: Update mingw problems.
1137
1138 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
1139             Bruno Haible  <bruno@clisp.org>
1140
1141         * lib/sys_select.in.h: Include sys/time.h.
1142         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
1143         * modules/sys_select: Depend on sys_time.
1144         * tests/test-sys_select.c: Test that sys/select.h defines struct
1145         timeval fully.
1146
1147 2008-09-29  Bruno Haible  <bruno@clisp.org>
1148
1149         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
1150         * lib/sys_select.in.h: Likewise.
1151
1152 2008-09-29  Bruno Haible  <bruno@clisp.org>
1153
1154         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
1155
1156 2008-09-29  Bruno Haible  <bruno@clisp.org>
1157
1158         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
1159         Set LIBSOCKET instead of augmenting LIBS.
1160         * modules/sockets (Link): New section.
1161         * modules/sockets-tests (test_sockets_LDADD): New variable.
1162         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
1163         * modules/poll-tests (test_poll_LDADD): New variable.
1164         * NEWS: Document the change.
1165
1166 2008-09-29  Bruno Haible  <bruno@clisp.org>
1167
1168         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
1169         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
1170         ARPA_INET_H directly.
1171         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
1172
1173 2008-09-28  Bruno Haible  <bruno@clisp.org>
1174
1175         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
1176         from gl_HEADER_SYS_SOCKET.
1177         (gl_HEADER_SYS_SOCKET): Invoke it.
1178         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
1179
1180 2008-09-28  Bruno Haible  <bruno@clisp.org>
1181
1182         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
1183         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
1184         Needed on OSF/1 4.0.
1185
1186 2008-09-28  Bruno Haible  <bruno@clisp.org>
1187
1188         Override open more carefully.
1189         * lib/open.c (orig_open): New function.
1190         (rpl_open): Use orig_open instead of open.
1191         * lib/fcntl.in.h: Add special invocation convention.
1192         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
1193         (gl_FUNC_OPEN): Invoke it.
1194
1195         Override freopen more carefully.
1196         * lib/freopen.c (orig_freopen): New function.
1197         (rpl_freopen): Use orig_freopen instead of freopen.
1198         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
1199         (gl_FUNC_FREOPEN): Invoke it.
1200
1201         Override fopen more carefully.
1202         * lib/fopen.c (orig_fopen): New function.
1203         (rpl_fopen): Use orig_fopen instead of fopen.
1204         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
1205         (gl_FUNC_FOPEN): Invoke it.
1206         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
1207
1208 2008-09-28  Bruno Haible  <bruno@clisp.org>
1209
1210         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
1211         SIGPIPE.
1212
1213 2008-09-28  Bruno Haible  <bruno@clisp.org>
1214
1215         * tests/test-sigaction.c (handler, main): Disable the check whether
1216         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
1217         glibc systems with LinuxThreads.
1218
1219 2008-09-28  Bruno Haible  <bruno@clisp.org>
1220
1221         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
1222
1223         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
1224         with AIX xlc.
1225         * lib/fcntl.in.h (open): Likewise.
1226         Reported by Rainer Tammer <tammer@tammer.net>.
1227
1228 2008-09-28  Bruno Haible  <bruno@clisp.org>
1229
1230         * modules/posix_spawnp-tests: New file.
1231         * tests/test-posix_spawn.c: New file.
1232         * tests/test-posix_spawn.in.sh: New file.
1233
1234         New module 'posix_spawnp'.
1235         * modules/posix_spawnp: New file.
1236         * lib/spawnp.c: New file, from GNU libc with modifications.
1237         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
1238
1239         New module 'posix_spawn'.
1240         * modules/posix_spawn: New file.
1241         * lib/spawn.c: New file, from GNU libc with modifications.
1242         * doc/posix-functions/posix_spawn.texi: Mention the new module.
1243
1244         New module 'posix_spawnattr_destroy'.
1245         * modules/posix_spawnattr_destroy: New file.
1246         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
1247         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
1248         module.
1249
1250         New module 'posix_spawnattr_setsigmask'.
1251         * modules/posix_spawnattr_setsigmask: New file.
1252         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
1253         modifications.
1254         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
1255         new module.
1256
1257         New module 'posix_spawnattr_getsigmask'.
1258         * modules/posix_spawnattr_getsigmask: New file.
1259         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
1260         modifications.
1261         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
1262         new module.
1263
1264         New module 'posix_spawnattr_setsigdefault'.
1265         * modules/posix_spawnattr_setsigdefault: New file.
1266         * lib/spawnattr_setdefault.c: New file, from GNU libc with
1267         modifications.
1268         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
1269         new module.
1270
1271         New module 'posix_spawnattr_getsigdefault'.
1272         * modules/posix_spawnattr_getsigdefault: New file.
1273         * lib/spawnattr_getdefault.c: New file, from GNU libc with
1274         modifications.
1275         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
1276         new module.
1277
1278         New module 'posix_spawnattr_setschedpolicy'.
1279         * modules/posix_spawnattr_setschedpolicy: New file.
1280         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
1281         modifications.
1282         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
1283         new module.
1284
1285         New module 'posix_spawnattr_getschedpolicy'.
1286         * modules/posix_spawnattr_getschedpolicy: New file.
1287         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
1288         modifications.
1289         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
1290         new module.
1291
1292         New module 'posix_spawnattr_setschedparam'.
1293         * modules/posix_spawnattr_setschedparam: New file.
1294         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
1295         modifications.
1296         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
1297         new module.
1298
1299         New module 'posix_spawnattr_getschedparam'.
1300         * modules/posix_spawnattr_getschedparam: New file.
1301         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
1302         modifications.
1303         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
1304         new module.
1305
1306         New module 'posix_spawnattr_setpgroup'.
1307         * modules/posix_spawnattr_setpgroup: New file.
1308         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
1309         modifications.
1310         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
1311         module.
1312
1313         New module 'posix_spawnattr_getpgroup'.
1314         * modules/posix_spawnattr_getpgroup: New file.
1315         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
1316         modifications.
1317         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
1318         module.
1319
1320         New module 'posix_spawnattr_setflags'.
1321         * modules/posix_spawnattr_setflags: New file.
1322         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
1323         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
1324         module.
1325
1326         New module 'posix_spawnattr_getflags'.
1327         * modules/posix_spawnattr_getflags: New file.
1328         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
1329         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
1330         module.
1331
1332         New module 'posix_spawnattr_init'.
1333         * modules/posix_spawnattr_init: New file.
1334         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
1335         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
1336         module.
1337
1338         New module 'posix_spawn_file_actions_destroy'.
1339         * modules/posix_spawn_file_actions_destroy: New file.
1340         * lib/spawn_faction_destroy.c: New file, from GNU libc with
1341         modifications.
1342         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
1343         the new module.
1344
1345         New module 'posix_spawn_file_actions_addopen'.
1346         * modules/posix_spawn_file_actions_addopen: New file.
1347         * lib/spawn_faction_addopen.c: New file, from GNU libc with
1348         modifications.
1349         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
1350         the new module.
1351
1352         New module 'posix_spawn_file_actions_adddup2'.
1353         * modules/posix_spawn_file_actions_adddup2: New file.
1354         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
1355         modifications.
1356         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
1357         the new module.
1358
1359         New module 'posix_spawn_file_actions_addclose'.
1360         * modules/posix_spawn_file_actions_addclose: New file.
1361         * lib/spawn_faction_addclose.c: New file, from GNU libc with
1362         modifications.
1363         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
1364         the new module.
1365
1366         New module 'posix_spawn_file_actions_init'.
1367         * modules/posix_spawn_file_actions_init: New file.
1368         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
1369         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
1370         new module.
1371
1372         New module 'posix_spawn-internal'.
1373         * modules/posix_spawn-internal: New file.
1374         * lib/spawn_int.h: New file, from GNU libc with modifications.
1375         * lib/spawni.c: New file, from GNU libc with modifications.
1376         * m4/posix_spawn.m4: New file.
1377
1378         New module 'spawn'.
1379         * modules/spawn: New file.
1380         * lib/spawn.in.h: New file, from GNU libc with modifications.
1381         * m4/spawn_h.m4: New file.
1382         * doc/posix-headers/spawn.texi: Mention the new module.
1383
1384 2008-09-28  Bruno Haible  <bruno@clisp.org>
1385
1386         * modules/sched-tests: New file.
1387         * tests/test-sched.c: New file.
1388
1389         New module 'sched'.
1390         * modules/sched: New file.
1391         * lib/sched.in.h: New file.
1392         * m4/sched_h.m4: New file.
1393         * doc/posix-headers/sched.texi: Mention the new module.
1394
1395 2008-09-27  Eric Blake  <ebb9@byu.net>
1396
1397         Fix previous patch, and tweak references to $0.
1398         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
1399         (func_version, func_gnulib_dir): Don't call this program
1400         gnulib-tool.
1401         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
1402         with using $0 in function.
1403         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
1404         (func_fatal_error): Reuse the name the user invoked us with.
1405
1406 2008-09-27  Bruno Haible  <bruno@clisp.org>
1407
1408         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
1409         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
1410         (gl_ICONV_H): Not here.
1411         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
1412         instead of assigning ICONV_H directly.
1413
1414         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
1415         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
1416         WCHAR_H directly.
1417
1418 2008-09-27  Bruno Haible  <bruno@clisp.org>
1419
1420         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
1421         * modules/arpa_inet (Depends-on): Add link-warning.
1422         (Makefile.am): Insert the definition of GL_LINK-WARNING.
1423         * modules/unistd (Makefile.am): Likewise.
1424
1425 2008-09-26  Bruno Haible  <bruno@clisp.org>
1426
1427         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
1428         variables.
1429         (func_version): Essentially copied from gnulib-tool.
1430         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
1431         func_readlink): Copied from gnulib-tool.
1432
1433 2008-09-26  Bruno Haible  <bruno@clisp.org>
1434
1435         * gnulib-tool (func_version): Change directory to $gnulib_dir before
1436         invoking git-version-gen.
1437
1438 2008-09-26  Bruno Haible  <bruno@clisp.org>
1439
1440         * posix-modules: Update to directory names changed on 2008-01-19.
1441         Remove commas in output before splitting into words. No more need to
1442         avoid 'ftruncate' since 2007-02-19.
1443
1444 2008-09-26  Bruno Haible  <bruno@clisp.org>
1445
1446         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
1447
1448 2008-09-26  Bruno Haible  <bruno@clisp.org>
1449
1450         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
1451         * modules/fwriteerror (Depends-on): Add errno.
1452
1453 2008-09-26  Bruno Haible  <bruno@clisp.org>
1454
1455         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
1456         * tests/test-vc-list-files-cvs.sh: Likewise.
1457
1458 2008-09-26  Bruno Haible  <bruno@clisp.org>
1459
1460         * doc/posix-headers/sys_resource.texi: Reorder items.
1461
1462 2008-09-26  Jim Meyering  <meyering@redhat.com>
1463
1464         fts: tweak inode comparison function
1465         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
1466         inode numbers, as documented.
1467
1468         fts: sort dirent entries on inode number before traversing
1469         This avoids a quadratic, seek-related performance penalty when
1470         operating on a directory containing many entries (measurable at 10k;
1471         3.5 hours at 2 million entries with a cold cache) on certain types
1472         of file systems, including ext3 and ext4, but not tmpfs.
1473         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
1474         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
1475         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
1476         (fs_handles_readdir_ordered_dirents_efficiently): New function.
1477         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
1478         (fts_build): Set the stat.st_ino member from D_INO.
1479         If it is likely to be useful, sort dirent entries on inode number.
1480
1481         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
1482         and the struct statfs.f_type member.
1483         * modules/fts (Depends-on): Add d-ino.
1484
1485 2008-09-26  Bruno Haible  <bruno@clisp.org>
1486
1487         * modules/sigpipe-die (Depends-on): Add sigpipe.
1488
1489         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
1490         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
1491         and GNULIB_STDIO_H_SIGPIPE are set.
1492         * lib/stdio-write.c: New file.
1493         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
1494         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
1495         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
1496         REPLACE_STDIO_WRITE_FUNCS.
1497         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
1498         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
1499         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
1500         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
1501         * modules/stdio (Files): Add lib/stdio-write.c.
1502         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
1503         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
1504         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
1505         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
1506         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
1507         REPLACE_FPRINTF_POSIX.
1508         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
1509         REPLACE_PRINTF_POSIX.
1510         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
1511         REPLACE_VFPRINTF_POSIX.
1512         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
1513         REPLACE_VPRINTF_POSIX.
1514         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
1515         SIGPIPE issue.
1516         * doc/posix-functions/fputc.texi: Likewise.
1517         * doc/posix-functions/fputs.texi: Likewise.
1518         * doc/posix-functions/fwrite.texi: Likewise.
1519         * doc/posix-functions/printf.texi: Likewise.
1520         * doc/posix-functions/putc.texi: Likewise.
1521         * doc/posix-functions/putchar.texi: Likewise.
1522         * doc/posix-functions/puts.texi: Likewise.
1523         * doc/posix-functions/vfprintf.texi: Likewise.
1524         * doc/posix-functions/vprintf.texi: Likewise.
1525
1526         * modules/safe-write (Depends-on): Add write.
1527
1528         * modules/sigpipe-tests: New file.
1529         * tests/test-sigpipe.c: New file.
1530         * tests/test-sigpipe.sh: New file.
1531
1532         * modules/write: New file.
1533         * lib/unistd.in.h: Include <sys/types.h>.
1534         (write): New declaration.
1535         * lib/write.c: New file.
1536         * m4/write.m4: New file.
1537         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
1538         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
1539         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
1540         GNULIB_WRITE, REPLACE_WRITE.
1541         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
1542         and the SIGPIPE issue.
1543
1544         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
1545         (raise): New declaration.
1546         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
1547         (ext_signal): New function.
1548         (rpl_raise): New function.
1549         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
1550         GNULIB_SIGNAL_H_SIGPIPE.
1551         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
1552         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
1553
1554         * modules/sigpipe: New file.
1555         * m4/sigpipe.m4: New file.
1556
1557 2008-09-25  Derek Price  <derek@ximbiot.com>
1558             Bruno Haible  <bruno@clisp.org>
1559
1560         * gnulib-tool (func_import): Report all license incompatibilities, not
1561         just the first one.
1562
1563 2008-09-25  Bruno Haible  <bruno@clisp.org>
1564
1565         * gnulib-tool (func_import): When computing the edits, consider not
1566         only the Makefile.ams that exist but also those that will be generated.
1567
1568 2008-09-25  Simon Josefsson  <simon@josefsson.org>
1569
1570         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
1571         fixes gnulib-tool --test warning about duplicate dependency.
1572
1573 2008-09-25  Bruno Haible  <bruno@clisp.org>
1574
1575         * gnulib-tool: Don't ask the user to perform edits in the generated
1576         Makefile.ams.
1577         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
1578         apply to the Makefile.am being generated.
1579         (func_emit_tests_Makefile_am): Execute edits that apply to the
1580         Makefile.am being generated.
1581         (func_import): Setup list of Makefile.am edits before emitting the
1582         Makefile.ams, not at the end.
1583         (func_create_testdir): Update.
1584         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
1585
1586 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1587
1588         * gnulib-tool (func_import): Store the --tests-base option in the
1589         comment in gnulib-cache.m4.
1590
1591 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
1592
1593         * NEWS: Document increased portability that sys_select now provides.
1594
1595         * lib/sys_select.in.h: Install select wrapper.
1596         * lib/sys_socket.in.h: Use more descriptive name when there is no
1597         select wrapper.
1598         * lib/winsock-select.c: New.
1599         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
1600         Require gl_HEADER_SYS_SOCKET.
1601         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
1602         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
1603         * tests/test-sys_select.c: Add functional tests.
1604
1605 2008-09-24  Eric Blake  <ebb9@byu.net>
1606
1607         open, fopen: close fd leak in last patch
1608         * lib/open.c (rpl_open): Close fd before returning error.
1609         * lib/fopen.c (rpl_fopen): Close fd before returning error.
1610         * doc/posix-functions/open.texi (open): Document that Irix also
1611         has the bug.
1612         * doc/posix-functions/fopen.texi (fopen): Likewise.
1613         Reported by Paolo Bonzini.
1614
1615 2008-09-24  Bruno Haible  <bruno@clisp.org>
1616
1617         Ensure that a filename ending in a slash cannot be used to access a
1618         non-directory.
1619         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
1620         to check whether it's really a directory.
1621         * lib/fopen.c: Include fcntl.h, unistd.h.
1622         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
1623         and fdopen().
1624         * modules/fopen (Depends-on): Add unistd.
1625         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
1626         * tests/test-fopen.c (main): Likewise.
1627         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
1628         * doc/posix-functions/fopen.texi: Likewise.
1629         Reported by Eric Blake.
1630
1631 2008-09-23  Eric Blake  <ebb9@byu.net>
1632
1633         c-stack: avoid compiler optimizations when provoking overflow
1634         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
1635         recursion harder to optimize, to ensure a stack overflow occurs.
1636         * tests/test-c-stack.c (recurse): Likewise.
1637         Borrowed from libsigsegv.
1638
1639         c-stack: work around Irix sigaltstack bug
1640         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
1641         whether sigaltstack uses wrong end of stack_t (copied in part from
1642         libsigsegv).
1643         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
1644         Irix bug, without requiring an over-allocation.
1645         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
1646         bug.
1647
1648         fopen: document mingw bug on directories
1649         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
1650         not allowing a stream visiting a directory, even though reading
1651         from such a stream is not portable.
1652
1653 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
1654
1655         * lib/poll.c: Rewrite.
1656         * modules/poll: Depend on alloca.
1657
1658 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
1659
1660         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
1661         instead define prototypes for a full set of wrappers.  Ensure
1662         that Cygwin does not use the compatibility code, which is only
1663         for MinGW.
1664         * lib/winsock.c: New.
1665         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
1666         * modules/sys_socket: Add lib/winsock.c.
1667
1668         * modules/poll-tests: Add errno and perror.
1669         * tests/test-poll.c: Use ioctl, not ioctlsocket.
1670
1671 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
1672
1673         * tests/test-poll.c: Downgrade minimum needed Winsock version.
1674
1675 2008-09-23  Bruno Haible  <bruno@clisp.org>
1676
1677         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
1678         * doc/glibc-functions/*: Likewise.
1679
1680 2008-09-23  Simon Josefsson  <simon@josefsson.org>
1681
1682         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
1683         success.
1684
1685 2008-09-22  Eric Blake  <ebb9@byu.net>
1686             Bruno Haible  <bruno@clisp.org>
1687
1688         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
1689         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
1690         supply %A but mishandle pseudo-NaN.
1691         Reported by Simon Josefsson.
1692
1693 2008-09-21  Bruno Haible  <bruno@clisp.org>
1694
1695         * tests/test-lock.c (main): Tweak skip message.
1696         * tests/test-tls.c (main): Likewise.
1697
1698 2008-09-21  Bruno Haible  <bruno@clisp.org>
1699
1700         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
1701         whether 'struct sigaction' has sa_sigaction here...
1702         (gl_PREREQ_SIG_HANDLER_H): ... not here.
1703         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
1704
1705 2008-09-21  Bruno Haible  <bruno@clisp.org>
1706
1707         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
1708         section.
1709         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
1710         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
1711         the new section.
1712         (Support for obsolete systems lacking POSIX:2001): New section.
1713         (String handling <string.h>): Move strdup to the new section.
1714         Suggested by Simon Josefsson and Paolo Bonzini.
1715
1716 2008-09-21  Bruno Haible  <bruno@clisp.org>
1717
1718         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
1719         exponents in %e and %g results on 'long double'. Needed for mingw's
1720         improved *printf functions.
1721         * tests/test-vasprintf-posix.c (test_function): Likewise.
1722         * tests/test-snprintf-posix.h (test_function): Likewise.
1723         * tests/test-sprintf-posix.h (test_function): Likewise.
1724         Reported by Eric Blake.
1725
1726 2008-09-21  Bruno Haible  <bruno@clisp.org>
1727
1728         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
1729         * tests/test-sprintf-posix.h (test_function): Likewise.
1730
1731 2008-09-21  Bruno Haible  <bruno@clisp.org>
1732
1733         * modules/getpass (Depends-on): Add strdup-posix.
1734
1735         New module 'strdup-posix'.
1736         * modules/strdup-posix: New file.
1737         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
1738         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
1739         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
1740         REPLACE_STRDUP.
1741         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
1742         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
1743         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
1744         strdup-posix.
1745
1746         * modules/strdup (Depends-on): Remove malloc-posix.
1747
1748 2008-09-20  Bruno Haible  <bruno@clisp.org>
1749
1750         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
1751         Wildenhues.
1752
1753 2008-09-20  Bruno Haible  <bruno@clisp.org>
1754
1755         Ensure that wint_t gets defined on IRIX 5.3.
1756         * lib/wchar.in.h (wint_t): Define if not defined by the system.
1757         * lib/wctype.in.h (wint_t): Likewise.
1758         (__wctype_wint_t): Remove type.
1759         (isw*): Use wint_t instead of __wctype_wint_t.
1760         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
1761         * modules/wchar (Files): Add m4/wint_t.m4.
1762         (Makefile.am): Substitute HAVE_WINT_T.
1763         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
1764         * tests/test-wctype.c: Check that wint_t is defined.
1765         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
1766         * doc/posix-headers/wctype.texi: Likewise.
1767         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
1768
1769 2008-09-18  Bruno Haible  <bruno@clisp.org>
1770
1771         * gnulib-tool (func_exit): Update comment.
1772
1773 2008-09-18  Simon Josefsson  <simon@josefsson.org>
1774
1775         * modules/getaddrinfo (Depends-on): Remove strdup, this module
1776         assumes strdup exists and does not depend on strdup to return
1777         ENOMEM on out of memory conditions.
1778
1779 2008-09-18  Bruno Haible  <bruno@clisp.org>
1780
1781         * lib/vasnprintf.c (VASNPRINTF): When printing Â±0.0L in
1782         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
1783         digits for the exponent.
1784
1785 2008-09-18  Jim Meyering  <meyering@redhat.com>
1786             Bruno Haible  <bruno@clisp.org>
1787
1788         * lib/vasnprintf.c (decimal_point_char): Define also if
1789         NEED_PRINTF_INFINITE_LONG_DOUBLE.
1790
1791 2008-09-16  Bruno Haible  <bruno@clisp.org>
1792         and Eric Blake  <ebb9@byu.net>
1793
1794         vasnprintf: support Irix 5.3
1795         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
1796         that mishandle long double infinity.
1797         Reported by Tom G. Christensen.
1798
1799 2008-09-16  Bruno Haible  <bruno@clisp.org>
1800
1801         * doc/glibc-functions/scandir.texi: Mention the function is missing on
1802         Solaris 9.
1803         * doc/glibc-functions/alphasort.texi: Likewise.
1804         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
1805
1806 2008-09-16  Jim Meyering  <meyering@redhat.com>
1807
1808         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
1809         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
1810         a umask modification leak out of a subshell.  Otherwise, the
1811         opensolaris /bin/sh would be accepted and thus cause unwarranted
1812         failures in the coreutils test suite.
1813
1814 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
1815
1816         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
1817         to succeed.
1818
1819 2008-09-16  Jim Meyering  <meyering@redhat.com>
1820
1821         avoid spurious test failure when library is built without ACL support
1822         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
1823         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
1824         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
1825         * tests/test-copy-acl.sh: Likewise.
1826
1827 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1828
1829         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
1830         based on character occurrence counts.
1831
1832 2008-09-15  Eric Blake  <ebb9@byu.net>
1833
1834         tests: avoid some compiler warnings
1835         * tests/test-memchr.c (main): Pass NULL indirectly.
1836         * tests/test-closein.c (main): Avoid unused variable.
1837
1838 2008-09-15  Bruno Haible  <bruno@clisp.org>
1839
1840         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
1841         are missing on OpenBSD 4.0 individually.
1842         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
1843
1844 2008-09-15  Bruno Haible  <bruno@clisp.org>
1845
1846         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
1847         * doc/posix-functions/strerror.texi: Mention also Cygwin.
1848         * doc/posix-functions/perror.texi: Likewise.
1849         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
1850         is missing.
1851         Reported by Eric Blake.
1852
1853         * lib/errno.in.h: Use replacement values >= 2000.
1854         Reported by Eric Blake.
1855
1856 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1857
1858         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
1859         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
1860         limit.
1861         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
1862         compareseq was aborted.
1863
1864 2008-09-14  Bruno Haible  <bruno@clisp.org>
1865
1866         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
1867         yvec_edit_count.
1868         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
1869         (fstrcmp_bounded): Simplify result computation accordingly.
1870
1871 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1872
1873         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
1874         (fstrcmp): Define in terms of fstrcmp_bounded.
1875         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
1876         lower_bound argument.
1877         Return quickly if the result is certainly < lower_bound.
1878         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
1879
1880 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1881
1882         * lib/diffseq.h (EARLY_ABORT): New macro.
1883         (compareseq): Change return type to bool. Return true when EARLY_ABORT
1884         evaluates to true.
1885
1886 2008-09-14  Bruno Haible  <bruno@clisp.org>
1887
1888         * modules/perror-tests: New file.
1889         * tests/test-perror.sh: New file.
1890         * tests/test-perror.c: New file.
1891
1892         New module 'perror'.
1893         * lib/stdio.in.h (perror): New declaration.
1894         * lib/perror.c: New file.
1895         * m4/perror.m4: New file.
1896         * modules/perror: New file.
1897         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
1898         * doc/posix-functions/perror.texi: Mention the perror module.
1899         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
1900         REPLACE_PERROR.
1901         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
1902         REPLACE_PERROR.
1903
1904 2008-09-14  Bruno Haible  <bruno@clisp.org>
1905
1906         * modules/stdio (Makefile.am): Reorder to match the order in
1907         lib/stdio.in.h.
1908         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
1909
1910 2008-09-13  Bruno Haible  <bruno@clisp.org>
1911
1912         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
1913
1914 2008-09-13  Bruno Haible  <bruno@clisp.org>
1915
1916         Extend strerror to cover the added errno values.
1917         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
1918         (rpl_strerror): Provide error messages for the added errno values and
1919         for the WSA* values.
1920         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
1921         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
1922         strerror.
1923         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
1924         * modules/strerror (Depends-on): Add errno.
1925         * doc/posix-functions/strerror.texi: Document the change.
1926         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
1927         and EOVERFLOW.
1928
1929 2008-09-13  Bruno Haible  <bruno@clisp.org>
1930
1931         * modules/EOVERFLOW: Remove file.
1932         * m4/eoverflow.m4: Remove file.
1933         * modules/EOVERFLOW-tests: Remove file.
1934         * tests/test-EOVERFLOW.c: Remove file.
1935         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
1936         * modules/ftell (Depends-on): Likewise.
1937         * modules/getdelim (Depends-on): Likewise.
1938         * modules/getugroups (Depends-on): Likewise.
1939         * modules/poll (Depends-on): Likewise.
1940         * modules/snprintf (Depends-on): Likewise.
1941         * modules/sprintf-posix (Depends-on): Likewise.
1942         * modules/vasnprintf (Depends-on): Likewise.
1943         * modules/vasprintf (Depends-on): Likewise.
1944         * modules/vfprintf-posix (Depends-on): Likewise.
1945         * modules/vsnprintf (Depends-on): Likewise.
1946         * modules/vsprintf-posix (Depends-on): Likewise.
1947         * modules/xvasprintf (Depends-on): Likewise.
1948         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
1949         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
1950         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
1951         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
1952         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
1953         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
1954         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
1955         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
1956         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
1957         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
1958         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
1959         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
1960         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
1961         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
1962         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
1963         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
1964         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
1965         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
1966         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
1967         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
1968         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
1969         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
1970         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
1971         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
1972         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
1973         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
1974         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
1975         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
1976         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
1977         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
1978         * MODULES.html.sh: Remove EOVERFLOW.
1979         * NEWS: Mention the change.
1980
1981 2008-09-13  Bruno Haible  <bruno@clisp.org>
1982
1983         * modules/errno-tests: New file.
1984         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
1985
1986         * lib/errno.in.h: New file.
1987         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
1988         * modules/errno: New file.
1989         * doc/posix-headers/errno.texi: Update documentation.
1990         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
1991
1992 2008-09-13  Bruno Haible  <bruno@clisp.org>
1993
1994         * tests/test-poll.c: Use #if for native Windows, rather than testing
1995         __MSVCRT__.
1996
1997 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1998             Bruno Haible  <bruno@clisp.org>
1999
2000         * lib/glob.c: Don't include <pwd.h> on native Windows.
2001         (WINDOWS32): New macro.
2002         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
2003
2004 2008-09-13  Bruno Haible  <bruno@clisp.org>
2005
2006         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
2007         (ETIMEDOUT): Remove macro.
2008         (glthread_cond_timedwait_multithreaded): New declaration.
2009         (glthread_cond_timedwait): Use it.
2010         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
2011         (glthread_cond_timedwait_multithreaded): New function.
2012
2013 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
2014
2015         * modules/poll-tests: Do not check for io.h.
2016         * tests/test-poll.c: Check for __MSVCRT__ instead.
2017
2018 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
2019
2020         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
2021         * modules/poll-tests: Add inet_pton, stdbool, sockets.
2022         * tests/test-poll.c: Use them.  Use _pipe on Windows.
2023
2024 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
2025
2026         * modules/poll-tests: New.
2027         * tests/test-poll.c: New.
2028
2029 2008-09-12  Eric Blake  <ebb9@byu.net>
2030
2031         frexp: test for NetBSD failure on -0.0
2032         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
2033         not all, bugs from NetBSD 3.0 have been fixed.
2034         * doc/posix-functions/frexp.texi (frexp): Document bug.
2035         Reported by Thomas Klausner.
2036
2037         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
2038         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
2039         literal -0.0.
2040         Reported by Jonathan C. Patschke <jp@centtech.com>.
2041
2042 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2043
2044         * lib/glthread/cond.h: Use dummy implementation also if
2045         USE_WIN32_THREADS.
2046
2047 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2048
2049         * modules/fnmatch-posix (License): Change to LGPLv2+.
2050         * modules/fnmatch-gnu (License): Likewise.
2051
2052 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2053
2054         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
2055
2056 2008-09-11  Jim Meyering  <meyering@redhat.com>
2057
2058         * users.txt: Add gtk-vnc.
2059
2060 2008-09-08  Simon Josefsson  <simon@josefsson.org>
2061
2062         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
2063         rotate amounts.
2064
2065         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
2066         required for 16-bit and 8-bit rotates.
2067         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
2068         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
2069         UINT8_MAX instead of hard-coded constants.
2070         Suggested by Paul Eggert.
2071
2072 2008-09-07  Bruno Haible  <bruno@clisp.org>
2073
2074         * tests/test-striconveh.c (main): Check behaviour when converting from
2075         UTF-7.
2076
2077         Make striconveh work better with stateful encodings.
2078         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
2079         that iconv does not increment the inptr when returning -1/EINVAL.
2080
2081 2008-09-07  Bruno Haible  <bruno@clisp.org>
2082
2083         * build-aux/config.rpath: Update according to libtool-2.2.6.
2084         * build-aux/config.libpath: Likewise.
2085
2086 2008-09-06  Bruno Haible  <bruno@clisp.org>
2087
2088         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
2089         * lib/freadptr.c (freadptr): Likewise.
2090         * lib/freadseek.c (freadptrinc): Likewise.
2091         Reported by Simon Josefsson.
2092
2093 2008-09-06  Bruno Haible  <bruno@clisp.org>
2094
2095         * modules/freadptr (License): Change to LGPLv2+.
2096         * modules/freadseek (License): Likewise.
2097         Suggested by Eric Blake.
2098
2099         * modules/memchr2 (License): Change to LGPLv2+.
2100         Approved by Eric Blake.
2101
2102 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2103             Bruno Haible  <bruno@clisp.org>
2104
2105         Make gnulib-tool work with native 'sed' on AIX.
2106         * gnulib-tool (sed_noop): New variable.
2107         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
2108         func_add_or_update, func_create_testdir): Use it to initialize sed
2109         script variables.
2110         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
2111
2112 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
2113             Bruno Haible  <bruno@clisp.org>
2114
2115         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
2116         also works after #include directives.
2117
2118 2008-09-04  OndÅ™ej Vašík  <ovasik@redhat.com>
2119
2120         getdate.y: reject an out-of-range timezone value
2121         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
2122         the range [-24...+24].  When specified with only one or two digits,
2123         * tests/test-getdate.c: Tests for the fix.
2124         * doc/getdate.texi: Document this change.
2125
2126 2008-09-03  Bruno Haible  <bruno@clisp.org>
2127
2128         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
2129
2130 2008-09-02  Simon Josefsson  <simon@josefsson.org>
2131
2132         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
2133         <bruce.korb@gmail.com> with ideas from Ben Pfaff
2134         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
2135         Blake <ebb9@byu.net>.
2136
2137         * tests/test-bitrotate.c: Add more test vectors.
2138
2139 2008-09-02  Eric Blake  <ebb9@byu.net>
2140
2141         vasnprintf-posix: handle large precision via %.*d
2142         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
2143         when handling it ourselves.
2144         * tests/test-vasnprintf-posix.c (test_function): Add test.
2145         * tests/test-snprintf-posix.h (test_function): Likewise.
2146         * tests/test-sprintf-posix.h (test_function): Likewise.
2147         * tests/test-vasprintf-posix.c (test_function): Likewise.
2148         Reported by Alain Guibert.
2149
2150 2008-09-01  Eric Blake  <ebb9@byu.net>
2151
2152         c-stack: make configure-time check more robust
2153         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
2154         successful sigaction call.
2155         Reported by Tom G. Christensen.
2156
2157 2008-09-01  Bruno Haible  <bruno@clisp.org>
2158
2159         New module 'findprog-lgpl'.
2160         * modules/findprog-lgpl: New file.
2161         * lib/findprog-lgpl.c: New file.
2162         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
2163         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
2164         to decide whether to use strdup or xstrdup, concatenated_filename or
2165         xconcatenated_filename.
2166
2167 2008-09-01  Bruno Haible  <bruno@clisp.org>
2168
2169         Split module 'concat-filename' into 'concat-filename' (LGPL) and
2170         'xconcat-filename' (GPL).
2171         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
2172         (License): Change to LGPLv2+.
2173         * modules/xconcat-filename: New file.
2174         * lib/concat-filename.h (concatenated_filename): Change specification.
2175         (xconcatenated_filename): New declaration.
2176         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
2177         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
2178         memory situations.
2179         * lib/xconcat-filename.c: New file.
2180         * NEWS: Mention the change.
2181         * lib/findprog.c: Include concat-filename.h, not filename.h.
2182         (find_in_path): Use xconcatenated_filename instead of
2183         concatenated_filename.
2184         * lib/javacomp.c: Include concat-filename.h, not filename.h.
2185         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
2186         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
2187         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
2188         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
2189         instead of concatenated_filename.
2190         * lib/javaexec.c: Include concat-filename.h, not filename.h.
2191         (execute_java_class): Use xconcatenated_filename instead of
2192         concatenated_filename.
2193         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
2194         * modules/javacomp (Depends-on): Likewise.
2195         * modules/javaexec (Depends-on): Likewise.
2196
2197 2008-09-01  Bruno Haible  <bruno@clisp.org>
2198
2199         Split module 'filename' into 'filename' and 'concat-filename'.
2200         * modules/filename: Keep only lib/filename.h.
2201         (License): Change to LGPLv2+.
2202         * modules/concat-filename: New file, extracted from modules/filename.
2203         * lib/filename.h (concatenated_filename): Remove declaration.
2204         * lib/concat-filename.h: New file, extracted from lib/filename.h.
2205         * lib/concat-filename.c: Include concat-filename.h.
2206         * NEWS: Mention the change.
2207
2208 2008-09-01  Simon Josefsson  <simon@josefsson.org>
2209
2210         * lib/bitrotate.h (rotl8, rotr8): Add.
2211
2212         * modules/bitrotate (configure.ac): Need
2213         AC_REQUIRE([AC_C_INLINE]).
2214         (Description): Mention stdint.h.  Reported by Bruno Haible
2215         <bruno@clisp.org>.
2216
2217         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
2218         Paolo Bonzini <bonzini@gnu.org>.
2219
2220 2008-08-31  Bruno Haible  <bruno@clisp.org>
2221
2222         Assume Solaris specific bi-arch conventions on Solaris systems.
2223         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
2224         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
2225         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
2226         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
2227         like acl_libdirstem.
2228         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
2229         acl_libdirstem.
2230         * NEWS: Mention the change.
2231         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
2232
2233 2008-08-31  Jim Meyering  <meyering@redhat.com>
2234
2235         * lib/strftime.h: Add comments describing the two added arguments.
2236
2237         remove duplicate #include directives
2238         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
2239         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
2240
2241 2008-08-31  Bruno Haible  <bruno@clisp.org>
2242
2243         New module 'sigpipe-die'.
2244         * modules/sigpipe-die: New file.
2245         * lib/sigpipe-die.h: New file.
2246         * lib/sigpipe-die.c: New file.
2247         * MODULES.html.sh (Signal handling): Add sigpipe-die.
2248
2249 2008-08-31  Bruno Haible  <bruno@clisp.org>
2250
2251         Don't override previously installed signal handlers.
2252         * lib/fatal-signal.c (saved_sigactions): New variable.
2253         (uninstall_handlers): Reset the signal to the saved handler, not
2254         to SIG_DFL (except when ignored).
2255         (install_handlers): Save the previous handlers.
2256
2257 2008-08-30  Bruno Haible  <bruno@clisp.org>
2258
2259         * gnulib-tool (func_reset_sigpipe): New function.
2260         (func_get_automake_snippet, func_modules_transitive_closure,
2261         func_import): Invoke it before a join command that reads from stdin,
2262         to avoid "echo: write error: Broken pipe" error messages on stderr.
2263         Reported by Sam Steingold <sds@gnu.org>.
2264
2265 2008-08-30  Bruno Haible  <bruno@clisp.org>
2266
2267         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
2268         Code copied from m4/open.m4.
2269         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
2270         access and the filename ends in a slash. Code copied from lib/open.c.
2271         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
2272         * tests/test-fopen.c (main): Check against bug with trailing slash.
2273
2274 2008-08-29  Bruno Haible  <bruno@clisp.org>
2275
2276         Avoid some "gcc -pedantic" warnings.
2277         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
2278         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
2279         * lib/dirent.in.h: Likewise.
2280         * lib/fcntl.in.h: Likewise.
2281         * lib/float.in.h: Likewise.
2282         * lib/iconv.in.h: Likewise.
2283         * lib/inttypes.in.h: Likewise.
2284         * lib/locale.in.h: Likewise.
2285         * lib/math.in.h: Likewise.
2286         * lib/netinet_in.in.h: Likewise.
2287         * lib/search.in.h: Likewise.
2288         * lib/signal.in.h: Likewise.
2289         * lib/stdarg.in.h: Likewise.
2290         * lib/stdint.in.h: Likewise.
2291         * lib/stdio.in.h: Likewise.
2292         * lib/stdlib.in.h: Likewise.
2293         * lib/string.in.h: Likewise.
2294         * lib/strings.in.h: Likewise.
2295         * lib/sys_select.in.h: Likewise.
2296         * lib/sys_socket.in.h: Likewise.
2297         * lib/sys_stat.in.h: Likewise.
2298         * lib/sys_time.in.h: Likewise.
2299         * lib/sysexits.in.h: Likewise.
2300         * lib/time.in.h: Likewise.
2301         * lib/unistd.in.h: Likewise.
2302         * lib/wchar.in.h: Likewise.
2303         * lib/wctype.in.h: Likewise.
2304         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
2305         * modules/fchdir (Makefile.am): Likewise.
2306         * modules/fcntl (Makefile.am): Likewise.
2307         * modules/float (Makefile.am): Likewise.
2308         * modules/iconv_open (Makefile.am): Likewise.
2309         * modules/inttypes (Makefile.am): Likewise.
2310         * modules/locale (Makefile.am): Likewise.
2311         * modules/math (Makefile.am): Likewise.
2312         * modules/netinet_in (Makefile.am): Likewise.
2313         * modules/search (Makefile.am): Likewise.
2314         * modules/signal (Makefile.am): Likewise.
2315         * modules/stdarg (Makefile.am): Likewise.
2316         * modules/stdint (Makefile.am): Likewise.
2317         * modules/stdio (Makefile.am): Likewise.
2318         * modules/stdlib (Makefile.am): Likewise.
2319         * modules/string (Makefile.am): Likewise.
2320         * modules/strings (Makefile.am): Likewise.
2321         * modules/sys_select (Makefile.am): Likewise.
2322         * modules/sys_socket (Makefile.am): Likewise.
2323         * modules/sys_stat (Makefile.am): Likewise.
2324         * modules/sys_time (Makefile.am): Likewise.
2325         * modules/sysexits (Makefile.am): Likewise.
2326         * modules/time (Makefile.am): Likewise.
2327         * modules/unistd (Makefile.am): Likewise.
2328         * modules/wchar (Makefile.am): Likewise.
2329         * modules/wctype (Makefile.am): Likewise.
2330         Reported by Reuben Thomas <rrt@sc3d.org>.
2331
2332 2008-08-29  Bruno Haible  <bruno@clisp.org>
2333
2334         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
2335         any more.
2336
2337 2008-08-29  Simon Josefsson  <simon@josefsson.org>
2338
2339         * MODULES.html.sh (Misc): Add bitrotate.
2340
2341         * modules/bitrotate: New file.
2342
2343         * lib/bitrotate.h: New file.
2344
2345         * modules/bitrotate-tests: New file.
2346
2347         * tests/test-bitrotate.c: New file.
2348
2349         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
2350         on the bitrotate module.
2351
2352         * lib/arctwo.c: Use new bitrotate module.
2353
2354 2008-08-29  Jim Meyering  <meyering@redhat.com>
2355
2356         bootstrap: merge changes from coreutils
2357         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
2358         of copied files.  Remove a kludge, now that this is fixed.
2359         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
2360         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
2361         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
2362
2363 2008-08-29  Bruno Haible  <bruno@clisp.org>
2364
2365         * MODULES.html.sh: Remove --cvs-urls option.
2366
2367 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
2368
2369         maint.mk: adjust to file name change
2370         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
2371
2372 2008-08-28  Jim Meyering  <meyering@redhat.com>
2373
2374         * modules/getndelim2 (License): Relicense to LGPLv2+.
2375         Approved by Richard Stallman for the version of 1995, and by
2376         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
2377
2378 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
2379
2380         * lib/getdelim.c (flockfile, funlockfile): Make all of them
2381         dummy if one is not available.  Do not touch them if
2382         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
2383         (getc_maybe_unlocked): New.
2384         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
2385
2386 2008-08-26  Eric Blake  <ebb9@byu.net>
2387
2388         doc/INSTALL: resync from autoconf
2389         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
2390         (INSTALL_PRELUDE): Delete; this is done more efficiently by
2391         moving...
2392         * install.texi [!autoconf]: ...here.  Resync from autoconf.
2393         * INSTALL: Regenerate.
2394         * INSTALL.ISO: New file.
2395         * INSTALL.UTF-8: Likewise.
2396
2397 2008-08-26  Jim Meyering  <meyering@redhat.com>
2398
2399         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
2400         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
2401         these definitions conditional, so that they may be overridden, too.
2402
2403 2008-08-26  Bruno Haible  <bruno@clisp.org>
2404
2405         Generate INSTALL file variants with prettier quotes.
2406         * doc/Makefile (INSTALL_PRELUDE): New macro.
2407         (INSTALL): Use it.
2408         (INSTALL.ISO, INSTALL.UTF-8): New rules.
2409
2410 2008-08-26  Bruno Haible  <bruno@clisp.org>
2411
2412         Run makeinfo in an English locale.
2413         * doc/Makefile (MAKEINFO): New variable.
2414
2415 2008-08-26  Bruno Haible  <bruno@clisp.org>
2416
2417         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
2418         Suggested by Eric Blake.
2419
2420 2008-08-25  Bruno Haible  <bruno@clisp.org>
2421
2422         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
2423
2424 2008-08-25  Eric Blake  <ebb9@byu.net>
2425
2426         c-stack: test that stack overflow can be caught
2427         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
2428         that platform allows handling stack overflow; at least OS/2 EMX
2429         has sigaltstack, but crashes before transferring control to
2430         handler on stack overflow.
2431         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
2432         check for HAVE_STACK_OVERFLOW_HANDLING.
2433         Reported by Elbert Pol.
2434
2435 2008-08-25  Bruno Haible  <bruno@clisp.org>
2436
2437         * doc/posix-functions/strftime.texi: Fix description of strftime
2438         module.
2439
2440 2008-08-24  Bruno Haible  <bruno@clisp.org>
2441
2442         * tests/uniwidth/test-uc_width2.c: New file.
2443         * tests/uniwidth/test-uc_width2.sh: New file.
2444         * modules/uniwidth/width-tests (Files): Add the new files.
2445         (TESTS): Add uniwidth/test-uc_width2.sh.
2446         (TESTS_ENVIRONMENT): New variable.
2447         (check_PROGRAMS): Add test-uc_width2.
2448         (test_uc_width2_SOURCES): New variable.
2449
2450         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
2451         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
2452         not 0x00AB.
2453         Reported by Alexander V. Lukyanov <lav@netis.ru>.
2454
2455 2008-08-22  Eric Blake  <ebb9@byu.net>
2456
2457         test-lock, test-tls: mention why a test is skipped
2458         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
2459         skipped.
2460         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
2461
2462         count-one-bits: relax license
2463         * modules/count-one-bits (License): Relicense to LGPLv2+.
2464         Suggested by Ludovic Courtès, approved by Ben Pfaff.
2465
2466 2008-08-22  Andreas Schwab  <schwab@suse.de>
2467
2468         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
2469         Remove spurious space in assignment.
2470
2471 2008-08-21  Simon Josefsson  <simon@josefsson.org>
2472
2473         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
2474         Paul Eggert <eggert@CS.UCLA.EDU>.
2475
2476 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
2477
2478         * modules/gettext: Add m4/threadlib.m4.
2479
2480 2008-08-19  Eric Blake  <ebb9@byu.net>
2481
2482         test-c-stack: fix compilation failure on FreeBSD 5.0
2483         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
2484         headers before <sys/resource.h>.
2485         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
2486         the bug.
2487         Reported by Nelson H. F. Beebe.
2488
2489         strverscmp: migrate from "strverscmp.h" to <string.h>
2490         * modules/string (Makefile.am): Add new hooks.
2491         * modules/strverscmp (Files): Remove strverscmp.h.
2492         (Depends-on): Add string.
2493         (configure.ac): Add indicator.
2494         (Include): Mention new header.
2495         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
2496         defaults.
2497         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
2498         results.
2499         * lib/strverscmp.h: Delete.
2500         * lib/string.in.h (strverscmp): Provide declaration, when needed.
2501         * tests/test-strverscmp.c (includes): Adjust client.
2502         * lib/check-version.c (includes): Likewise.
2503         * NEWS: Document the change.
2504
2505         strverscmp: add unit test
2506         * modules/strverscmp-tests: New file.
2507         * tests/test-strverscmp.c: Likewise.
2508
2509 2008-08-19  Simon Josefsson  <simon@josefsson.org>
2510
2511         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
2512         regarding Windows crypto stuff, from Mono.
2513
2514 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
2515
2516         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
2517         if present, for intel RND.  Return error on failures.
2518
2519 2008-08-18  Ben Pfaff  <blp@gnu.org>
2520
2521         gitlog-to-changelog: give better diagnostic for failed pipe-open
2522         * build-aux/gitlog-to-changelog: Improve error message: suggest
2523         that the version of Git may be too old.
2524
2525 2008-08-18  Simon Josefsson  <simon@josefsson.org>
2526
2527         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
2528         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
2529
2530 2008-08-18  Bruno Haible  <bruno@clisp.org>
2531
2532         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
2533         pthread_in_use().
2534
2535 2008-08-18  Bruno Haible  <bruno@clisp.org>
2536
2537         * lib/glthread/threadlib.c: Include <pthread.h>.
2538
2539 2008-08-18  Bruno Haible  <bruno@clisp.org>
2540
2541         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
2542         glthread_recursive_lock_* macros.
2543         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
2544         Fix syntax error.
2545
2546 2008-08-18  Bruno Haible  <bruno@clisp.org>
2547
2548         * lib/glthread/thread.c: Avoid forcing a context switch right after
2549         thread creation.
2550
2551 2008-08-17  Bruno Haible  <bruno@clisp.org>
2552
2553         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
2554         * lib/glthread/thread.h: Provide Win32 specific implementation.
2555         * modules/thread (Files): Add lib/glthread/thread.c.
2556         (Depends-on): Add lock.
2557         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
2558
2559 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2560
2561         New module 'yield'.
2562         * modules/yield: New file.
2563         * lib/glthread/yield.h: New file.
2564         * m4/yield.m4: New file.
2565         * MODULES.html.sh (Multithreading): Add yield.
2566
2567 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2568
2569         New module 'thread'.
2570         * modules/thread: New file.
2571         * lib/glthread/thread.h: New file.
2572         * m4/thread.m4: New file.
2573         * MODULES.html.sh (Multithreading): Add thread.
2574
2575 2008-08-17  Bruno Haible  <bruno@clisp.org>
2576
2577         * lib/glthread/lock.h: Include <stdlib.h> always.
2578         * lib/glthread/tls.h: Likewise.
2579         * lib/glthread/cond.h: Likewise.
2580
2581 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2582
2583         New module 'cond'.
2584         * modules/cond: New file.
2585         * lib/glthread/cond.h: New file.
2586         * lib/glthread/cond.c: New file.
2587         * m4/cond.m4: New file.
2588         * MODULES.html.sh (Multithreading): Add cond.
2589
2590 2008-08-16  Eric Blake  <ebb9@byu.net>
2591
2592         c-stack: fix regression on Irix 5.3 from 2008-06-21
2593         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
2594         sa_sigaction...
2595         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
2596         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
2597         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
2598         * modules/signal (Makefile.am): Use the value.
2599         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
2600         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
2601         * doc/posix-headers/signal.texi (signal.h): Document this
2602         portability issue.
2603         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
2604         Reported by Tom G. Christensen.
2605
2606 2008-08-17  Bruno Haible  <bruno@clisp.org>
2607
2608         New module 'threadlib'.
2609         * modules/threadlib: New file.
2610         * lib/glthread/threadlib.c: New file, extracted from
2611         lib/glthread/lock.c.
2612         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
2613         functions.
2614         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
2615         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
2616         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
2617         macros.
2618         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
2619         (gl_DISABLE_THREADS): Remove macro.
2620         * modules/lock (Files): Remove build-aux/config.rpath.
2621         (Depends-on): Remove havelib. Add threadlib.
2622         (configure.ac-early): Remove section.
2623         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
2624         * modules/tls (Depends-on): Remove lock. Add threadlib.
2625         (Link): New section, copied from threadlib.
2626         * MODULES.html.sh (Multithreading): Add threadlib.
2627
2628 2008-08-14  Bruno Haible  <bruno@clisp.org>
2629
2630         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
2631         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
2632         glthread_rwlock_unlock, glthread_rwlock_destroy,
2633         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
2634         glthread_recursive_lock_destroy): Define as macros always.
2635         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
2636         glthread_lock_lock.
2637         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
2638         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
2639         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
2640         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
2641         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
2642         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
2643         (glthread_recursive_lock_lock_func): Renamed from
2644         glthread_recursive_lock_lock.
2645         (glthread_recursive_lock_unlock_func): Renamed from
2646         glthread_recursive_lock_unlock.
2647         (glthread_recursive_lock_destroy_func): Renamed from
2648         glthread_recursive_lock_destroy.
2649
2650 2008-08-14  Bruno Haible  <bruno@clisp.org>
2651
2652         * lib/glthread/lock.h: Renamed from lib/lock.h.
2653         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
2654         * lib/glthread/tls.h: Renamed from lib/tls.h.
2655         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
2656         * lib/fstrcmp.c: Update includes.
2657         * lib/strsignal.c: Update includes.
2658         * modules/lock (Files, Makefile.am): Update.
2659         (Include): Change to "glthread/lock.h".
2660         * modules/tls (Files, Makefile.am): Update.
2661         (Include): Change to "glthread/tls.h".
2662         * tests/test-lock.c: Update includes.
2663         * tests/test-tls.c: Update includes.
2664         * NEWS: Mention the renamed header files.
2665
2666 2008-08-11  Jim Meyering  <meyering@redhat.com>
2667
2668         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
2669
2670 2008-08-11  Eric Blake  <ebb9@byu.net>
2671
2672         test-c-stack: avoid C99-ism
2673         * tests/test-c-stack.c (main): Fix whitespace, move declaration
2674         before statement.
2675         Reported by Alain Guibert.
2676
2677 2008-08-10  Jim Meyering  <meyering@redhat.com>
2678
2679         ensure that return value of uinttostr et al are not ignored
2680         * lib/inttostr.h (__GNUC_PREREQ): Define.
2681         (__attribute_warn_unused_result__): Define.
2682         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
2683
2684 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
2685
2686         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
2687         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
2688
2689 2008-08-07  Jim Meyering  <meyering@redhat.com>
2690
2691         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
2692
2693         * modules/mkstemp (License): Relicense under LGPLv2+.
2694         * modules/tempname (License): Likewise.
2695
2696 2008-08-06  Bruno Haible  <bruno@clisp.org>
2697
2698         * lib/poll.c (poll): Further micro-optimization.
2699
2700 2008-08-06  Jim Meyering  <meyering@redhat.com>
2701
2702         inet_pton.c: use locale-independent tolower
2703         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
2704         (inet_pton6): Use c_tolower rather than tolower.
2705         * modules/inet_pton (Depends-on): Add c-ctype.
2706
2707 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
2708
2709         * lib/poll.c (poll): Avoid division when timeout is 0, cache
2710         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
2711
2712 2008-08-06  Jim Meyering  <meyering@redhat.com>
2713
2714         * modules/inet_pton (License): Relicense under LGPLv2+.
2715
2716 2008-08-03  Bruno Haible  <bruno@clisp.org>
2717
2718         Additional non-aborting API for lock and tls.
2719         * lib/lock.h: Include <errno.h>.
2720         (glthread_lock_init): New macro/function.
2721         (gl_lock_init): Define as wrapper around glthread_lock_init.
2722         (glthread_lock_lock): New macro/function.
2723         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
2724         (glthread_lock_unlock): New macro/function.
2725         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
2726         (glthread_lock_destroy): New macro/function.
2727         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
2728         (glthread_rwlock_init): New macro/function.
2729         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
2730         (glthread_rwlock_rdlock): New macro/function.
2731         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
2732         (glthread_rwlock_wrlock): New macro/function.
2733         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
2734         (glthread_rwlock_unlock): New macro/function.
2735         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
2736         (glthread_rwlock_destroy): New macro/function.
2737         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
2738         (glthread_recursive_lock_init): New macro/function.
2739         (gl_recursive_lock_init): Define as wrapper around
2740         glthread_recursive_lock_init.
2741         (glthread_recursive_lock_lock): New macro/function.
2742         (gl_recursive_lock_lock): Define as wrapper around
2743         glthread_recursive_lock_lock.
2744         (glthread_recursive_lock_unlock): New macro/function.
2745         (gl_recursive_lock_unlock): Define as wrapper around
2746         glthread_recursive_lock_unlock.
2747         (glthread_recursive_lock_destroy): New macro/function.
2748         (gl_recursive_lock_destroy): Define as wrapper around
2749         glthread_recursive_lock_destroy.
2750         (glthread_once): New macro/function.
2751         (gl_once): Define as wrapper around glthread_once.
2752         Update function declarations.
2753         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
2754         glthread_rwlock_init. Return error code.
2755         (glthread_rwlock_rdlock_multithreaded): Renamed from
2756         glthread_rwlock_rdlock. Return error code.
2757         (glthread_rwlock_wrlock_multithreaded): Renamed from
2758         glthread_rwlock_wrlock. Return error code.
2759         (glthread_rwlock_unlock_multithreaded): Renamed from
2760         glthread_rwlock_unlock. Return error code.
2761         (glthread_rwlock_destroy_multithreaded): Renamed from
2762         glthread_rwlock_destroy. Return error code.
2763         (glthread_recursive_lock_init_multithreaded): Renamed from
2764         glthread_recursive_lock_init. Return error code.
2765         (glthread_recursive_lock_lock_multithreaded): Renamed from
2766         glthread_recursive_lock_lock. Return error code.
2767         (glthread_recursive_lock_unlock_multithreaded): Renamed from
2768         glthread_recursive_lock_unlock. Return error code.
2769         (glthread_recursive_lock_destroy_multithreaded): Renamed from
2770         glthread_recursive_lock_destroy. Return error code.
2771         (glthread_once_call): Make static.
2772         (glthread_once_multithreaded): Renamed from glthread_once.
2773         * lib/tls.h: Include <errno.h>.
2774         (glthread_tls_key_init): New macro/function.
2775         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
2776         (glthread_tls_set): New macro/function.
2777         (gl_tls_set): Define as wrapper around glthread_tls_set.
2778         (glthread_tls_key_destroy): New macro/function.
2779         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
2780         Update function declarations.
2781         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
2782         glthread_tls_get.
2783         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
2784
2785 2008-08-04  Eric Blake  <ebb9@byu.net>
2786
2787         gnumakefile: use space, not TAB, outside of targets
2788         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
2789
2790 2008-08-02  Jim Meyering  <meyering@redhat.com>
2791
2792         getdate.y: avoid locale-dependent date parsing failure
2793         In Turkish locales, getdate would fail to recognize keywords
2794         containing a lowercase "i".  The solution is not to rely on
2795         locale-sensitive case-conversion.
2796         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
2797         (lookup_word): Use c_toupper in place of toupper.
2798         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
2799         Reported by Vefa Bicakci <bicave@superonline.com> in
2800         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
2801         * modules/getdate (Depends-on): Add c-ctype.
2802
2803 2008-08-02  Bruno Haible  <bruno@clisp.org>
2804
2805         * gnulib-tool (func_import): When updating or creating a .gitignore
2806         file, prepend each added line with a slash, and ignore leading slashes
2807         from the existing lines.
2808         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
2809
2810 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2811
2812         Portability fix for GNU make 3.79.1.
2813         * top/GNUmakefile: Avoid 'else COND', which older GNU make
2814         versions do not understand.
2815
2816 2008-08-01  Bruno Haible  <bruno@clisp.org>
2817
2818         Work around bug of HP-UX 10.20 cc with -0.0 literal.
2819         * tests/test-isnanf.h (zero): New variable.
2820         (main): Avoid literal -0.0f.
2821         * tests/test-isnand.h (zero): New variable.
2822         (main): Avoid literal -0.0.
2823         * tests/test-isnanl.h (zero): New variable.
2824         (main): Avoid literal -0.0L.
2825         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
2826         (test_float, test_double, test_long_double): Avoid literals -0.0f,
2827         -0.0, -0.0L.
2828         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
2829         (test_signbitd): Avoid literal -0.0.
2830         (test_signbitl): Avoid literal -0.0L.
2831         * tests/test-ceilf1.c (zero): New variable.
2832         (main): Avoid literal -0.0f.
2833         * tests/test-ceill.c (zero): New variable.
2834         (main): Avoid literal -0.0L.
2835         * tests/test-floorf1.c (zero): New variable.
2836         (main): Avoid literal -0.0f.
2837         * tests/test-floorl.c (zero): New variable.
2838         (main): Avoid literal -0.0L.
2839         * tests/test-roundf1.c (zero): New variable.
2840         (main): Avoid literal -0.0f.
2841         * tests/test-round1.c (zero): New variable.
2842         (main): Avoid literal -0.0.
2843         * tests/test-roundl.c (zero): New variable.
2844         (main): Avoid literal -0.0L.
2845         * tests/test-truncf1.c (zero): New variable.
2846         (main): Avoid literal -0.0f.
2847         * tests/test-trunc1.c (zero): New variable.
2848         (main): Avoid literal -0.0.
2849         * tests/test-truncl.c (zero): New variable.
2850         (main): Avoid literal -0.0L.
2851         * tests/test-frexp.c (zero): New variable.
2852         (main): Avoid literal -0.0.
2853         * tests/test-frexpl.c (zero): New variable.
2854         (main): Avoid literal -0.0L.
2855         * tests/test-ldexpl.c (zero): New variable.
2856         (main): Avoid literal -0.0L.
2857         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
2858         (zerod, zerol): New variables.
2859         (test_function): Avoid literals -0.0, -0.0L.
2860         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
2861         (zerod, zerol): New variables.
2862         (test_function): Avoid literals -0.0, -0.0L.
2863         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
2864         (zerod, zerol): New variables.
2865         (test_function): Avoid literals -0.0, -0.0L.
2866         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
2867         (zerod, zerol): New variables.
2868         (test_function): Avoid literals -0.0, -0.0L.
2869         * tests/test-strtod.c (zero): New variable.
2870         (main): Avoid literal -0.0.
2871         Reported by Jonathan C. Patschke <jp@centtech.com>.
2872
2873 2008-07-31  Jim Meyering  <meyering@redhat.com>
2874
2875         sha256.h: correct definition of SHA224_DIGEST_SIZE
2876         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
2877         Reported by Paulie Pena IV <paulie4@gmail.com>.
2878         Define as 224 / 8, rather than as a literal.
2879         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
2880         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
2881         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
2882
2883 2008-07-31  Bruno Haible  <bruno@clisp.org>
2884
2885         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
2886         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
2887         Reported by Jonathan Patschke <jp@centtech.com>.
2888
2889 2008-07-31  Bruno Haible  <bruno@clisp.org>
2890
2891         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
2892         Reported by Paolo Bonzini <bonzini@gnu.org>.
2893
2894 2008-07-30  Eric Blake  <ebb9@byu.net>
2895
2896         test-strtod: allow compilation without -lm
2897         * tests/test-strtod.c (main): Avoid link dependence on fabs.
2898         Reported by Dennis Clarke <blastwave@gmail.com>.
2899
2900 2008-07-28  Jim Meyering  <meyering@redhat.com>
2901
2902         bootstrap: work also when there are no .po files in po/
2903         * build-aux/bootstrap (update_po_files): Complete the change
2904         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
2905
2906 2008-07-27  Jim Meyering  <meyering@redhat.com>
2907
2908         * users.txt: Add zile.
2909
2910 2008-07-26  Ben Pfaff  <blp@gnu.org>
2911
2912         Add missing dependencies on new m4/exponent[fdl].m4 files.
2913         * modules/isnanf-nolibm: Add m4/exponentf.m4.
2914         * modules/isnand-nolibm: Add m4/exponentd.m4.
2915         * modules/isnanl-nolibm: Add m4/exponentl.m4.
2916         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
2917         m4/isnan[fdl].m4, because the macros actually used moved.
2918         Reported by Jim Meyering.
2919
2920 2008-07-14  Ben Pfaff  <blp@gnu.org>
2921
2922         Add isinf module.
2923         * lib/isinf.c: New file.
2924         * lib/math.in.h: Define isinf macro if we have decided to replace
2925         it.
2926         * m4/isinf.m4: New file.
2927         * m4/math_h.m4: Initialize and substitute variables for isinf
2928         module.
2929         * modules/isinf: New file.
2930         * modules/isinf-tests: New file.
2931         * modules/math: Add substitutions for new module.
2932         * tests/test-isinf.c: New file.
2933         * doc/posix-functions/isinf.texi: Mention new module.
2934         * MODULES.html.sh: Mention new module.
2935
2936 2008-07-14  Ben Pfaff  <blp@gnu.org>
2937
2938         Factor out some macros for use by additional modules.
2939         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
2940         exponentf.m4.
2941         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
2942         exponentd.m4.
2943         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
2944         file exponentl.m4.
2945         * m4/exponentf.m4: New file.
2946         * m4/exponentd.m4: New file.
2947         * m4/exponentl.m4: New file.
2948         * modules/isnanf: Use new file m4/exponentf.m4.
2949         * modules/isnand: Use new file m4/exponentd.m4.
2950         * modules/isnanl: Use new file m4/exponentl.m4.
2951
2952 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
2953
2954         mktime.c: normalize tp->tm_isdst value to -1/0/1.
2955         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
2956         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
2957         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
2958
2959         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
2960         readlink on platforms without PATH_MAX.
2961
2962 2008-07-21  Eric Blake  <ebb9@byu.net>
2963
2964         Warn, not fail, on stale version.
2965         * top/GNUmakefile (_curr-ver): Tone down previous patch.
2966
2967         Don't allow installation with stale devel version number.
2968         * top/GNUmakefile (_is-install-target): New macro.
2969         (_curr-ver): Forbid installation with stale version number.
2970
2971 2008-07-20  Bruno Haible  <bruno@clisp.org>
2972
2973         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
2974         TESTS_ENVIRONMENT.
2975         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
2976
2977 2008-07-20  Bruno Haible  <bruno@clisp.org>
2978
2979         * lib/c-stack.h (c_stack_action): Add documentation.
2980         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
2981
2982 2008-07-20  Bruno Haible  <bruno@clisp.org>
2983
2984         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
2985         * modules/readlink (License): Likewise.
2986
2987 2008-07-17  Eric Blake  <ebb9@byu.net>
2988
2989         * modules/c-stack (Link): Fix typo.
2990
2991         Make c-stack use libsigsegv, when available.
2992         * modules/c-stack (Depends-on): Add libsigsegv.
2993         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
2994         needed.
2995         * lib/c-stack.c (SIGSTKSZ): Define fallback.
2996         (segv_handler, overflow_handler, c_stack_action)
2997         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
2998         implementation when libsigsegv is available, but only when using
2999         the library is necessary.
3000         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
3001         comment, explaining why XSI check fails on Linux.
3002         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
3003         * tests/test-c-stack2.sh: Tweak skip message.
3004         * NEWS: Document new link-time requirements.
3005
3006 2008-07-16  Eric Blake  <ebb9@byu.net>
3007
3008         c-stack: Expose false positives when not using libsigsegv.
3009         * modules/c-stack-tests (Files): Expand test.
3010         * tests/test-c-stack.c (main): Add means to conditionally trigger
3011         non-overflow SIGSEGV.
3012         * tests/test-c-stack2.sh: New file.
3013
3014 2008-07-14  Bruno Haible  <bruno@clisp.org>
3015
3016         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
3017         Reported by Eric Blake.
3018
3019 2008-07-14  Sam Steingold  <sds@gnu.org>
3020             Bruno Haible  <bruno@clisp.org>
3021
3022         New module libsigsegv.
3023         * modules/libsigsegv: New file.
3024         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
3025         modifications.
3026         * MODULES.html.sh (Signal handling): New section.
3027
3028 2008-07-14  Bruno Haible  <bruno@clisp.org>
3029
3030         * modules/unictype/ctype-* (Description): Add the word "function".
3031         Improves the resulting doc in MODULES.html.
3032
3033 2008-07-12  Ben Pfaff  <blp@gnu.org>
3034
3035         Add longlong module.
3036         * modules/longlong: New file.
3037
3038 2008-07-12  Bruno Haible  <bruno@clisp.org>
3039
3040         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
3041         to empty.
3042
3043 2008-07-10  Ben Pfaff  <blp@gnu.org>
3044
3045         Add isnan module.
3046         * doc/posix-functions/isnan.texi: Mention new module.
3047         * lib/math.in.h: Define isnan macro if we have decided to replace
3048         it.
3049         * m4/isnan.m4: New file.
3050         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
3051         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
3052         also.
3053         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
3054         redundancy.
3055         * m4/math_h.m4: Initialize and substitute variables for isnan
3056         module.
3057         * modules/isnan: New file.
3058         * modules/isnan-tests: New file.
3059         * modules/math: Add substitutions for new module.
3060         * tests/test-isnan.c: New file.
3061         * MODULES.html.sh: Mention new module.
3062
3063 2008-07-10  Ben Pfaff  <blp@gnu.org>
3064
3065         Add isnanf module.
3066         * lib/isnanf.m4: New file.
3067         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
3068         (gl_HAVE_ISNANF_IN_LIBM): New macro.
3069         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
3070         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
3071         * modules/isnanf: New file.
3072         * modules/isnanf-tests: New file.
3073         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
3074         files.
3075         * tests/test-isnanf-nolibm.c: factored most of its contents into
3076         new file tests/test-isnanf.h.
3077         * tests/test-isnanf.h: New file.
3078         * tests/test-isnanf.c: New file.
3079         * MODULES.html.sh: Mention new module.
3080         * doc/glibc-functions/isnanf.texi: Mention new module.
3081
3082 2008-07-10  Ben Pfaff  <blp@gnu.org>
3083
3084         Add isnand module.
3085         * lib/isnand.h: New file.
3086         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
3087         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
3088         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
3089         functionality also.
3090         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
3091         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
3092         (gl_HAVE_ISNAND_IN_LIBM): New macro.
3093         * modules/isnand: New file.
3094         * modules/isnand-tests: New file.
3095         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
3096         files.
3097         * tests/test-isnand-nolibm.c: factored most of its contents into
3098         new file tests/test-isnand.h.
3099         * tests/test-isnand.h: New file.
3100         * tests/test-isnand.c: New file.
3101         * MODULES.html.sh: Mention new module.
3102
3103 2008-07-10  Ben Pfaff  <blp@gnu.org>
3104
3105         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
3106         * lib/isnand.h: Rename lib/isnand-nolibm.h.
3107         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
3108         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
3109         * modules/isnanf-nolibm: Update references to renamed files.
3110         * modules/isnand-nolibm: Likewise.
3111         * modules/isnanf-nolibm-tests: Likewise.
3112         * modules/isnand-nolibm-tests: Likewise.
3113         * lib/frexp.c: Likewise.
3114         * lib/isfinite.c: Likewise.
3115         * lib/signbitd.c: Likewise.
3116         * lib/signbitf.c: Likewise.
3117         * lib/vasnprintf.c: Likewise.
3118         * tests/test-ceilf1.c: Likewise.
3119         * tests/test-ceilf2.c: Likewise.
3120         * tests/test-floorf1.c: Likewise.
3121         * tests/test-floorf2.c: Likewise.
3122         * tests/test-frexp.c: Likewise.
3123         * tests/test-round1.c: Likewise.
3124         * tests/test-round2.c: Likewise.
3125         * tests/test-roundf1.c: Likewise.
3126         * tests/test-strtod.c: Likewise.
3127         * tests/test-trunc1.c: Likewise.
3128         * tests/test-trunc2.c: Likewise.
3129         * tests/test-truncf1.c: Likewise.
3130         * tests/test-truncf2.c: Likewise.
3131         * NEWS: Mention the renamed header files.
3132
3133 2008-07-11  Jim Meyering  <meyering@redhat.com>
3134
3135         vc-list-files: make the last-resort awk code more portable
3136         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
3137         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
3138         does not support it.
3139
3140 2008-07-10  Eric Blake  <ebb9@byu.net>
3141
3142         Work with tar's bootstrap.
3143         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
3144         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
3145         an m4 comment.
3146
3147 2008-07-09  Jim Meyering  <meyering@redhat.com>
3148
3149         posix-shell.m4: fix typo that made this test malfunction
3150         * m4/posix-shell.m4: Remove capitalization in variable name.
3151
3152 2008-07-08  Bruno Haible  <bruno@clisp.org>
3153
3154         * m4/onceonly.m4: Update comments.
3155         Reported by Ben Pfaff <blp@cs.stanford.edu>.
3156
3157 2008-07-04  Jim Meyering  <meyering@redhat.com>
3158
3159         * users.txt: Add vc-dwim.
3160         (bison, coreutils): Use the gitweb URL.
3161
3162 2008-07-03  Jim Meyering  <meyering@redhat.com>
3163
3164         * users.txt: Add libffcall.  From Sam Steingold.
3165
3166 2008-07-03  OndÅ™ej Vašík  <ovasik@redhat.com>
3167
3168         getdate.y: do not ignore TZ with relative day, month or year offset
3169         * lib/getdate.y (get_date): Move the tz-handling block to follow the
3170         relative-date-handling, since otherwise, the latter would clobber the
3171         sole output (an updated Start value) of the tz-handling block.
3172         * tests/test-getdate.c: Tests for the fix
3173
3174 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3175
3176         Recognize 'foo_LIBRARIES += libgnu.a'.
3177         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
3178         makefile snippet has already specified an installation location,
3179         also using '+='.
3180
3181 2008-07-02  OndÅ™ej Vašík  <ovasik@redhat.com>
3182
3183         getdate.y: factor out common actions
3184         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
3185         Use them in place of open-coded actions.
3186
3187 2008-07-01  Simon Josefsson  <simon@josefsson.org>
3188
3189         Add self-test for getdate module.
3190         * modules/getdate-tests: New file.
3191         * tests/test-getdate.c: New file.
3192
3193 2008-06-29  Bruno Haible  <bruno@clisp.org>
3194
3195         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
3196         .gitignore.
3197         Reported by Sylvain Beucler <beuc@beuc.net>.
3198
3199 2008-06-29  Bruno Haible  <bruno@clisp.org>
3200
3201         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
3202         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
3203
3204 2008-06-29  Bruno Haible  <bruno@clisp.org>
3205
3206         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
3207         EXTRA_DIST.
3208         Reported by Sylvain Beucler <beuc@beuc.net>.
3209
3210 2008-06-26  Jim Meyering  <meyering@redhat.com>
3211
3212         make several modules depend on the "open" module
3213         This provides slightly increased consistency when opening-for-write
3214         the name of a non-directory spelled with a trailing slash.
3215         * modules/chdir-safer: Likewise.
3216         * modules/chown: Likewise.
3217         * modules/clean-temp: Likewise.
3218         * modules/copy-file: Likewise.
3219         * modules/fchdir: Likewise.
3220         * modules/fcntl-safer: Likewise.
3221         * modules/pipe: Likewise.
3222         * modules/utime: Likewise.
3223         Prompted by Eric Blake and Bruno Haible.
3224
3225 2008-06-24  Andreas Schwab  <schwab@suse.de>
3226
3227         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
3228         literals can be used as initializers for global variables.
3229
3230 2008-06-23  Eric Blake  <ebb9@byu.net>
3231
3232         Make gnulib-cache.m4 easier to diff.
3233         * gnulib-tool (func_import): Allow newlines when reading cached
3234         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
3235
3236 2008-06-23  Bruno Haible  <bruno@clisp.org>
3237
3238         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
3239         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
3240         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
3241         m4/signalblocking.m4.
3242         (gl_PREREQ_SIGACTION): Don't invoke it.
3243         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
3244         gl_PREREQ_SIG_HANDLER_H.
3245         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
3246         Don't check for sigaction here.
3247
3248 2008-06-23  Bruno Haible  <bruno@clisp.org>
3249
3250         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
3251         (install_handlers): Don't set the SA_RESETHAND flag.
3252
3253 2008-06-23  Bruno Haible  <bruno@clisp.org>
3254
3255         * m4/sigaction.m4: Comment fixes.
3256         * lib/signal.in.h: Likewise.
3257
3258 2008-06-23  Eric Blake  <ebb9@byu.net>
3259
3260         Fix typo.
3261         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
3262
3263         Avoid SA_ namespace.
3264         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
3265         Reported by Ralf Wildenhues.
3266
3267         Avoid test failure due to SA_RESTORER.
3268         * tests/test-sigaction.c (SA_MASK): New macro.
3269         (main): Avoid failing due to extension flags being set.
3270         Reported by Jim Meyering.
3271
3272         Revert use of sig-handler.h in sigprocmask.c.
3273         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
3274         it requires the existence of struct sigaction.
3275         * lib/sigprocmask.c (handler_t): Restore typedef.
3276         (rpl_signal, old_handlers): Use local type.
3277
3278 2008-06-22  Bruno Haible  <bruno@clisp.org>
3279
3280         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
3281         conditionally.
3282         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
3283
3284 2008-06-22  Bruno Haible  <bruno@clisp.org>
3285
3286         * doc/posix-functions/siginterrupt.texi: Move note.
3287
3288         * lib/signal.in.h (SA_RESTART): New macro.
3289         * lib/sigaction.c: Update comment.
3290
3291         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
3292
3293         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
3294         (gl_PREREQ_SIGPROCMASK): Invoke it.
3295         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
3296
3297         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
3298
3299         * lib/sigprocmask.c: Update a comment.
3300
3301 2008-06-21  Eric Blake  <ebb9@byu.net>
3302
3303         Use sigaction module rather than signal().
3304         * modules/c-stack (Depends-on): Add sigaction.
3305         * modules/fatal-signal (Depends-on): Likewise.
3306         * modules/nanosleep (Depends-on): Likewise.
3307         * modules/sigprocmask (Files): Add sig-handler.h.
3308         * modules/sigaction (Files): Likewise.
3309         * lib/sig-handler.h (get_handler): New file, suggested by Paul
3310         Eggert.
3311         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
3312         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
3313         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
3314         (init_fatal_signals): Likewise.
3315         * lib/nanosleep.c (rpl_nanosleep): Likewise.
3316         (siginterrupt): Delete fallback.
3317         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
3318         instead.
3319         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
3320         siginterrupt.
3321
3322         New module sigaction, for mingw.
3323         * modules/sigaction: New module...
3324         * modules/sigaction-tests: ...and its test.
3325         * m4/sigaction.m4: New file.
3326         * lib/sigaction.c: Likewise.
3327         * tests/test-sigaction.c: Likewise.
3328         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
3329         * modules/signal (Makefile.am): Likewise.
3330         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
3331         needed.
3332         * doc/posix-headers/signal.texi (signal.h): Mention provided
3333         types.
3334         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
3335         that sigaction is preferable.
3336         * doc/posix-functions/sigaction.texi (sigaction): Mention new
3337         module.
3338         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
3339         sigaction.
3340
3341         Improve robustness of sigprocmask by overriding signal.
3342         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
3343         is in use.
3344         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
3345         (SIGKILL, SIGSTOP): Provide fallbacks.
3346         (rpl_signal): Implement.
3347         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
3348         signal can be called inside handlers.
3349
3350         Fix nanosleep module on mingw.
3351         * modules/nanosleep (Depends-on): Add sys_select.
3352         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
3353
3354         Fix licensing of sigprocmask.
3355         * modules/raise (License): Relicense as LGPL.
3356
3357 2008-06-21  Bruno Haible  <bruno@clisp.org>
3358
3359         * lib/propername.c (proper_name_utf8): Don't use the transliterated
3360         result if it contains question marks.
3361         Reported by Michael Geng <linux@michaelgeng.de>.
3362
3363 2008-06-19  Bruno Haible  <bruno@clisp.org>
3364
3365         Fix CVS-ism.
3366         * doc/gnulib.texi: Include updated-stamp.texi.
3367         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
3368         (updated-stamp.texi): New rule.
3369         (gnulib.info): Depend on it.
3370         * doc/.gitignore: Add updated-stamp.texi.
3371         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
3372
3373 2008-06-19  Bruno Haible  <bruno@clisp.org>
3374
3375         * doc/Makefile (gnulib.info): Update and simplify dependencies.
3376         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
3377
3378 2008-06-19  Eric Blake  <ebb9@byu.net>
3379
3380         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
3381         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
3382         Reported by Stepan Kasal.
3383
3384 2008-06-18  Bruno Haible  <bruno@clisp.org>
3385
3386         * lib/fatal-signal.c (init_fatal_signals): Add comment.
3387         Reported by Eric Blake.
3388
3389 2008-06-18  Eric Blake  <ebb9@byu.net>
3390
3391         Work around cygwin 1.5.25 strsignal bug.
3392         * tests/test-strsignal.c: Allow for const char *.
3393         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
3394
3395 2008-06-18  Simon Josefsson  <simon@josefsson.org>
3396
3397         * users.txt: Update URL to article and add author/date
3398         information.
3399
3400 2008-06-17  Bruno Haible  <bruno@clisp.org>
3401
3402         New macro gl_DISABLE_THREADS.
3403         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
3404         if the user did not pass --enable-threads or --disable-threads option.
3405         (gl_DISABLE_THREADS): New macro.
3406         Reported by Eric Blake <ebb9@byu.net>.
3407
3408 2008-06-17  Bruno Haible  <bruno@clisp.org>
3409
3410         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
3411         when the macro ignores it.
3412         Based on a patch by Eric Blake <ebb9@byu.net>.
3413
3414 2008-06-17  Bruno Haible  <bruno@clisp.org>
3415
3416         * modules/tls (License): Change to LGPLv2+.
3417         Reported by Eric Blake.
3418
3419 2008-06-17  Eric Blake  <ebb9@byu.net>
3420
3421         Simplify c-stack prerequisites.
3422         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
3423         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
3424         no longer requires <ucontext.h> to exist.  Optimize setrlimit
3425         check.
3426         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
3427         <sys/resource.h>.
3428
3429         Move c-stack test into testsuite.
3430         * modules/c-stack-tests: New file.
3431         * lib/c-stack.c [DEBUG]: Move test program...
3432         * tests/test-c-stack.c: ...into this new file.  Skip rather than
3433         fail test if sigaltstack is lacking.
3434         * tests/test-c-stack.sh: New driver file.
3435
3436 2008-06-16  Eric Blake  <ebb9@byu.net>
3437
3438         Use raise module consistently.
3439         * modules/fatal-signal (Depends-on): Add raise.
3440         * modules/sigprocmask (Depends-on): Likewise.
3441         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
3442         * lib/sigprocmask.c (sigprocmask): Likewise.
3443         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
3444         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
3445
3446         Fix compliance bug in sigpending.
3447         * lib/sigprocmask.c (sigpending): Return pending array via
3448         parameter, not return value.
3449
3450 2008-06-14  Eric Blake  <ebb9@byu.net>
3451
3452         Improve obstack-printf test code.
3453         * tests/test-obstack-printf.c (test_function): Fix comment, and
3454         simplify usage of obstack_* in macros.  Add a test for coverage.
3455         Reported by Bruno Haible.
3456
3457 2008-06-14  Bruno Haible  <bruno@clisp.org>
3458
3459         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
3460         array size as a constant, not as a const variable.
3461         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
3462         AC_USE_SYSTEM_EXTENSIONS.
3463         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
3464         Test whether the obstack_printf function actually exists.
3465         * modules/obstack-printf (Depends-on): Add extensions.
3466         (Include): Remove obstack.h.
3467         * modules/obstack-printf-posix (Depends-on): Add extensions.
3468         (Include): Remove obstack.h.
3469
3470 2008-06-13  Eric Blake  <ebb9@byu.net>
3471
3472         Add obstack-printf and obstack-printf-posix modules.
3473         * modules/obstack-printf: New file.
3474         * modules/obstack-printf-posix: Likewise.
3475         * MODULES.html.sh (Misc): Mention them.
3476         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
3477         Likewise.
3478         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
3479         Likewise.
3480         * modules/stdio (Makefile.am): Accomodate new modules.
3481         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
3482         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
3483         Declare.
3484         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
3485         functions.
3486         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
3487         (gl_REPLACE_OBSTACK_PRINTF): New macros
3488         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
3489         * tests/test-obstack-printf.c: New file.
3490         * modules/obstack-printf-tests: Likewise.
3491         * modules/obstack-printf-posix-tests: Likewise.
3492
3493 2008-06-11  Bruno Haible  <bruno@clisp.org>
3494
3495         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
3496         * lib/open.c: Include errno.h.
3497         (open): Fail when attempting to write to a file that has a trailing
3498         slash.
3499         * tests/test-open.c (main): Test against trailing slash bug.
3500         * doc/posix-functions/open.texi: Mention the trailing slash bug.
3501
3502 2008-06-10  Bruno Haible  <bruno@clisp.org>
3503
3504         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
3505         for $? to work inside the trap command, with various /bin/sh-s.
3506         * tests/test-vc-list-files-cvs.sh: Likewise.
3507
3508 2008-06-10  Bruno Haible  <bruno@clisp.org>
3509
3510         * lib/acl-internal.h: Don't include gettext.h here.
3511         * lib/set-mode-acl.c: Include gettext.h here.
3512         * lib/copy-acl.c: Likewise.
3513
3514 2008-06-10  Bruno Haible  <bruno@clisp.org>
3515
3516         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
3517         * lib/wait-process.c (wait_subprocess): Likewise.
3518         * lib/execute.h (execute): Add termsigp argument.
3519         * lib/execute.c (execute): Likewise.
3520         * lib/csharpcomp.c (compile_csharp_using_pnet,
3521         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
3522         * lib/csharpexec.c (execute_csharp_using_pnet,
3523         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
3524         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
3525         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
3526         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
3527         is_jikes_present): Update.
3528         * lib/javaexec.c (execute_java_class): Update.
3529         * lib/javaversion.c (execute_and_read_line): Update.
3530         * NEWS: Document the changes.
3531         Reported by Eric Blake.
3532
3533 2008-06-10  Eric Blake  <ebb9@byu.net>
3534
3535         Add missing include.
3536         * tests/test-strstr.c (includes): Add <signal.h>.
3537         * tests/test-strcasestr.c (includes): Likewise.
3538         * tests/test-memmem.c (includes): Likewise.
3539
3540 2008-06-10  Bruno Haible  <bruno@clisp.org>
3541
3542         * lib/wait-process.c (wait_subprocess): Add an assertion.
3543
3544 2008-06-10  Bruno Haible  <bruno@clisp.org>
3545
3546         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
3547
3548 2008-06-10  Bruno Haible  <bruno@clisp.org>
3549
3550         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
3551         using alarm().
3552         * tests/test-strcasestr.c (main): Likewise.
3553         * tests/test-strstr.c (main): Likewise.
3554
3555 2008-06-09  Bruno Haible  <bruno@clisp.org>
3556
3557         Work around the Solaris 10 ACE ACLs ABI change.
3558         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
3559         declare if ACL_NO_TRIVIAL is present.
3560         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
3561         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
3562         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
3563         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
3564         define if ACL_NO_TRIVIAL is present.
3565         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
3566         and use the current ABI.
3567         (file_has_acl): Use same #if condition as elsewhere.
3568         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
3569         in use, and use the current ABI.
3570         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
3571         Reported by Jim Meyering.
3572
3573 2008-06-09  Eric Blake  <ebb9@byu.net>
3574
3575         Work around environments that (stupidly) ignore SIGALRM.
3576         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
3577         before using alarm().
3578         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
3579         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
3580         Reported by Ian Beckwith <ianb@erislabs.net>.
3581
3582         Produce autobuild blurb earlier in log.
3583         * modules/autobuild (configure.ac-early): Move AB_INIT here.
3584
3585 2008-06-09  Jim Meyering  <meyering@redhat.com>
3586         and OndÅ™ej Vašík  <ovasik@redhat.com>
3587
3588         utimens.c: correct kernel bug work-around
3589         OndÅ™ej Vašík found that the invalid return value of 280 indicates
3590         failure, not success, and the kernel bug we're trying to work
3591         around affects not just the utimensat call, but also the fallback
3592         futimens call.
3593         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
3594         not success.
3595         [HAVE_FUTIMENS]: Use the same work-around, here.
3596
3597 2008-06-09  Jim Meyering  <meyering@redhat.com>
3598
3599         add more guards around definition of ACE_-related code
3600         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
3601         ALLOW and ACE_OWNER are also defined.
3602
3603 2008-06-08  Bruno Haible  <bruno@clisp.org>
3604
3605         * lib/acl-internal.h: Add me as co-author.
3606         * lib/file-has-acl.c: Likewise.
3607         * lib/set-mode-acl.c: Likewise.
3608         * lib/copy-acl.c: Likewise.
3609
3610 2008-06-08  Bruno Haible  <bruno@clisp.org>
3611
3612         Add support for AIX ACLs.
3613         * lib/acl-internal.h (acl_nontrivial): New declaration.
3614         * lib/file-has-acl.c (acl_nontrivial): New function.
3615         (file_has_acl): Add implementation using AIX 4 ACL API.
3616         * lib/set-mode-acl.c (qset_acl): Likewise.
3617         * lib/copy-acl.c (qcopy_acl): Likewise.
3618
3619 2008-06-08  Bruno Haible  <bruno@clisp.org>
3620
3621         Add support for HP-UX ACLs.
3622         * lib/acl-internal.h (acl_nontrivial): New declaration.
3623         * lib/file-has-acl.c (acl_nontrivial): New function.
3624         (file_has_acl): Add implementation using HP-UX 11 ACL API.
3625         * lib/set-mode-acl.c (qset_acl): Likewise.
3626         * lib/copy-acl.c (qcopy_acl): Likewise.
3627
3628 2008-06-08  Bruno Haible  <bruno@clisp.org>
3629
3630         Add support for Cygwin ACLs.
3631         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
3632         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
3633         the chmod_or_fchmod call.
3634         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
3635
3636 2008-06-08  Bruno Haible  <bruno@clisp.org>
3637
3638         Fix bug with setuid modes in Solaris 10+ code.
3639         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
3640         succeeded, when the mode contains some special bits.
3641
3642 2008-06-08  Bruno Haible  <bruno@clisp.org>
3643
3644         Add support for Solaris 7..10 ACLs.
3645         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
3646         declarations.
3647         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
3648         functions.
3649         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
3650         * lib/set-mode-acl.c (qset_acl): Likewise.
3651         * lib/copy-acl.c (qcopy_acl): Likewise.
3652
3653 2008-06-08  Bruno Haible  <bruno@clisp.org>
3654
3655         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
3656         declaration.
3657         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
3658         (acl_access_nontrivial): Remove MacOS X case.
3659         (file_has_acl): Use acl_extended_nontrivial.
3660         * lib/copy-acl.c (qcopy_acl): Likewise.
3661
3662 2008-06-08  Bruno Haible  <bruno@clisp.org>
3663
3664         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
3665
3666 2008-06-08  Jim Meyering  <meyering@redhat.com>
3667
3668         * modules/acl (Maintainer): Add Bruno Haible.
3669
3670 2008-06-07  Bruno Haible  <bruno@clisp.org>
3671
3672         Improve support for Tru64 ACLs.
3673         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
3674         ACL on OSF/1.
3675
3676 2008-06-07  Bruno Haible  <bruno@clisp.org>
3677
3678         Add support for MacOS X ACLs.
3679         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
3680         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
3681         * lib/set-mode-acl.c (qset_acl): Likewise.
3682         * lib/copy-acl.c (qcopy_acl): Likewise.
3683
3684 2008-06-07  Bruno Haible  <bruno@clisp.org>
3685
3686         Fix memory leak introduced on 2008-05-22.
3687         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
3688         use.
3689
3690 2008-06-07  Bruno Haible  <bruno@clisp.org>
3691
3692         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
3693         to construct an empty ACL.
3694
3695 2008-06-07  Bruno Haible  <bruno@clisp.org>
3696
3697         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
3698         precisely.
3699         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
3700
3701 2008-06-07  Bruno Haible  <bruno@clisp.org>
3702
3703         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
3704         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
3705
3706 2008-06-07  Bruno Haible  <bruno@clisp.org>
3707
3708         * doc/posix-functions/_setjmp.texi: Explain the use of this function
3709         regardless of POSIX.
3710         * doc/posix-functions/_longjmp.texi: Likewise.
3711         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
3712         SystemV platform in this case.
3713
3714 2008-06-06  Eric Blake  <ebb9@byu.net>
3715
3716         Document abort() bugs.
3717         * doc/posix-functions/abort.texi (abort): Mention anomalies.
3718
3719         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
3720         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
3721         sigsetjmp.
3722         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
3723         siglongjmp, but only as a macro.
3724         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
3725         is obsolete.
3726         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
3727
3728         Tweak documentation to cover cygwin argz bugs.
3729         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
3730         argz bug fix; no code change needed since no cygwin releases
3731         occurred between the last fix and the bug being tested.
3732         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
3733         module and recently fixed cygwin bugs.
3734         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
3735         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
3736         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
3737         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
3738         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
3739         Likewise.
3740         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
3741         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
3742         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
3743         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
3744         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
3745         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
3746         Likewise.
3747
3748         Avoid gcc warning on cygwin.
3749         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
3750         !ACL_NO_TRIVIAL]: Avoid unused variable.
3751
3752 2008-06-05  Eric Blake  <ebb9@byu.net>
3753
3754         Be tolerant of UNKNOWN version in gnulib-tool test dir.
3755         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
3756         git-version-gen fails to come up with a version.
3757         Reported by Simon Josefsson.
3758
3759 2008-06-05  Jim Meyering  <meyering@redhat.com>
3760             Paul Eggert  <eggert@cs.ucla.edu>
3761
3762         utimens.c: work around a probable Linux kernel bug
3763         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
3764         appears to be a kernel bug that causes utimensat to return 280
3765         instead of 0, indicating success.
3766
3767 2008-06-04  Bruno Haible  <bruno@clisp.org>
3768
3769         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
3770         2008-06-01 commit.
3771
3772 2008-06-04  Bruno Haible  <bruno@clisp.org>
3773
3774         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
3775         * lib/file-has-acl.c (acl_access_nontrivial): New function.
3776         (file_has_acl): Use it. Save errno afterwards.
3777         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
3778
3779 2008-06-03  Bruno Haible  <bruno@clisp.org>
3780
3781         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
3782         draft code. Simplify #ifs.
3783         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
3784         Put Solaris code after POSIX-draft code. Fix comments regarding
3785         Solaris 10, HP-UX. Mention Cygwin.
3786         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
3787
3788 2008-06-03  Eric Blake  <ebb9@byu.net>
3789
3790         Provide fallback for older kernels.
3791         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
3792         Provide runtime fallback if kernel lacks support.
3793         Reported by Mike Frysinger.
3794
3795 2008-06-02  Bruno Haible  <bruno@clisp.org>
3796
3797         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
3798         it exists.
3799
3800 2008-06-02  Bruno Haible  <bruno@clisp.org>
3801
3802         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
3803         * lib/copy-acl.c (qcopy_acl): Update comment.
3804
3805 2008-06-02  Bruno Haible  <bruno@clisp.org>
3806
3807         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
3808         like ACL APIs.
3809
3810 2008-06-02  Bruno Haible  <bruno@clisp.org>
3811
3812         * tests/test-file-has-acl.sh: Use different code for Cygwin.
3813         * tests/test-set-mode-acl.sh: Likewise.
3814         * tests/test-copy-acl.sh: Likewise.
3815         * tests/test-copy-file.sh: Likewise.
3816
3817 2008-06-02  Bruno Haible  <bruno@clisp.org>
3818
3819         * tests/test-file-has-acl.sh: Remove unused code.
3820
3821 2008-06-01  Bruno Haible  <bruno@clisp.org>
3822
3823         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
3824         (copy_acl): Just a wrapper around qcopy_acl that emits the error
3825         messages.
3826         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
3827
3828 2008-06-01  Bruno Haible  <bruno@clisp.org>
3829
3830         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
3831         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
3832         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
3833         APIs.
3834         * modules/acl-tests (configure.ac): Remove tests now contained in
3835         m4/acl.m4.
3836
3837 2008-06-02  Jim Meyering  <meyering@redhat.com>
3838
3839         announce-gen: use a better key-server host name
3840         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
3841         it may be more consistently reliable.  Suggested by Werner Koch
3842         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
3843
3844 2008-06-01  Bruno Haible  <bruno@clisp.org>
3845
3846         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
3847         Reported by Voroskoi Andras <voroskoi@gmail.com>.
3848
3849 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
3850
3851         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
3852
3853 2008-06-01  Bruno Haible  <bruno@clisp.org>
3854
3855         New ACL tests.
3856         * tests/test-file-has-acl.sh: New file.
3857         * tests/test-file-has-acl.c: New file.
3858         * tests/test-set-mode-acl.sh: New file.
3859         * tests/test-set-mode-acl.c: New file.
3860         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
3861         * tests/test-copy-acl.c: New file.
3862         * modules/acl-tests: New file, based on modules/copy-file-tests.
3863         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
3864         (Depends-on): Add acl-tests.
3865         (configure.ac): Remove checks.
3866         (Makefile.am): Don't create test-sameacls program here any more.
3867
3868 2008-06-01  Bruno Haible  <bruno@clisp.org>
3869
3870         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
3871         * tests/test-sameacls.c: Include progname.h.
3872         (main): Invoke set_program_name. Portability fixes for MacOS X,
3873         Solaris, HP-UX.
3874
3875 2008-06-01  Bruno Haible  <bruno@clisp.org>
3876
3877         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
3878         function.
3879         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
3880
3881 2008-06-01  Bruno Haible  <bruno@clisp.org>
3882
3883         * modules/rpmatch (Depends-on): Add strdup.
3884
3885 2008-06-01  Bruno Haible  <bruno@clisp.org>
3886
3887         * lib/pipe.c: Include unistd-safer.h.
3888         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
3889         * modules/pipe (Depends-on): Add unistd-safer.
3890
3891 2008-05-30  Simon Josefsson  <simon@josefsson.org>
3892
3893         * modules/autobuild (configure.ac): Call AB_INIT.
3894
3895 2008-05-30  Simon Josefsson  <simon@josefsson.org>
3896
3897         * tests/test-getaddrinfo.c: Don't print debug messages by default.
3898         Suggested by Bruno Haible <bruno@clisp.org>.
3899
3900 2008-05-30  Simon Josefsson  <simon@josefsson.org>
3901
3902         * tests/test-base64.c: Cast size_t to unsigned long when invoking
3903         printf.  Use %lu instead of %d.  Reported by Bruno Haible
3904         <bruno@clisp.org>.
3905
3906 2008-05-29  Eric Blake  <ebb9@byu.net>
3907
3908         Prefer new POSIX 200x interfaces over futimesat.
3909         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
3910         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
3911         when available.
3912         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
3913
3914 2008-05-28  Bruno Haible  <bruno@clisp.org>
3915
3916         * modules/stpcpy (License): Change to LGPLv2+.
3917         Requested by David Lutterkort <dlutter@redhat.com>.
3918
3919 2008-05-27  Bruno Haible  <bruno@clisp.org>
3920
3921         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
3922         current mingw.
3923         Reported by Jose E. Marchesi <jemarch@gnu.org>.
3924
3925 2008-05-27  Bruno Haible  <bruno@clisp.org>
3926
3927         * modules/iconv_open (Link): New section, from module 'iconv'.
3928         * modules/striconv (Link): Likewise.
3929         * modules/striconveh (Link): Likewise.
3930         * modules/xstriconv (Link): Likewise.
3931         * modules/unicodeio (Link): Likewise.
3932         * modules/propername (Link): Likewise.
3933         Reported by Jim Meyering.
3934
3935 2008-05-26  Jim Meyering  <meyering@redhat.com>
3936
3937         sha256: do not artificially restrict buffer length to be < 2^32
3938         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
3939         uint32_t to size_t.
3940         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
3941         to match.
3942
3943         avoid unaligned access errors, e.g., on sparc
3944         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
3945         direct access through a possibly-unaligned uint64* pointer.
3946         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
3947         direct access through a possibly-unaligned uint32* pointer.
3948         Prompted by this patch from Tom "spot" Callaway:
3949         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
3950
3951         sha512.c: fix typo in comment
3952         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
3953
3954 2008-05-25  Bruno Haible  <bruno@clisp.org>
3955
3956         * lib/set-mode-acl.c: Renamed from lib/acl.c.
3957         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
3958         (Makefile.am): Update lib_SOURCES.
3959
3960 2008-05-25  Bruno Haible  <bruno@clisp.org>
3961
3962         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
3963
3964 2008-05-25  Jim Meyering  <meyering@redhat.com>
3965
3966         useless-if-before-free: freed expr may have white-space differences
3967         * build-aux/useless-if-before-free: Recognize cases in which the
3968         freed expression differs from the tested one in embedded white
3969         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
3970         $1 was used, so we can't make any regexp shy.  Improved tests now
3971         detect this.
3972
3973         useless-if-before-free: accept white space in the expression.
3974         * build-aux/useless-if-before-free: For now, any white space
3975         in the expression must be identical in the free argument.
3976
3977         useless-if-before-free: efficiency tweak
3978         * build-aux/useless-if-before-free: Make the expression-matching
3979         regexp "shy".
3980         Make the *outer* regexp shy, not the expr-matching one.
3981
3982         update code-in-comment to accept cast of free arg
3983         * build-aux/useless-if-before-free: Update regexp.
3984
3985 2008-05-25  Bruno Haible  <bruno@clisp.org>
3986
3987         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
3988         * modules/copy-file-tests (Files, Makefile.am): Update.
3989         * tests/test-copy-file.c (func_test_copy): Update.
3990
3991 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
3992
3993         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
3994
3995 2008-05-23  Bruno Haible  <bruno@clisp.org>
3996
3997         Improve support for ACLs on OSF/1.
3998         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
3999         Remove fallback for unknown flavors of ACLs.
4000
4001 2008-05-22  Bruno Haible  <bruno@clisp.org>
4002
4003         Add support for ACLs on OSF/1.
4004         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
4005         replacements.
4006         (acl_free_text): New macro fallback.
4007         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
4008         acl_free.
4009         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
4010         acl_free_text function. Require AC_C_INLINE.
4011
4012 2008-05-22  Bruno Haible  <bruno@clisp.org>
4013
4014         Make copy_acl work on MacOS X 10.5.
4015         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
4016         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
4017         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
4018         If MODE_INSIDE_ACL, don't assume that every system has the same text
4019         representation for ACLs as FreeBSD.
4020         * lib/copy-acl.c (copy_acl): Add support for platforms with
4021         !MODE_INSIDE_ACL.
4022         * lib/file-has-acl.c (file_has_acl): Likewise.
4023         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
4024         FreeBSD, MacOS X, or IRIX, respectively.
4025
4026 2008-05-22  Bruno Haible  <bruno@clisp.org>
4027
4028         * lib/acl.h: Don't include <sys/acl.h>.
4029         (GETACLCNT): Move fallback to lib/acl-internal.h.
4030         * lib/acl-internal.h: Include <sys/acl.h> here.
4031         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
4032
4033 2008-05-22  Bruno Haible  <bruno@clisp.org>
4034
4035         Split off copy_acl function to separate file.
4036         * lib/copy-acl.c: New file, extracted from lib/acl.c.
4037         * lib/acl.c (copy_acl): Moved function to separate file.
4038         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
4039         * modules/acl (Files): Add lib/copy-acl.c.
4040         (Makefiles.am): Augment lib_SOURCES.
4041
4042 2008-05-22  Bruno Haible  <bruno@clisp.org>
4043
4044         * modules/copy-file-tests: New file.
4045         * tests/test-copy-file.sh: New file.
4046         * tests/test-copy-file.c: New file.
4047         * tests/test-copy-file-sameacls.c: New file.
4048
4049 2008-05-22  Eric Blake  <ebb9@byu.net>
4050
4051         Avoid gcc warning.
4052         * tests/test-memcmp.c (main): Pass NULL indirectly.
4053
4054 2008-05-21  Bruno Haible  <bruno@clisp.org>
4055
4056         Add reference doc about ACLs.
4057         * doc/acl-resources.txt: New file.
4058         * doc/acl-cygwin.txt: New file.
4059
4060 2008-05-21  Bruno Haible  <bruno@clisp.org>
4061
4062         Avoid one more warning from gcc.
4063         * lib/vasnprintf.c (IF_LINT): Update comments.
4064         (VASNPRINTF): Use it also for the 'prefix' array initializer.
4065
4066 2008-05-21  Jim Meyering  <meyering@redhat.com>
4067
4068         avoid a warning from gcc
4069         * lib/vasnprintf.c (IF_LINT): Define.
4070         (scale10_round_decimal_long_double):
4071         Use it to avoid a "may be used uninitialized" warning.
4072         (scale10_round_decimal_double): Likewise.
4073
4074 2008-05-21  Simon Josefsson  <simon@josefsson.org>
4075
4076         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
4077         declared.
4078
4079 2008-05-20  Bruno Haible  <bruno@clisp.org>
4080
4081         * tests/test-memcmp.c (main): Test also the sign of the result. Test
4082         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
4083
4084 2008-05-20  Simon Josefsson  <simon@josefsson.org>
4085
4086         * modules/memcmp-tests: New file.
4087         * tests/test-memcmp.c: New file.
4088
4089 2008-05-19  Bruno Haible  <bruno@clisp.org>
4090
4091         * modules/propername (Notice, configure.ac): Put quoted "..." into
4092         --keyword option.
4093         * lib/propername.h: Update comments accordingly.
4094         Reported by Eric Blake.
4095
4096 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
4097
4098         * modules/getpass-gnu (Depends-on): Add fseeko.
4099
4100 2008-05-19  Simon Josefsson  <simon@josefsson.org>
4101
4102         * modules/base64-tests: New file.
4103
4104 2008-05-19  Bo Borgerson <gigabo@gmail.com>
4105
4106         * lib/base64.c (base64_decode_ctx): If a decode context structure
4107         was passed in use it to ignore newlines.  If a context structure
4108         was _not_ passed in, continue to treat newlines as garbage (this
4109         is the historical behavior).  Formerly base64_decode.
4110         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
4111         takes a decode context structure.
4112         * lib/base64.h (base64_decode): Macro for four-argument calls.
4113         (base64_decode_alloc): Likewise.
4114         * lib/base64.c (base64_decode_ctx): If a decode context structure
4115         was passed in use it to ignore newlines.  If a context structure
4116         was _not_ passed in, continue to treat newlines as garbage (this
4117         is the historical behavior).  Formerly base64_decode.
4118         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
4119         takes a decode context structure.
4120         * lib/base64.h (base64_decode): Macro for four-argument calls.
4121         (base64_decode_alloc): Likewise.
4122
4123 2008-05-19  Jim Meyering  <meyering@redhat.com>
4124
4125         avoid a warning from gcc
4126         * lib/trim.c (IF_LINT): Define.
4127         (trim2): Use it to avoid a "may be used uninitialized" warning.
4128
4129         Fix doc typo.
4130         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
4131
4132 2008-05-19  Bruno Haible  <bruno@clisp.org>
4133
4134         * doc/glibc-functions/getpass.texi: Document limits of other
4135         implementations.
4136
4137 2008-05-19  Simon Josefsson  <simon@josefsson.org>
4138             Bruno Haible <bruno@clisp.org>
4139
4140         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
4141
4142 2008-05-18  Bruno Haible  <bruno@clisp.org>
4143
4144         * modules/propername: New file, from GNU gettext.
4145         * lib/propername.h: New file, from GNU gettext.
4146         * lib/propername.c: New file, from GNU gettext.
4147         * MODULES.html.sh (Internationalization functions): Add propername.
4148
4149 2008-05-16  Jim Meyering  <meyering@redhat.com>
4150             Bruno Haible  <bruno@clisp.org>
4151
4152         Avoid some warnings from "gcc -Wshadow".
4153         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
4154
4155 2008-05-15  Eric Blake  <ebb9@byu.net>
4156
4157         Extend previous patch to cygwin 1.7.0.
4158         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
4159         fast implementation in cygwin >= 1.7.0.
4160         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
4161         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
4162
4163 2008-05-15  Bruno Haible  <bruno@clisp.org>
4164
4165         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
4166         implementation in glibc >= 2.9.
4167         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
4168         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
4169
4170 2008-05-15  Bruno Haible  <bruno@clisp.org>
4171
4172         * MODULES.html.sh (Internationalization functions): Remove linebreak.
4173         (Unicode string functions): Add unilbrk/*.
4174         Reported by Karl Berry.
4175
4176 2008-05-15  Eric Blake  <ebb9@byu.net>
4177
4178         Fix violation of <stdbool.h> replacement in regex.
4179         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
4180         * lib/regexec.c (re_search_internal): Likewise.
4181         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
4182
4183 2008-05-15  Jim Meyering  <meyering@redhat.com>
4184
4185         avoid distracting test output when git or cvs is not found
4186         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
4187         * tests/test-vc-list-files-git.sh: Likewise.
4188
4189 2008-05-15  Eric Blake  <ebb9@byu.net>
4190
4191         Glibc finally accepted the memmem speedup code, bugzilla #5514.
4192         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
4193         glibc version.
4194         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
4195         * doc/posix-functions/strstr.texi (strstr): Likewise.
4196         * lib/str-two-way.h (MAX): Sychronize with glibc.
4197
4198 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
4199
4200         * lib/regcomp.c (optimize_utf8): Add a note on why we test
4201         opr.ctx_type.
4202         (calc_first): Initialize constraint field.
4203         (duplicate_node_closure): Use it instead of special casing ANCHORS.
4204         Fix grammar.
4205         (duplicate_node): Merge constraint field for all node types.
4206         (calc_eclosure_iter): Look at constraint field for all node types.
4207         * lib/regex_internal.c (create_cd_newstate): Don't look at
4208         opr.ctx_type.
4209
4210 2008-05-14  Bruno Haible  <bruno@clisp.org>
4211
4212         Help GCC to do better code generation.
4213         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
4214         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
4215         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
4216         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
4217         Declare with attribute 'malloc' if supported.
4218
4219 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
4220
4221         use "echo STR|wc -c" rather than unportable "expr length STR"
4222         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
4223         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
4224
4225 2008-05-14  Jim Meyering  <meyering@redhat.com>
4226
4227         use dd ibs=$n count=1 ... rather than less-portable head -c$n
4228         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
4229         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
4230         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
4231         via Collin Lasse.
4232
4233 2008-05-14  Eric Blake  <ebb9@byu.net>
4234
4235         Avoid quadratic growth in gl_LIBSOURCES.
4236         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
4237         Suggested by Bruno Haible.
4238
4239         Test xmemdup0.
4240         * modules/xmemdup0-tests: New file.
4241         * tests/test-xmemdup0.c: Likewise.
4242
4243 2008-05-13  Eric Blake  <ebb9@byu.net>
4244
4245         Split xmemdup0 into its own module.
4246         * modules/xmemdup0: New file.
4247         * lib/xmemdup0.h: Likewise.
4248         * lib/xmemdup0.c: Likewise.
4249         * MODULES.html.sh (Memory management functions): Add xmemdup0.
4250         * lib/xalloc.h (xmemdup0): Remove.
4251         * lib/xmalloc.c (xmemdup0): Likewise.
4252
4253 2008-05-13  Eric Blake  <ebb9@byu.net>
4254             Bruno Haible  <bruno@clisp.org>
4255
4256         Reduce number of forks required during autoconf.
4257         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
4258         and gl_LIBSOURCES_DIR.
4259         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
4260         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
4261         m4_syscmd per file.
4262         <m4_foreach_w>: Move...
4263         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
4264
4265 2008-05-13  Eric Blake  <ebb9@byu.net>
4266
4267         * gnulib-tool: Fix various comment typos.
4268
4269 2008-05-12  Bruno Haible  <bruno@clisp.org>
4270
4271         Tailor the linebreaking algorithm.
4272         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
4273
4274 2008-05-12  Bruno Haible  <bruno@clisp.org>
4275
4276         Update to Unicode 5.0.0.
4277         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
4278         LBP_JV, LBP_JT. Redistribute values.
4279         (unilbrk_table): Change size.
4280         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
4281         Unicode TR#14 rev. 22.
4282         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
4283         LBP_JV, LBP_JT. Redistribute values.
4284         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
4285         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
4286         Update.
4287         * lib/unilbrk/lbrkprop1.h: Regenerated.
4288         * lib/unilbrk/lbrkprop2.h: Regenerated.
4289         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
4290         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
4291         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
4292         Likewise.
4293         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
4294         Likewise.
4295         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
4296         result.
4297         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
4298         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
4299         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
4300         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
4301         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
4302         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
4303
4304 2008-05-11  Bruno Haible  <bruno@clisp.org>
4305
4306         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
4307
4308 2008-05-11  Bruno Haible  <bruno@clisp.org>
4309
4310         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
4311         * modules/unilbrk/gen-lbrk: New file.
4312
4313 2008-05-11  Bruno Haible  <bruno@clisp.org>
4314
4315         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
4316         * m4/sha512.m4 (gl_SHA512): Likewise.
4317
4318 2008-05-11  Jim Meyering  <meyering@redhat.com>
4319
4320         New modules: crypto/sha256, crypto/sha512 (from coreutils)
4321         * modules/crypto/sha256: New file.
4322         * modules/crypto/sha512: Likewise.
4323         * lib/sha256.c: Likewise.
4324         * lib/sha256.h: Likewise.
4325         * lib/sha512.c: Likewise.
4326         * lib/sha512.h: Likewise.
4327         * lib/u64.h: Likewise.
4328         * m4/sha256.m4: Likewise.
4329         * m4/sha512.m4: Likewise.
4330         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
4331
4332 2008-05-10  Bruno Haible  <bruno@clisp.org>
4333
4334         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
4335         (Input/Output <stdio.h>): Add xprintf.
4336         (Signal handling <signal.h>): Add strsignal.
4337         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
4338         (Core language properties): Add func.
4339         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
4340         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
4341         strings.
4342         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
4343         (Input/output): New section.
4344         (File system functions): Add openat-die, stat-macros.
4345         (Networking functions): Add sockets.
4346         (Unicode string functions): Add unictype/*.
4347         (Support for building libraries and executables): Add gperf.
4348         (Support for building documentation): Add agpl-3.0.
4349         (Misc): Add nocrash.
4350
4351 2008-05-10  Bruno Haible  <bruno@clisp.org>
4352
4353         * modules/unictype/gen-ctype: New file.
4354
4355 2008-05-10  Jim Meyering  <meyering@redhat.com>
4356
4357         Make chdir-safer.c more efficient on a system with no symlinks.
4358         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
4359         also if ELOOP is zero.  Suggested by Bruno Haible.
4360
4361         Make chdir-safer.c slightly safer.
4362         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
4363         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
4364
4365         Avoid compile failure on systems without ELOOP (like mingw).
4366         * lib/chdir-safer.c (ELOOP): Define if not already defined.
4367         Reported by Bruno Haible.
4368
4369 2008-05-10  Bruno Haible  <bruno@clisp.org>
4370
4371         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
4372         (is_utf8_encoding): Use a case-insensitive comparison.
4373         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
4374         streq.
4375
4376 2008-05-10  Bruno Haible  <bruno@clisp.org>
4377
4378         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
4379         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
4380         * lib/unilbrk/ulc-common.h (iconv_string_length,
4381         iconv_string_keeping_offsets): Remove declarations.
4382         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
4383         Don't include <iconv.h>, streq.h, xsize.h.
4384         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
4385         conversion.
4386         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
4387         <iconv.h>, streq.h, xsize.h.
4388         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
4389         conversion.
4390         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
4391         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
4392         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
4393         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
4394
4395 2008-05-10  Bruno Haible  <bruno@clisp.org>
4396
4397         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
4398         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
4399
4400         * modules/unilbrk/u32-width-linebreaks-tests: New file.
4401         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
4402
4403         * modules/unilbrk/u16-width-linebreaks-tests: New file.
4404         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
4405
4406         * modules/unilbrk/u8-width-linebreaks-tests: New file.
4407         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
4408
4409         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
4410         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
4411
4412         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
4413         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
4414
4415         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
4416         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
4417
4418         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
4419         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
4420
4421 2008-05-10  Bruno Haible  <bruno@clisp.org>
4422
4423         Split up 'linebreak' module.
4424         * lib/unilbrk.h: New file, based on lib/linebreak.h.
4425         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
4426         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
4427         modifications.
4428         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
4429         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
4430         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
4431         lib/linebreak.c.
4432         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
4433         lib/linebreak.c.
4434         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
4435         lib/linebreak.c.
4436         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
4437         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
4438         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
4439         lib/linebreak.c.
4440         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
4441         lib/linebreak.c.
4442         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
4443         lib/linebreak.c.
4444         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
4445         lib/linebreak.c.
4446         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
4447         lib/linebreak.c.
4448         * modules/unilbrk/base: New file.
4449         * modules/unilbrk/tables: New file.
4450         * modules/unilbrk/u8-possible-linebreaks: New file.
4451         * modules/unilbrk/u16-possible-linebreaks: New file.
4452         * modules/unilbrk/u32-possible-linebreaks: New file.
4453         * modules/unilbrk/ulc-common: New file.
4454         * modules/unilbrk/ulc-possible-linebreaks: New file.
4455         * modules/unilbrk/u8-width-linebreaks: New file.
4456         * modules/unilbrk/u16-width-linebreaks: New file.
4457         * modules/unilbrk/u32-width-linebreaks: New file.
4458         * modules/unilbrk/ulc-width-linebreaks: New file.
4459         * lib/linebreak.h: Remove file.
4460         * lib/linebreak.c: Remove file.
4461         * m4/linebreak.m4: Remove file.
4462         * modules/linebreak: Remove file.
4463         * NEWS: Mention the changes.
4464
4465 2008-05-09  Eric Blake  <ebb9@byu.net>
4466
4467         Add xmemdup0.
4468         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
4469         implementation.
4470         * lib/xmalloc.c (xmemdup0): New C implementation.
4471
4472 2008-05-08  Bruno Haible  <bruno@clisp.org>
4473
4474         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
4475
4476 2008-05-07  Eric Blake  <ebb9@byu.net>
4477
4478         Support cross-compilation of <wctype.h>.
4479         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
4480         AC_CACHE_CHECK.
4481
4482 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
4483
4484         * build-aux/vc-list-files: Add support for bzr.
4485
4486 2008-05-03  Jim Meyering  <meyering@redhat.com>
4487
4488         avoid failed assertion with tight malloc
4489         * tests/test-getndelim2.c: Correct an off-by-one assertion.
4490
4491 2008-05-03  Simon Josefsson  <simon@josefsson.org>
4492
4493         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
4494         are needed from arpa/inet.h.
4495         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
4496         Reported by Bruno Haible.
4497
4498 2008-05-02  Jim Meyering  <meyering@redhat.com>
4499
4500         avoid compilation error on FreeBSD 6
4501         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
4502
4503 2008-05-01  Jim Meyering  <meyering@redhat.com>
4504
4505         useless-if-before-free: correct --help's exit status description
4506         * build-aux/useless-if-before-free (usage): Like grep, exit 0
4507         for one or more matches, etc.  Reported by Bruno Haible.
4508
4509         vc-list-files: make the stand-alone gnulib test work
4510         * modules/vc-list-files-tests (configure.ac):
4511         Define and AC_SUBST abs_aux_dir.
4512         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
4513         $(abs_top_srcdir) to each script and having each of them
4514         duplicate the work of setting PATH, set PATH here, using
4515         the new variable, abs_aux_dir instead.
4516         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
4517         * tests/test-vc-list-files-git.sh: Likewise.
4518         Reported by Bruno Haible.
4519
4520 2008-05-01  Bruno Haible  <bruno@clisp.org>
4521
4522         * lib/getndelim2.c (getndelim2): Fix newsize computation during
4523         reallocation. Rename 'done' to 'found_delimiter'.
4524
4525 2008-05-01  Jim Meyering  <meyering@redhat.com>
4526
4527         vc-list-files: accommodate /bin/sh like the one from Solaris 10
4528         * build-aux/vc-list-files: Use `...`, not $(...).
4529
4530 2008-04-30  Jim Meyering  <meyering@redhat.com>
4531
4532         add tests for vc-list-files
4533         * modules/vc-list-files-tests: New module.
4534         * tests/test-vc-list-files-cvs.sh: New file.
4535         * tests/test-vc-list-files-git.sh: New file.
4536
4537         avoid a warning from gcc
4538         * lib/getndelim2.c (IF_LINT): Define.
4539         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
4540
4541         vc-list-files: work properly with build-aux/cvsu, too
4542         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
4543         to all cvs-based clauses.
4544
4545         vc-list-files: work properly in the CVS+awk case, too
4546         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
4547
4548         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
4549         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
4550         take more than one file argument, so .  Add quotes, just in case $dir
4551         ever contains a shell meta-character.  Prompted by Soren Hansen in
4552         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
4553
4554 2008-04-29  Eric Blake  <ebb9@byu.net>
4555
4556         Optimize getndelim2 to use block operations when possible.
4557         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
4558         freadseek, and memchr2.
4559         * lib/getndelim2.c (getndelim2): Use them for block reads.
4560
4561 2008-04-29  Bruno Haible  <bruno@clisp.org>
4562
4563         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
4564         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
4565         * modules/inet_ntop (Depends-on): Add extensions.
4566         * modules/inet_pton (Depends-on): Likewise.
4567         Reported by Simon Josefsson.
4568
4569 2008-04-29  Jim Meyering  <meyering@redhat.com>
4570
4571         When the is more than one match in a block, match all of them.
4572         * build-aux/useless-if-before-free: Iterate through each block
4573         until there are no more matches.
4574
4575         Fix broken useless-if-before-free script.
4576         * build-aux/useless-if-before-free: Fix typo: missing "?" after
4577         the expression to match cast of argument to free-like function.
4578
4579 2008-04-29  Eric Blake  <ebb9@byu.net>
4580
4581         Use new header.
4582         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
4583
4584 2008-04-29  Jim Meyering  <meyering@redhat.com>
4585
4586         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
4587         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
4588         by gnulib to exist and to declare e.g., inet_ntop.
4589         Don't include "inet_ntop.h", now removed.
4590
4591         * m4/arpa_inet_h.m4: Remove trailing blanks.
4592
4593 2008-04-29  Eric Blake  <ebb9@byu.net>
4594
4595         Silence valgrind on safe reads beyond potential array bounds.
4596         * lib/rawmemchr.valgrind: New file.
4597         * lib/strchrnul.valgrind: Likewise.
4598         * modules/rawmemchr (Files): Distribute new file.
4599         * modules/strchrnul (Files): Likewise.
4600         Suggested by Bruno Haible.
4601
4602 2008-04-29  Bruno Haible  <bruno@clisp.org>
4603
4604         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
4605         (inet_ntop, inet_pton): Change portability warning's wording.
4606         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
4607         Invoke gl_CHECK_NEXT_HEADERS.
4608         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
4609         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
4610         set ARPA_INET_H.
4611         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
4612         * modules/arpa_inet (Description): No longer only for systems that
4613         lack it.
4614         (Depends-on): Add include_next.
4615         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
4616         HAVE_ARPA_INET_H.
4617
4618 2008-04-29  Jim Meyering  <meyering@redhat.com>
4619
4620         * modules/mkdir (License): Re-license as LGPLv2+.
4621
4622 2008-04-29  Bruno Haible  <bruno@clisp.org>
4623
4624         * modules/rawmemchr (Maintainer): Set to Eric.
4625         * modules/strchrnul (Maintainer): Likewise.
4626
4627 2008-04-29  Simon Josefsson  <simon@josefsson.org>
4628
4629         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
4630         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
4631
4632         * modules/arpa_inet (arpa/inet.h): Use them.
4633
4634 2008-04-28  Eric Blake  <ebb9@byu.net>
4635
4636         Test getndelim2.
4637         * modules/getndelim2-tests: New file.
4638         * tests/test-getndelim2.c: Likewise.
4639         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
4640         stream.
4641         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
4642
4643         * MODULES.html.sh: Document new module.
4644
4645 2008-04-20  Bruno Haible  <bruno@clisp.org>
4646
4647         * lib/c-stack.c (die): Use raise.
4648         * modules/c-stack (Depends-on): Add raise.
4649
4650 2008-04-28  Bruno Haible  <bruno@clisp.org>
4651
4652         Expect rpmatch to be declared.
4653         * lib/yesno.c (rpmatch): Remove declaration.
4654
4655         Declare rpmatch.
4656         * lib/stdlib.in.h (rpmatch): New declaration.
4657         * lib/rpmatch.c: Include <stdlib.h> first.
4658         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
4659         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
4660         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
4661         HAVE_RPMATCH.
4662         * modules/rpmatch (Depends-on): Add stdlib, extensions.
4663         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4664         (Include): Set to <stdlib.h>.
4665         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
4666         HAVE_RPMATCH.
4667         * NEWS: Document the change.
4668
4669 2008-04-28  Bruno Haible  <bruno@clisp.org>
4670
4671         Change rpmatch to use nl_langinfo when appropriate.
4672         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
4673         (N_): New macro.
4674         (localized_pattern): New function/macro.
4675         (try): Remove match, nomatch arguments. Copy the pattern into safe
4676         memory before caching it.
4677         (rpmatch): Use localized_pattern. Add translator comments.
4678         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
4679         Suggested by Eric Blake.
4680         * modules/rpmatch (Depends-on): Add stdbool.
4681
4682 2008-04-28  Eric Blake  <ebb9@byu.net>
4683
4684         Add rawmemchr module, matching glibc.
4685         * modules/string (Makefile.am): New indicator.
4686         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
4687         * lib/string.in.h (rawmemchr): Declare when appropriate.
4688         * modules/rawmemchr: New file.
4689         * m4/rawmemchr.m4: Likewise.
4690         * lib/rawmemchr.c: Likewise.
4691         * modules/rawmemchr-tests: Likewise.
4692         * tests/test-rawmemchr.c: Likewise.
4693         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
4694         module.
4695         * modules/strchrnul (Depends-on): Add rawmemchr.
4696         * lib/strchrnul.c (strchrnul): Optimize a corner case.
4697
4698         Whitespace cleanup.
4699         * tests/test-strchrnul.c: Reindent.
4700         * lib/strchrnul.c: Likewise.
4701
4702         Optimize and test strchrnul.
4703         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
4704         * modules/strchrnul-tests: New file.
4705         * tests/test-strchrnul.c: Likewise.
4706
4707         Remove intprops dependency.
4708         * modules/memchr (Depends-on): Remove intprops.
4709         * modules/memrchr (Depends-on): Likewise.
4710         * modules/memchr2 (Depends-on): Likewise.
4711         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
4712         * lib/memrchr.c (__memrchr): Likewise.
4713         * lib/memrchr2.c (memchr2): Likewise.
4714         Reported by Simon Josefsson.
4715
4716 2008-04-28  Simon Josefsson  <simon@josefsson.org>
4717
4718         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
4719         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4720
4721 2008-04-28  Simon Josefsson  <simon@josefsson.org>
4722
4723         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
4724
4725         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
4726
4727         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
4728
4729         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
4730         declarations.
4731         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
4732
4733         * m4/inet_pton.m4: Don't check for header files.
4734
4735         * m4/inet_ntop.m4: Don't check for header files.
4736
4737 2008-04-28  Simon Josefsson  <simon@josefsson.org>
4738
4739         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
4740         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
4741         trigger for cygwin).
4742         Reported by Bruno Haible  <bruno@clisp.org>.
4743
4744 2008-04-28  Bruno Haible  <bruno@clisp.org>
4745
4746         * doc/posix-functions/strdup.texi: Mention mingw problem.
4747
4748 2008-04-27  Bruno Haible  <bruno@clisp.org>
4749
4750         * modules/stat-time-tests (Depends-on): Add sleep.
4751         * tests/test-stat-time.c (force_unlink): New function.
4752         (cleanup): Use it.
4753         (test_mtime): Remove the ctime related tests.
4754         (test_ctime): New function, containing the ctime related tests.
4755         (main): Call test_ctime, except on native Windows platforms.
4756
4757 2008-04-27  Bruno Haible  <bruno@clisp.org>
4758
4759         * lib/rpmatch.c (rpmatch): Add some comments.
4760         Reported by James Youngman <jay@gnu.org>.
4761
4762 2008-04-27  Bruno Haible  <bruno@clisp.org>
4763
4764         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
4765         quiet NaNs.
4766
4767 2008-04-27  Bruno Haible  <bruno@clisp.org>
4768
4769         Make test-yesno.sh work on mingw.
4770         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
4771         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
4772         (main): Set stdin to binary mode.
4773         * modules/yesno-tests (Depends-on): Add binary-io.
4774
4775 2008-04-27  Bruno Haible  <bruno@clisp.org>
4776
4777         Fix 'isfinite' on x86, x86_64, ia64 platforms.
4778         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
4779         argument that lie outside the IEEE 854 domain.
4780         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
4781         (gl_ISFINITE): Use it.
4782         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
4783
4784 2008-04-27  Bruno Haible  <bruno@clisp.org>
4785
4786         Allow local renaming in config.h.
4787         * lib/memrchr.c (memrchr): Don't undefine outside libc.
4788
4789 2008-04-27  Bruno Haible  <bruno@clisp.org>
4790
4791         * lib/memchr.c (__memchr): Change type of 'i'.
4792         * lib/memchr2.c (memchr2): Likewise.
4793
4794 2008-04-26  Eric Blake  <ebb9@byu.net>
4795         and Bruno Haible  <bruno@clisp.org>
4796
4797         Optimize and test memrchr.
4798         * modules/memrchr (Depends-on): Add intprops.
4799         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
4800         * modules/memrchr-tests: New file.
4801         * tests/test-memrchr.c: New file.
4802
4803 2008-04-26  Bruno Haible  <bruno@clisp.org>
4804
4805         Add tentative support for DragonFly BSD.
4806         * lib/stdio-impl.h: Add macros for DragonFly BSD.
4807         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
4808         fp.
4809         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
4810         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
4811         * lib/fpurge.c (fpurge): Likewise.
4812         * lib/freadable.c (freaadable): Likewise.
4813         * lib/freadahead.c (freadahead): Likewise.
4814         * lib/freading.c (freading): Likewise.
4815         * lib/freadptr.c (freadptr): Likewise.
4816         * lib/freadseek.c (freadptrinc): Likewise.
4817         * lib/fseeko.c (fseeko): Likewise.
4818         * lib/fseterr.c (fseterr): Likewise.
4819         * lib/fwritable.c (fwritable): Likewise.
4820         * lib/fwriting.c (fwriting): Likewise.
4821
4822 2008-04-26  Bruno Haible  <bruno@clisp.org>
4823
4824         * lib/stdio-impl.h: New file.
4825         * lib/fbufmode.c: Include stdio-impl.h.
4826         (fbufmode): Use fp_, remove redundant #defines.
4827         * lib/fflush.c: Include stdio-impl.h.
4828         (clear_ungetc_buffer): Remove redundant #defines.
4829         * lib/fpurge.c: Include stdio-impl.h.
4830         (fpurge): Remove redundant #defines.
4831         * lib/freadable.c: Include stdio-impl.h.
4832         (freadable): Remove redundant #defines.
4833         * lib/freadahead.c: Include stdio-impl.h.
4834         (freadahead): Remove redundant #defines.
4835         * lib/freading.c: Include stdio-impl.h.
4836         (freading): Remove redundant #defines.
4837         * lib/freadptr.c: Include stdio-impl.h.
4838         (freadptr): Remove redundant #defines.
4839         * lib/freadseek.c: Include stdio-impl.h.
4840         (freadptrinc): Remove redundant #defines.
4841         * lib/fseeko.c: Include stdio-impl.h.
4842         (rpl_fseeko): Remove redundant #defines.
4843         * lib/fseterr.c: Include stdio-impl.h.
4844         (fseterr): Remove redundant #defines.
4845         * lib/fwritable.c: Include stdio-impl.h.
4846         (fwritable: Remove redundant #defines.
4847         * lib/fwriting.c: Include stdio-impl.h.
4848         (fwriting): Remove redundant #defines.
4849         * modules/fbufmode (Files): Add lib/stdio-impl.h.
4850         * modules/fflush (Files): Likewise.
4851         * modules/fpurge (Files): Likewise.
4852         * modules/freadable (Files): Likewise.
4853         * modules/freadahead (Files): Likewise.
4854         * modules/freading (Files): Likewise.
4855         * modules/freadptr (Files): Likewise.
4856         * modules/freadseek (Files): Likewise.
4857         * modules/fseeko (Files): Likewise.
4858         * modules/fseterr (Files): Likewise.
4859         * modules/fwritable (Files): Likewise.
4860         * modules/fwriting (Files): Likewise.
4861
4862 2008-04-26  Bruno Haible  <bruno@clisp.org>
4863
4864         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
4865         restore_seek_optimization, update_fpos_cache): New functions, extracted
4866         from rpl_fflush.
4867         (rpl_fflush): Use them.
4868         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
4869         (gl_REPLACE_FFLUSH): Use it.
4870
4871 2008-04-26  Bruno Haible  <bruno@clisp.org>
4872
4873         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
4874         on Solaris.
4875         * tests/test-xstrtoimax.sh: Likewise.
4876         * tests/test-xstrtoumax.sh: Likewise.
4877         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4878
4879 2008-04-26  Bruno Haible  <bruno@clisp.org>
4880
4881         * modules/memchr-tests: New file.
4882         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
4883
4884 2008-04-26  Eric Blake  <ebb9@byu.net>
4885             Bruno Haible  <bruno@clisp.org>
4886
4887         * lib/memchr.c: Include intprops.h.
4888         (__memchr): Optimize parallel detection of matching bytes. Rename local
4889         variables. Add explanatory comments.
4890
4891 2008-04-26  Bruno Haible  <bruno@clisp.org>
4892
4893         Fix module 'memchr', broken since 2000-10-28.
4894         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
4895
4896 2008-04-26  Bruno Haible  <bruno@clisp.org>
4897
4898         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
4899         comments.
4900
4901 2008-04-25  Eric Blake  <ebb9@byu.net>
4902
4903         Use native fstatat on cygwin 1.7.0.
4904         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
4905         first.
4906
4907 2008-04-23  Eric Blake  <ebb9@byu.net>
4908
4909         Improve memchr2 performance.
4910         * lib/memchr2.c (memchr2): Further optimize parallel detection of
4911         NUL bytes.
4912         * modules/memchr2 (Depends-on): Use intprops.h.
4913
4914 2008-04-23  Simon Josefsson  <simon@josefsson.org>
4915
4916         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
4917         an inline function instead of a CPP macro.  Patch by Ben Pfaff
4918         <blp@cs.stanford.edu>.
4919
4920 2008-04-23  Simon Josefsson  <simon@josefsson.org>
4921
4922         * lib/arpa_inet.in.h: New file.
4923
4924         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
4925         (Makefile.am): Sed in substitute header file.
4926
4927         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
4928         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
4929
4930         * modules/inet_ntop (configure.ac): Use
4931         gl_ARPA_INET_MODULE_INDICATOR.
4932
4933         * modules/inet_pton (configure.ac): Use
4934         gl_ARPA_INET_MODULE_INDICATOR.
4935
4936 2008-04-22  Jim Meyering  <meyering@redhat.com>
4937
4938         * modules/verify (License): Re-license as LGPLv2+.
4939
4940 2008-04-22  Simon Josefsson  <simon@josefsson.org>
4941
4942         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
4943         parameter to void* as per POSIX standard (MinGW uses char*).
4944
4945 2008-04-21  Bruno Haible  <bruno@clisp.org>
4946
4947         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
4948         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
4949         Define to replacements if REPLACE_ISWCNTRL is 1.
4950         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
4951         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
4952         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
4953         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
4954         what it fixes.
4955         * doc/posix-functions/iswalpha.texi: Likewise.
4956         * doc/posix-functions/iswblank.texi: Likewise.
4957         * doc/posix-functions/iswcntrl.texi: Likewise.
4958         * doc/posix-functions/iswdigit.texi: Likewise.
4959         * doc/posix-functions/iswgraph.texi: Likewise.
4960         * doc/posix-functions/iswlower.texi: Likewise.
4961         * doc/posix-functions/iswprint.texi: Likewise.
4962         * doc/posix-functions/iswpunct.texi: Likewise.
4963         * doc/posix-functions/iswspace.texi: Likewise.
4964         * doc/posix-functions/iswupper.texi: Likewise.
4965         * doc/posix-functions/iswxdigit.texi: Likewise.
4966         Reported by Alain Guibert.
4967
4968 2008-04-21  Bruno Haible  <bruno@clisp.org>
4969
4970         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
4971         Patch by Alain Guibert.
4972
4973 2008-04-21  Bruno Haible  <bruno@clisp.org>
4974
4975         Fix test failures on mingw.
4976         * tests/test-xstrtol.c (print_no_progname): New function.
4977         (main): Install it in error_print_progname hook.
4978         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
4979         * tests/test-xstrtoimax.sh: Likewise.
4980         * tests/test-xstrtoumax.sh: Likewise.
4981
4982 2008-04-21  Bruno Haible  <bruno@clisp.org>
4983
4984         Fix test failure on mingw.
4985         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
4986
4987 2008-04-21  Bruno Haible  <bruno@clisp.org>
4988
4989         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
4990         Actually assign a value.
4991
4992 2008-04-20  Bruno Haible  <bruno@clisp.org>
4993
4994         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
4995         take 2.
4996         * lib/canonicalize.c (canonicalize_file_name): Elide if the
4997         'canonicalize-lgpl' module is also used.
4998         * lib/canonicalize-lgpl.c: Undo last change.
4999         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
5000
5001 2008-04-20  Bruno Haible  <bruno@clisp.org>
5002
5003         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
5004         config.h. Provide _mkdir based fallback for mingw.
5005         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
5006         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
5007         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
5008         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
5009         rather than defining mkdir in config.h.
5010         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
5011         (gl_SYS_STAT_H_DEFAULTS): New macro.
5012         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
5013         HAVE_IO_H any more.
5014         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
5015         HAVE_DECL_MKDIR and HAVE_IO_H.
5016
5017 2008-04-20  Bruno Haible  <bruno@clisp.org>
5018
5019         * lib/isapipe.c: Port to native Windows platforms.
5020
5021 2008-04-20  Bruno Haible  <bruno@clisp.org>
5022
5023         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
5024
5025 2008-04-21  Eric Blake  <ebb9@byu.net>
5026
5027         Work around preprocessors that don't handle UINTMAX_MAX.
5028         * lib/memchr2.c (memchr2): Avoid embedded #if.
5029         Reported by Alain Guibert, fix suggested by Bruno Haible.
5030
5031 2008-04-21  Simon Josefsson  <simon@josefsson.org>
5032
5033         * doc/posix-functions/strftime.texi (strftime): Explain better
5034         Windows incompatibility.  Suggested by Micah Cowan
5035         <micah@cowan.name>.
5036
5037 2008-04-20  Bruno Haible  <bruno@clisp.org>
5038
5039         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
5040         unistr/u8-mblen.
5041
5042 2008-04-20  Bruno Haible  <bruno@clisp.org>
5043
5044         Fix test failure on platforms with non-GNU iconv.
5045         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
5046         (U_TO_U8): Use it, rather than u16_to_u8.
5047         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
5048         units at the end of the input string.
5049         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
5050
5051 2008-04-20  Bruno Haible  <bruno@clisp.org>
5052
5053         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
5054         when the resulting length is 0.
5055         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
5056
5057 2008-04-20  Bruno Haible  <bruno@clisp.org>
5058
5059         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
5060         works.
5061         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
5062
5063 2008-04-20  Bruno Haible  <bruno@clisp.org>
5064
5065         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
5066         * modules/tsearch-tests (configure.ac): Test for initstate function.
5067
5068 2008-04-20  Bruno Haible  <bruno@clisp.org>
5069
5070         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
5071         for nlink_t if missing.
5072         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
5073
5074 2008-04-19  Bruno Haible  <bruno@clisp.org>
5075
5076         Work around snprintf bug on Linux libc5.
5077         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
5078         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5079         gl_SNPRINTF_SIZE1.
5080         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5081         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
5082         that test failed.
5083         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
5084         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
5085         * modules/snprintf (Files): Add m4/printf.m4.
5086         * modules/vsnprintf (Files): Likewise.
5087         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
5088         * doc/posix-functions/vsnprintf.texi: Likewise.
5089
5090 2008-04-19  Bruno Haible  <bruno@clisp.org>
5091
5092         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
5093         from 0.0058 to less than 10^-7.
5094
5095 2008-04-19  Bruno Haible  <bruno@clisp.org>
5096
5097         Fix rounding when a precision is given.
5098         * lib/vasnprintf.c (is_borderline): New function.
5099         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
5100         9...9x.
5101         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
5102         %e, %g.
5103         * tests/test-vasprintf-posix.c (test_function): Likewise.
5104         * tests/test-snprintf-posix.h (test_function): Likewise.
5105         * tests/test-sprintf-posix.h (test_function): Likewise.
5106         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
5107         * tests/test-printf-posix.h (test_function): Likewise.
5108         * tests/test-printf-posix.output: Update.
5109         Reported by John Darrington <john@darrington.wattle.id.au> via
5110         Ben Pfaff <blp@cs.stanford.edu>.
5111
5112 2008-04-18  Simon Josefsson  <simon@josefsson.org>
5113
5114         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
5115         Suggested by Bruno Haible <bruno@clisp.org>.
5116
5117 2008-04-17  Bruno Haible  <bruno@clisp.org>
5118
5119         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
5120         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
5121         implementation.
5122         Patch by Bruce Merry <bmerry@gmail.com>.
5123
5124 2008-04-17  Simon Josefsson  <simon@josefsson.org>
5125
5126         * doc/posix-functions/strftime.texi (strftime): Mention that %e
5127         doesn't work under Windows.
5128
5129 2008-04-16  Bruno Haible  <bruno@clisp.org>
5130
5131         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
5132         New macros.
5133         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
5134         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
5135         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
5136         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
5137         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
5138         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
5139         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
5140         macros.
5141         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
5142         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
5143         Northern Sotho, Uighur.
5144
5145 2008-04-16  Bruno Haible  <bruno@clisp.org>
5146
5147         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
5148         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
5149         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
5150         Reported by Daniel Bergström <daniel@octocode.com>.
5151
5152 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
5153             Bruno Haible  <bruno@clisp.org>
5154
5155         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
5156         function.
5157         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
5158         New functions, mostly extracted from gl_locale_name_default.
5159         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
5160
5161 2008-04-16  Eric Blake  <ebb9@byu.net>
5162
5163         Adjust strtod detection to catch glibc 2.7 bug.
5164         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
5165         Reported by John Gatewood Ham.
5166
5167 2008-04-16  Bruno Haible  <bruno@clisp.org>
5168
5169         Add tentative support for Linux libc5.
5170         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
5171         * lib/fpurge.c (fpurge): Likewise.
5172         * lib/freadable.c (freadable): Likewise.
5173         * lib/freadahead.c (freadahead): Likewise.
5174         * lib/freading.c (freading): Likewise.
5175         * lib/freadptr.c (freadptr): Likewise.
5176         * lib/freadseek.c (freadptrinc): Likewise.
5177         * lib/fseeko.c (rpl_fseeko): Likewise.
5178         * lib/fseterr.c (fseterr): Likewise.
5179         * lib/fwritable.c (fwritable): Likewise.
5180         * lib/fwriting.c (fwriting): Likewise.
5181         Reported by Alain Guibert <alguibert+bts@free.fr>.
5182
5183 2008-04-15  Bruno Haible  <bruno@clisp.org>
5184
5185         * modules/mathl (configure.ac): Define module indicator.
5186
5187 2008-04-15  Bruno Haible  <bruno@clisp.org>
5188
5189         * lib/logl.c (logl): Remove unused variables.
5190
5191 2008-04-15  Bruno Haible  <bruno@clisp.org>
5192
5193         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
5194         fails.
5195
5196 2008-04-15  Bruno Haible  <bruno@clisp.org>
5197
5198         * lib/trim.c (trim2): Fix argument of isspace() macro.
5199
5200 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
5201
5202         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
5203         to 0.
5204         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
5205
5206 2008-04-14  Bruno Haible  <bruno@clisp.org>
5207
5208         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
5209         AC_LANG_PROGRAM argument.
5210         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
5211         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
5212         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
5213         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
5214         * m4/math_h.m4 (gl_MATH_H): Likewise.
5215         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
5216         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
5217         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
5218         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
5219         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
5220         * m4/regex.m4 (gl_REGEX): Likewise.
5221         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
5222         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
5223         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
5224         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
5225         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
5226         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
5227         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
5228         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
5229
5230 2008-04-14  Jim Meyering  <meyering@redhat.com>
5231
5232         test-strtod: fix typos: s/abs/fabs/
5233         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
5234
5235 2008-04-13  Bruno Haible  <bruno@clisp.org>
5236
5237         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
5238         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
5239         module is also used and while not building the reloc-wrapper.
5240
5241 2008-04-13  Bruno Haible  <bruno@clisp.org>
5242
5243         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
5244
5245 2008-04-13  Bruno Haible  <bruno@clisp.org>
5246
5247         Fix AIX compilation failure introduced on 2008-04-02.
5248         * tests/test-frexp.c (exp): Undefine before redefining.
5249         * tests/test-frexpl.c (exp): Likewise.
5250
5251 2008-04-13  Bruno Haible  <bruno@clisp.org>
5252
5253         Work around a HP-UX stdio bug.
5254         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
5255         * tests/test-ftello.c (main): Likewise.
5256         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
5257         * doc/posix-functions/ftello.texi: Likewise.
5258
5259 2008-04-13  Bruno Haible  <bruno@clisp.org>
5260
5261         Make test-signbit pass on HP-UX/hppa.
5262         * tests/test-signbit.c (minus_zerol): New variable.
5263         (test_signbitl): Use it.
5264
5265 2008-04-13  Bruno Haible  <bruno@clisp.org>
5266
5267         Make truncl work on OSF/1 4.0.
5268         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
5269         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
5270         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
5271         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
5272         HAVE_DECL_TRUNCL.
5273         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
5274         HAVE_DECL_TRUNCL.
5275         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
5276
5277 2008-04-13  Bruno Haible  <bruno@clisp.org>
5278
5279         * lib/unictype.h: Remove trailing comma from enumeration definitions.
5280
5281 2008-04-13  Bruno Haible  <bruno@clisp.org>
5282
5283         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
5284         expression, so as to avoid HP-UX 11 cc compiler bug.
5285
5286 2008-04-13  Bruno Haible  <bruno@clisp.org>
5287
5288         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
5289
5290 2008-04-13  Bruno Haible  <bruno@clisp.org>
5291
5292         * lib/git-merge-changelog.c: Remove empty declaration outside of
5293         functions.
5294
5295 2008-04-13  Bruno Haible  <bruno@clisp.org>
5296
5297         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
5298
5299 2008-04-13  Bruno Haible  <bruno@clisp.org>
5300
5301         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
5302         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
5303         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
5304         also if it exists but lacks definitions of the SHUT_* macros.
5305         * modules/sys_socket (Description): Update.
5306         Reported by Elbert Pol <e.pol@chello.nl>.
5307
5308 2008-04-13  Bruno Haible  <bruno@clisp.org>
5309
5310         * lib/localcharset.c (OS2): Don't redefine if already defined.
5311         Reported by Elbert Pol <e.pol@chello.nl>.
5312
5313 2008-04-13  Bruno Haible  <bruno@clisp.org>
5314
5315         * lib/binary-io.h [__EMX__]: Include <io.h>.
5316         Reported by Elbert Pol <e.pol@chello.nl>.
5317
5318 2008-04-12  Bruno Haible  <bruno@clisp.org>
5319
5320         * lib/fpucw.h: Enable the definitions also for x86_64.
5321         Needed for NetBSD/x86_64.
5322         Reported by Thomas Klausner <tk@giga.or.at>.
5323
5324 2008-04-12  Bruno Haible  <bruno@clisp.org>
5325
5326         * tests/test-strtod.c: Include isnand.h.
5327         (main): Use isnand instead of isnan.
5328         Reported by Jim Meyering.
5329
5330 2008-04-12  Bruno Haible  <bruno@clisp.org>
5331
5332         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
5333         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
5334
5335 2008-04-12  Jim Meyering  <meyering@redhat.com>
5336
5337         * m4/math_h.m4 (gl_MATH_H): Fix typos.
5338
5339 2008-04-12  Bruno Haible  <bruno@clisp.org>
5340
5341         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
5342         Reported by Elbert Pol <e.pol@chello.nl>.
5343
5344 2008-04-12  Eric Blake  <ebb9@byu.net>
5345
5346         Work around Solaris 10 math.h bug.
5347         * m4/math_h.m4 (gl_MATH_H): Check for bug.
5348         (gl_MATH_H_DEFAULTS): Set up default.
5349         * modules/math (Makefile.am): Replace new indicators.
5350         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
5351         * tests/test-math.c (main): Test this.
5352         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
5353         * doc/posix-headers/math.texi (math.h): Mention bug.
5354         Reported by Nelson H. F. Beebe and Jim Meyering.
5355
5356 2008-04-11  Bruno Haible  <bruno@clisp.org>
5357
5358         Adapt to future versions of Apple GCC.
5359         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
5360         Reported by Peter O'Gorman <peter@pogma.com>.
5361
5362 2008-04-11  Bruno Haible  <bruno@clisp.org>
5363
5364         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
5365
5366 2008-04-11  Bruno Haible  <bruno@clisp.org>
5367
5368         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
5369
5370         * modules/getaddrinfo-tests (Makefile.am): Define
5371         test_getaddrinfo_LDADD.
5372
5373 2008-04-11  Bruno Haible  <bruno@clisp.org>
5374
5375         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
5376         (init): Fix syntax error.
5377         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
5378         is declared.
5379
5380 2008-04-11  Bruno Haible  <bruno@clisp.org>
5381
5382         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
5383         * modules/glob (Depends-on): Add stdbool.
5384
5385 2008-04-11  Bruno Haible  <bruno@clisp.org>
5386
5387         * lib/trim.c: Include <string.h>.
5388
5389 2008-04-11  Eric Blake  <ebb9@byu.net>
5390
5391         Avoid compile failure on OS/2.
5392         * lib/regex_internal.h (internal_function): Disable optimization
5393         on OS/2 (__EMX__), where it caused compiler error.
5394         Reported by Elbert Pol.
5395
5396 2008-04-11  Bruno Haible  <bruno@clisp.org>
5397
5398         Flush the standard error stream before aborting. Needed on mingw.
5399         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
5400         * tests/test-array_list.c (ASSERT): Likewise.
5401         * tests/test-array_oset.c (ASSERT): Likewise.
5402         * tests/test-avltree_list.c (ASSERT): Likewise.
5403         * tests/test-avltree_oset.c (ASSERT): Likewise.
5404         * tests/test-avltreehash_list.c (ASSERT): Likewise.
5405         * tests/test-binary-io.c (ASSERT): Likewise.
5406         * tests/test-byteswap.c (ASSERT): Likewise.
5407         * tests/test-c-ctype.c (ASSERT): Likewise.
5408         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
5409         * tests/test-c-strcasestr.c (ASSERT): Likewise.
5410         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
5411         * tests/test-c-strstr.c (ASSERT): Likewise.
5412         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
5413         * tests/test-canonicalize.c (ASSERT): Likewise.
5414         * tests/test-carray_list.c (ASSERT): Likewise.
5415         * tests/test-ceilf1.c (ASSERT): Likewise.
5416         * tests/test-ceilf2.c (ASSERT): Likewise.
5417         * tests/test-ceill.c (ASSERT): Likewise.
5418         * tests/test-count-one-bits.c (ASSERT): Likewise.
5419         * tests/test-fbufmode.c (ASSERT): Likewise.
5420         * tests/test-fflush2.c (ASSERT): Likewise.
5421         * tests/test-floorf1.c (ASSERT): Likewise.
5422         * tests/test-floorf2.c (ASSERT): Likewise.
5423         * tests/test-floorl.c (ASSERT): Likewise.
5424         * tests/test-fopen.c (ASSERT): Likewise.
5425         * tests/test-fpending.c (ASSERT): Likewise.
5426         * tests/test-fprintf-posix.c (ASSERT): Likewise.
5427         * tests/test-fpurge.c (ASSERT): Likewise.
5428         * tests/test-freadable.c (ASSERT): Likewise.
5429         * tests/test-freadahead.c (ASSERT): Likewise.
5430         * tests/test-freading.c (ASSERT): Likewise.
5431         * tests/test-freadptr.c (ASSERT): Likewise.
5432         * tests/test-freadptr2.c (ASSERT): Likewise.
5433         * tests/test-freadseek.c (ASSERT): Likewise.
5434         * tests/test-freopen.c (ASSERT): Likewise.
5435         * tests/test-frexp.c (ASSERT): Likewise.
5436         * tests/test-frexpl.c (ASSERT): Likewise.
5437         * tests/test-fseek.c (ASSERT): Likewise.
5438         * tests/test-fseeko.c (ASSERT): Likewise.
5439         * tests/test-fstrcmp.c (ASSERT): Likewise.
5440         * tests/test-ftell.c (ASSERT): Likewise.
5441         * tests/test-ftello.c (ASSERT): Likewise.
5442         * tests/test-func.c (ASSERT): Likewise.
5443         * tests/test-fwritable.c (ASSERT): Likewise.
5444         * tests/test-fwriting.c (ASSERT): Likewise.
5445         * tests/test-getdelim.c (ASSERT): Likewise.
5446         * tests/test-getline.c (ASSERT): Likewise.
5447         * tests/test-i-ring.c (ASSERT): Likewise.
5448         * tests/test-iconv-utf.c (ASSERT): Likewise.
5449         * tests/test-iconv.c (ASSERT): Likewise.
5450         * tests/test-isfinite.c (ASSERT): Likewise.
5451         * tests/test-isnand.c (ASSERT): Likewise.
5452         * tests/test-isnanf.c (ASSERT): Likewise.
5453         * tests/test-isnanl.h (ASSERT): Likewise.
5454         * tests/test-ldexpl.c (ASSERT): Likewise.
5455         * tests/test-linked_list.c (ASSERT): Likewise.
5456         * tests/test-linkedhash_list.c (ASSERT): Likewise.
5457         * tests/test-localename.c (ASSERT): Likewise.
5458         * tests/test-lseek.c (ASSERT): Likewise.
5459         * tests/test-mbscasecmp.c (ASSERT): Likewise.
5460         * tests/test-mbscasestr1.c (ASSERT): Likewise.
5461         * tests/test-mbscasestr2.c (ASSERT): Likewise.
5462         * tests/test-mbscasestr3.c (ASSERT): Likewise.
5463         * tests/test-mbscasestr4.c (ASSERT): Likewise.
5464         * tests/test-mbschr.c (ASSERT): Likewise.
5465         * tests/test-mbscspn.c (ASSERT): Likewise.
5466         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
5467         * tests/test-mbspbrk.c (ASSERT): Likewise.
5468         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
5469         * tests/test-mbsrchr.c (ASSERT): Likewise.
5470         * tests/test-mbsspn.c (ASSERT): Likewise.
5471         * tests/test-mbsstr1.c (ASSERT): Likewise.
5472         * tests/test-mbsstr2.c (ASSERT): Likewise.
5473         * tests/test-mbsstr3.c (ASSERT): Likewise.
5474         * tests/test-memchr2.c (ASSERT): Likewise.
5475         * tests/test-memmem.c (ASSERT): Likewise.
5476         * tests/test-open.c (ASSERT): Likewise.
5477         * tests/test-printf-frexp.c (ASSERT): Likewise.
5478         * tests/test-printf-frexpl.c (ASSERT): Likewise.
5479         * tests/test-printf-posix.c (ASSERT): Likewise.
5480         * tests/test-quotearg.c (ASSERT): Likewise.
5481         * tests/test-rbtree_list.c (ASSERT): Likewise.
5482         * tests/test-rbtree_oset.c (ASSERT): Likewise.
5483         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
5484         * tests/test-round1.c (ASSERT): Likewise.
5485         * tests/test-roundf1.c (ASSERT): Likewise.
5486         * tests/test-roundl.c (ASSERT): Likewise.
5487         * tests/test-signbit.c (ASSERT): Likewise.
5488         * tests/test-sleep.c (ASSERT): Likewise.
5489         * tests/test-snprintf-posix.c (ASSERT): Likewise.
5490         * tests/test-snprintf.c (ASSERT): Likewise.
5491         * tests/test-sprintf-posix.c (ASSERT): Likewise.
5492         * tests/test-stat-time.c (ASSERT): Likewise.
5493         * tests/test-strcasestr.c (ASSERT): Likewise.
5494         * tests/test-strerror.c (ASSERT): Likewise.
5495         * tests/test-striconv.c (ASSERT): Likewise.
5496         * tests/test-striconveh.c (ASSERT): Likewise.
5497         * tests/test-striconveha.c (ASSERT): Likewise.
5498         * tests/test-strsignal.c (ASSERT): Likewise.
5499         * tests/test-strstr.c (ASSERT): Likewise.
5500         * tests/test-strtod.c (ASSERT): Likewise.
5501         * tests/test-trunc1.c (ASSERT): Likewise.
5502         * tests/test-trunc2.c (ASSERT): Likewise.
5503         * tests/test-truncf1.c (ASSERT): Likewise.
5504         * tests/test-truncf2.c (ASSERT): Likewise.
5505         * tests/test-truncl.c (ASSERT): Likewise.
5506         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
5507         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
5508         * tests/test-vasnprintf.c (ASSERT): Likewise.
5509         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
5510         * tests/test-vasprintf.c (ASSERT): Likewise.
5511         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
5512         * tests/test-vprintf-posix.c (ASSERT): Likewise.
5513         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
5514         * tests/test-vsnprintf.c (ASSERT): Likewise.
5515         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
5516         * tests/test-wcwidth.c (ASSERT): Likewise.
5517         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
5518         * tests/test-xprintf-posix.c (ASSERT): Likewise.
5519         * tests/test-xvasprintf.c (ASSERT): Likewise.
5520         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
5521         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
5522         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
5523         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
5524         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
5525         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
5526         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
5527         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
5528         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
5529         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
5530         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
5531         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
5532         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
5533         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
5534         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
5535         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
5536         * tests/unictype/test-block_list.c (ASSERT): Likewise.
5537         * tests/unictype/test-block_of.c (ASSERT): Likewise.
5538         * tests/unictype/test-block_test.c (ASSERT): Likewise.
5539         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
5540         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
5541         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
5542         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
5543         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
5544         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
5545         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
5546         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
5547         * tests/unictype/test-combining.c (ASSERT): Likewise.
5548         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
5549         * tests/unictype/test-digit.c (ASSERT): Likewise.
5550         * tests/unictype/test-mirror.c (ASSERT): Likewise.
5551         * tests/unictype/test-numeric.c (ASSERT): Likewise.
5552         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
5553         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
5554         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
5555         * tests/unictype/test-scripts.c (ASSERT): Likewise.
5556         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
5557         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
5558         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
5559         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
5560         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
5561         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
5562         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
5563         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
5564         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
5565         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
5566         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
5567         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
5568         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
5569         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
5570         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
5571         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
5572         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
5573         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
5574         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
5575         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
5576         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
5577         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
5578         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
5579         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
5580         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
5581         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
5582         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
5583         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
5584         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
5585         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
5586         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
5587         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
5588         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
5589         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
5590         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
5591         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
5592         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
5593         Reported by Eric Blake.
5594
5595 2008-04-11  Bruno Haible  <bruno@clisp.org>
5596
5597         * lib/wchar.in.h: Tweak comment.
5598
5599 2008-04-11  Bruno Haible  <bruno@clisp.org>
5600
5601         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
5602         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
5603         gl_COMMON.
5604         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
5605
5606 2008-04-11  Bruno Haible  <bruno@clisp.org>
5607
5608         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
5609
5610 2008-04-11  Simon Josefsson  <simon@josefsson.org>
5611
5612         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
5613         of attempting to use non-existing /dev/*random.  Based on patch
5614         from Adam Strzelecki <ono@java.pl> in
5615         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
5616
5617 2008-04-08  Bruno Haible  <bruno@clisp.org>
5618
5619         Add tentative support for emx+gcc.
5620         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
5621         * lib/fpurge.c (fpurge): Likewise.
5622         * lib/freadable.c (freadable): Likewise.
5623         * lib/freadahead.c (freadahead): Likewise.
5624         * lib/freading.c (freading): Likewise.
5625         * lib/freadptr.c (freadptr): Likewise.
5626         * lib/freadseek.c (freadptrinc): Likewise.
5627         * lib/fseeko.c (rpl_fseeko): Likewise.
5628         * lib/fseterr.c (fseterr): Likewise.
5629         * lib/fwritable.c (fwritable): Likewise.
5630         * lib/fwriting.c (fwriting): Likewise.
5631         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
5632
5633 2008-04-09  Eric Blake  <ebb9@byu.net>
5634
5635         Avoid some autoconf warnings.
5636         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
5637         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
5638         * m4/afs.m4 (gl_AFS): Likewise.
5639         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
5640         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
5641         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
5642         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
5643         (gl_INTEGER_TYPE_SUFFIX): Likewise.
5644         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
5645         (AC_CHECK_DECLS_ONCE): Likewise.
5646         Rename file...
5647         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
5648         gnulib-tool requires autoconf 2.59 or better.
5649         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
5650
5651 2008-04-08  Eric Blake  <ebb9@byu.net>
5652
5653         Use 'git describe --match' if present (added in git 1.5.5).
5654         * build-aux/git-version-gen: Limit result to tags that match 'v*'
5655         if possible.
5656
5657 2008-04-08  Bruno Haible  <bruno@clisp.org>
5658
5659         Add tentative support for OpenServer.
5660         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
5661         _ptr, _cnt.
5662         * lib/fpurge.c (fpurge): Likewise.
5663         * lib/freadable.c (freadable): Likewise.
5664         * lib/freadahead.c (freadahead): Likewise.
5665         * lib/freading.c (freading): Likewise.
5666         * lib/freadptr.c (freadptr): Likewise.
5667         * lib/freadseek.c (freadptrinc): Likewise.
5668         * lib/fseeko.c (rpl_fseeko): Likewise.
5669         * lib/fseterr.c (fseterr): Likewise.
5670         * lib/fwritable.c (fwritable): Likewise.
5671         * lib/fwriting.c (fwriting): Likewise.
5672         Reported by Roger Cornelius <rac@tenzing.org> and
5673         Brian K. White <brian@aljex.com>.
5674
5675 2008-04-06  Jim Meyering  <meyering@redhat.com>
5676
5677         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
5678
5679 2008-04-06  Bruno Haible  <bruno@clisp.org>
5680
5681         Avoid possible error with non-ASCII bytes in UTF-8 locales.
5682         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
5683         * tests/test-printf-posix.sh: Likewise.
5684         * tests/test-vfprintf-posix.sh: Likewise.
5685         * tests/test-vprintf-posix.sh: Likewise.
5686         * tests/test-xprintf-posix.sh: Likewise.
5687
5688 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5689
5690         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
5691         hide error from 'ls', needed on OS/2.
5692         Report by Elbert Pol <elbert.pol@gmail.com>.
5693
5694 2008-04-04  Eric Blake  <ebb9@byu.net>
5695
5696         Make test-fseeko.c failures meaningful.
5697         * tests/test-fseeko.c: Print line number on failure.
5698         * tests/test-fseek.c: Likewise.
5699         Reported by Nelson H. F. Beebe.
5700
5701         Improve strtod bug detection check.
5702         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
5703         required for Solaris 10.
5704         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
5705
5706 2008-04-04  Bruno Haible  <bruno@clisp.org>
5707
5708         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
5709         by m4/setenv.m4.
5710
5711 2008-04-03  Eric Blake  <ebb9@byu.net>
5712
5713         Ensure sane .version contents.
5714         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
5715         version string.
5716         * build-aux/git-version-gen: Improve documentation.
5717
5718         Make GNU make output nicer.
5719         * top/GNUmakefile [!_have-Makefile]: Add dependency on
5720         MAKECMDGOALS to enforce message for all command line targets.  Set
5721         srcdir for use in maint.mk.
5722
5723         Another maintainer tweak.
5724         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
5725         a target that regenerates version.
5726
5727 2008-04-03  Jim Meyering  <meyering@redhat.com>
5728
5729         vc-list-files: don't cause coreutils "make po-check" failure
5730         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
5731
5732 2008-04-03  Eric Blake  <ebb9@byu.net>
5733
5734         Allow VPATH usage of vc-list-files.
5735         * build-aux/vc-list-files (scriptversion): Add timestamp.
5736         (options): Add --help, --version, -C.
5737         (CVS): Support installed cvsu.
5738
5739 2008-04-02  Bruno Haible  <bruno@clisp.org>
5740
5741         Avoid some "statement with no effect" warnings from gcc.
5742         * tests/test-wctype.c (main): Explicitly ignore unused values.
5743         Reported by Jim Meyering.
5744
5745 2008-04-02  Jim Meyering  <meyering@redhat.com>
5746
5747         Avoid some warnings from "gcc -Wshadow".
5748         * tests/test-frexp.c (exp): Define to a different identifier.
5749         * tests/test-frexpl.c (exp): Likewise.
5750
5751 2008-04-03  Jim Meyering  <meyering@redhat.com>
5752
5753         bootstrap: remove dangling *.[ch] symlinks from lib
5754         * build-aux/bootstrap [dangling symlink removal]: Move find's
5755         -depth option to precede all others, to avoid a warning.
5756         Remove *.[ch] files too, and from "$source_base" (usually lib/).
5757
5758 2008-04-02  Bruno Haible  <bruno@clisp.org>
5759
5760         Avoid some warnings from "gcc -Wshadow".
5761         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
5762         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
5763         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
5764         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
5765         Reported by Jim Meyering.
5766
5767 2008-04-01  Bruno Haible  <bruno@clisp.org>
5768
5769         Fix test to work on IRIX 6.5 with cc.
5770         * tests/test-math.c (numeric_equal): New function.
5771         (main): Use it.
5772
5773 2008-04-01  Bruno Haible  <bruno@clisp.org>
5774
5775         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
5776
5777 2008-04-01  Bruno Haible  <bruno@clisp.org>
5778
5779         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
5780         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
5781         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
5782         (Depends-on): Remove math.
5783
5784         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
5785         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
5786         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
5787         (Depends-on): Remove math.
5788
5789         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
5790         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
5791         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
5792         (Depends-on): Remove math.
5793         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
5794         (Depends-on): Remove math.
5795
5796         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
5797         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
5798         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
5799         (Depends-on): Remove math.
5800         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
5801         (Depends-on): Remove math.
5802
5803         * tests/test-round1.c: Include nan.h.
5804         (main): Use NaNd instead of NAN.
5805         * modules/round-tests (Files): Add tests/nan.h.
5806
5807         * tests/test-trunc1.c: Include nan.h.
5808         (main): Use NaNd instead of NAN.
5809         * modules/trunc-tests (Files): Add tests/nan.h.
5810
5811         * tests/test-roundf1.c: Include nan.h.
5812         (main): Use NaNf instead of NAN.
5813         * modules/roundf-tests (Files): Add tests/nan.h.
5814
5815         * tests/test-truncf1.c: Include nan.h.
5816         (main): Use NaNf instead of NAN.
5817         * modules/truncf-tests (Files): Add tests/nan.h.
5818
5819         * tests/test-ceilf1.c: Include nan.h.
5820         (main): Use NaNf instead of NAN.
5821         * modules/ceilf-tests (Files): Add tests/nan.h.
5822
5823         * tests/test-floorf1.c: Include nan.h.
5824         (main): Use NaNf instead of NAN.
5825         * modules/floorf-tests (Files): Add tests/nan.h.
5826
5827         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
5828         (main): Use NaNf instead of NAN.
5829         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
5830
5831         * tests/test-isnand.c: Include nan.h instead of <math.h>.
5832         (main): Use NaNd instead of NAN.
5833         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
5834
5835         * tests/test-frexp.c: Include nan.h.
5836         (main): Use NaNd instead of NAN.
5837         * modules/frexp-tests (Files): Add tests/nan.h.
5838
5839         * lib/isnan.c: Don't include <math.h>.
5840         (FUNC): Don't use NAN macro.
5841         * modules/isnand-nolibm (Depends-on): Remove math.
5842         * modules/isnanf-nolibm (Depends-on): Remove math.
5843         * modules/isnanl (Depends-on): Remove math.
5844         * modules/isnanl-nolibm (Depends-on): Remove math.
5845
5846         * tests/nan.h: New file.
5847
5848 2008-04-01  Eric Blake  <ebb9@byu.net>
5849
5850         Fix typos.
5851         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
5852         values to be the right type.
5853
5854         For now, cater to gnulib strtod inaccuracies.
5855         * tests/test-strtod.c (main): Allow 1-ulp error on expected
5856         fractional results.  While not as nice from a QoI perspective, it
5857         is a quicker patch than correctly implementing decimal to binary
5858         rounding.
5859
5860 2008-03-31  Eric Blake  <ebb9@byu.net>
5861
5862         Guarantee a definition of NAN.
5863         * lib/math.in.h (NAN): Define if missing.
5864         * tests/test-math.c (main): Test it.
5865         * doc/posix-headers/math.texi (math.h): Document this.
5866         * lib/isnan.c (rpl_isnand): Use it.
5867         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
5868         * tests/test-floorf1.c (NaN): Likewise.
5869         * tests/test-frexp.c (NaN): Likewise.
5870         * tests/test-isnand.c (NaN): Likewise.
5871         * tests/test-isnanf.c (NaN): Likewise.
5872         * tests/test-round1.c (NaN): Likewise.
5873         * tests/test-roundf1.c (NaN): Likewise.
5874         * tests/test-snprintf-posix.h (NaN): Likewise.
5875         * tests/test-sprintf-posix.h (NaN): Likewise.
5876         * tests/test-trunc1.c (NaN): Likewise.
5877         * tests/test-truncf1.c (NaN): Likewise.
5878         * tests/test-vasnprintf-posix.c (NaN): Likewise.
5879         * tests/test-vasprintf-posix.c (NaN): Likewise.
5880         * modules/isnand-nolibm (Depends-on): Add math.
5881         * modules/isnanf-nolibm (Depends-on): Likewise.
5882         * modules/isnanl (Depends-on): Likewise.
5883         * modules/isnanl-nolibm (Depends-on): Likewise.
5884         * modules/snprintf-posix-tests (Depends-on): Likewise.
5885         * modules/sprintf-posix-tests (Depends-on): Likewise.
5886         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
5887         * modules/vsprintf-posix-tests (Depends-on): Likewise.
5888         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
5889         * modules/vasprintf-posix-tests (Depends-on): Likewise.
5890
5891 2008-03-31  Bruno Haible  <bruno@clisp.org>
5892
5893         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
5894         * doc/posix-functions/strtod.texi: Likewise.
5895
5896 2008-03-31  Bruno Haible  <bruno@clisp.org>
5897
5898         * tests/test-strtod.c (main): Don't use C99 syntax.
5899
5900 2008-03-31  Bruno Haible  <bruno@clisp.org>
5901
5902         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
5903         Reported by Eric Blake.
5904
5905 2008-03-31  Jim Meyering  <meyering@redhat.com>
5906
5907         Don't compare actual signbit return values.
5908         * tests/test-strtod.c (main): Rather, compare only their
5909         zero/non-zero nature.
5910
5911 2008-03-31  Eric Blake  <ebb9@byu.net>
5912
5913         More strtod documentation.
5914         * doc/posix-functions/strtod.texi (strtod): Interpret more test
5915         failures as distinct bugs.
5916
5917 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
5918
5919         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
5920         Problem reported by Erik Benada in
5921         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
5922
5923 2008-03-30  Bruno Haible  <bruno@clisp.org>
5924
5925         * tests/test-strtod.c: Add comments about which assertion fails on which
5926         platform.
5927         * doc/posix-functions/strtod.texi: Add info about many more platforms.
5928
5929 2008-03-30  Eric Blake  <ebb9@byu.net>
5930
5931         Test signbit behavior on zeros.
5932         * tests/test-signbit.c (test_signbitf): Add tests for zero.
5933         (test_signbitd, test_signbitl): Likewise.
5934
5935         More strtod touchups.
5936         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
5937         sign of negative underflow, for now.  Use .5, not .1.
5938         * doc/posix-functions/strtod.texi (strtod): Mention these
5939         limitations.
5940         Reported by Jim Meyering.
5941
5942 2008-03-30  Bruno Haible  <bruno@clisp.org>
5943
5944         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
5945         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
5946
5947 2008-03-30  Bruno Haible  <bruno@clisp.org>
5948
5949         Avoid failure when attempting to return empty iconv results on some
5950         platforms.
5951         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
5952         allocation, don't report ENOMEM when the resulting string is empty.
5953
5954 2008-03-30  Bruno Haible  <bruno@clisp.org>
5955
5956         Fix buffer overrun.
5957         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
5958         Don't consider the width for tmp_length. Check count against tmp_length
5959         before doing the padding. Ensure enough allocation during padding.
5960
5961 2008-03-30  Eric Blake  <ebb9@byu.net>
5962
5963         strtod touchups.
5964         * lib/strtod.c (strtod): Avoid compiler warnings.
5965         Reported by Jim Meyering.
5966
5967 2008-03-30  Bruno Haible  <bruno@clisp.org>
5968
5969         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
5970         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
5971         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
5972         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
5973         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
5974         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
5975         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
5976         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
5977
5978         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
5979         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
5980         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
5981         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
5982         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
5983         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
5984         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
5985         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
5986
5987         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
5988         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
5989         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
5990         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
5991         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
5992         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
5993         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
5994         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
5995
5996         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
5997         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
5998
5999         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
6000         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
6001
6002         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
6003         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
6004
6005         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
6006         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
6007         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
6008
6009         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
6010         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
6011         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
6012
6013         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
6014         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
6015         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
6016
6017         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
6018         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
6019         * modules/vasprintf (Depends-on): Add EOVERFLOW.
6020
6021         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
6022         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
6023         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
6024         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
6025         (Depends-on): Add EOVERFLOW.
6026         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
6027         (Depends-on): Add EOVERFLOW.
6028         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
6029         (Depends-on): Add EOVERFLOW.
6030         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
6031         (Depends-on): Add EOVERFLOW.
6032         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
6033         (Depends-on): Add EOVERFLOW.
6034         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
6035         (Depends-on): Add EOVERFLOW.
6036         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
6037         (Depends-on): Add EOVERFLOW.
6038         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
6039         (Depends-on): Add EOVERFLOW.
6040
6041         * lib/sprintf.c (EOVERFLOW): Remove fallback.
6042         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
6043         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
6044
6045         * lib/snprintf.c (EOVERFLOW): Remove fallback.
6046         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
6047         * modules/snprintf (Depends-on): Add EOVERFLOW.
6048
6049         * lib/poll.c (EOVERFLOW): Remove fallback.
6050         * modules/poll (Depends-on): Add EOVERFLOW.
6051
6052         * lib/getugroups.c (EOVERFLOW): Remove fallback.
6053         * modules/getugroups (Depends-on): Add EOVERFLOW.
6054
6055         * lib/getdelim.c (EOVERFLOW): Remove fallback.
6056         * modules/getdelim (Depends-on): Add EOVERFLOW.
6057
6058         * lib/ftell.c (EOVERFLOW): Remove fallback.
6059         * modules/ftell (Depends-on): Add EOVERFLOW.
6060
6061         * lib/fprintf.c (EOVERFLOW): Remove fallback.
6062         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
6063         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
6064
6065         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
6066
6067         * modules/EOVERFLOW-tests: New file.
6068         * tests/test-EOVERFLOW.c: New file.
6069
6070         * modules/EOVERFLOW: New file.
6071         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
6072
6073 2008-03-30  Bruno Haible  <bruno@clisp.org>
6074
6075         Fix bug introduced on 2007-06-10.
6076         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
6077         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
6078
6079 2008-03-30  Bruno Haible  <bruno@clisp.org>
6080
6081         Improve freadseek's efficiency after ungetc.
6082         * lib/freadseek.c: Include freadahead.h.
6083         (freadptrinc): New function, extracted from freadseek.
6084         (freadseek): Use it in a loop. Use freadahead to determine the number
6085         of loop iterations.
6086         * modules/freadseek (Depends-on): Add freadahead.
6087         (configure.ac): Require AC_C_INLINE.
6088
6089 2008-03-30  Bruno Haible  <bruno@clisp.org>
6090
6091         * lib/freadseek.c (freadseek): Don't ignore the return value of
6092         freadptr.
6093
6094 2008-03-29  Eric Blake  <ebb9@byu.net>
6095
6096         Add hex float support.
6097         * modules/strtod (Depends-on): Add c-ctype.
6098         (Link): Mention POW_LIB.
6099         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
6100         whitespace between 'e' and exponent.
6101         * tests/test-strtod.c (main): Enable hex float tests.
6102         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
6103         now provides.
6104
6105         Document various strtod bugs, with some fixes.
6106         * doc/posix-functions/strtod.texi (strtod): Document bugs with
6107         "-0x", "inf", "nan", and hex constants.
6108         * doc/posix-functions/atof.texi (atof): Likewise.
6109         * modules/stdlib (Makefile.am): Support strtod.
6110         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
6111         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
6112         detect additional strtod bugs.
6113         * lib/stdlib.in.h (rpl_strtod): Add declarations.
6114         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
6115         bool where appropriate.  Parse 'inf' and 'nan'.
6116         * tests/test-strtod.c: New file.
6117         * modules/strtod (Depends-on): Add stdbool, stdlib.
6118         (configure.ac): Turn on module indicator.
6119         * modules/strtod-tests: New module.
6120
6121 2008-03-29  Eric Blake  <ebb9@byu.net>
6122
6123         Fix ftell on mingw.
6124         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
6125         * modules/ftell-tests (Depends-on): Add binary-io.
6126         * modules/ftello-tests (Depends-on): Likewise.
6127         * tests/test-ftell.c (main): Enhance test to cover behavior after
6128         ungetc.  Enforce binary mode.
6129         * tests/test-ftello.c (main): Likewise.
6130
6131         Pass test-freadseek on cygwin.
6132         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
6133         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
6134         ungetc buffer.
6135
6136         * tests/test-fflush2.c (main): Fix typo.
6137
6138 2008-03-29  Bruno Haible  <bruno@clisp.org>
6139
6140         * tests/test-fflush2.c (main): Temporarily disable the contents of
6141         this test.
6142         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
6143         Reported by Eric Blake.
6144
6145 2008-03-28  Simon Josefsson  <simon@josefsson.org>
6146
6147         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
6148         (GC_SHA224_DIGEST_SIZE): Add.
6149
6150         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
6151         (gc_hash_digest_length): Likewise.
6152         (gc_hash_buffer): Likewise.
6153
6154 2008-03-25  Bruno Haible  <bruno@clisp.org>
6155
6156         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
6157         detail which gettext release to use.
6158         Reported by Simon Josefsson.
6159
6160 2008-03-26  Jim Meyering  <meyering@redhat.com>
6161
6162         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
6163         * modules/gnumakefile (clean-GNUmakefile): Also, use
6164         test ... && ... || : syntax rather than if-then ... fi.
6165
6166         gnumakefile: Don't double-quote-expand $(VPATH) value.
6167         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
6168
6169 2008-03-24  Eric Blake  <ebb9@byu.net>
6170
6171         Alter GNUmakefile to install into top directory.
6172         * modules/maintainer-makefile: Split, and add dependency...
6173         * modules/gnumakefile: to this new module.
6174         * build-aux/GNUmakefile: Move...
6175         * top/GNUmakefile: ...here.
6176         * build-aux/maint.mk: Move...
6177         * top/maint.mk: ...here.
6178         * MODULES.html.sh (Support for maintaining...): Document new
6179         module.
6180
6181 2008-03-23  Bruno Haible  <bruno@clisp.org>
6182
6183         * gnulib-tool: New options --vc-files, --no-vc-files.
6184         (func_usage): Document them.
6185         (vc_files): New variable.
6186         (func_import): Consider vc_files.
6187         (func_create_testdir): Set vc_files to empty.
6188         Suggested by Jim Meyering and Karl Berry.
6189
6190 2008-03-23  Bruno Haible  <bruno@clisp.org>
6191
6192         Fix regex compilation error on HP-UX 11.
6193         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
6194         * modules/regex (Files): Add m4/mbstate_t.m4.
6195         Reported by Ton Voon <ton.voon@altinity.com>.
6196
6197 2008-03-23  Bruno Haible  <bruno@clisp.org>
6198
6199         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
6200
6201 2008-03-23  Eric Blake  <ebb9@byu.net>
6202             Bruno Haible  <bruno@clisp.org>
6203
6204         Install files from top/ in the destination directory.
6205         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
6206         augmentation also for the files from top/.
6207         (func_import, func_create_testdir): Rewrite file names:
6208         top/filename -> filename.
6209
6210 2008-03-23  Bruno Haible  <bruno@clisp.org>
6211
6212         Tweak "gnulib --version" output.
6213         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
6214
6215 2008-03-23  Bruno Haible  <bruno@clisp.org>
6216
6217         Tweak "gnulib --version" output.
6218         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
6219         rather than contents of ChangeLog, when possible.
6220
6221 2008-03-21  Eric Blake  <ebb9@byu.net>
6222
6223         More --version tweaks.
6224         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
6225         date of last ChangeLog entry.
6226
6227 2008-03-21  Jim Meyering  <meyering@redhat.com>
6228
6229         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
6230
6231 2008-03-20  Eric Blake  <ebb9@byu.net>
6232
6233         VPATH fix.
6234         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
6235
6236 2008-03-20  Simon Josefsson  <simon@josefsson.org>
6237
6238         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
6239         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
6240
6241 2008-03-20  Eric Blake  <ebb9@byu.net>
6242
6243         Sync GNUmakefile with coreutils.
6244         * build-aux/GNUmakefile (have-Makefile): Rename...
6245         (_have-Makefile): ...to this, for namespace consideration.
6246         (GNUmakefile.cfg): Include, if present.
6247         (_autoreconf): Define a default.
6248         (_is-dist-target): New rule for rebuilds to pick up intra-release
6249         version.
6250         (maint-cfg.mk): Rename...
6251         (cfg.mk): ...to this.
6252
6253 2008-03-18  Jim Meyering  <meyering@redhat.com>
6254
6255         New script and module: mktempd
6256         * MODULES.html.sh (maint+release support): Add mktempd.
6257         * build-aux/mktempd: New file.
6258         * modules/mktempd: New file.
6259
6260 2008-03-15  Jim Meyering  <meyering@redhat.com>
6261
6262         Undo last change.
6263         * lib/sha1.c, lib/md5.c: 63 != ~63.
6264         Reported by Andreas Schwab.
6265
6266         sha1.c, md5.c: Hoist a redundant expression.
6267         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
6268         "ctx->buflen" only once, before calling *_process_block.
6269         * lib/md5.c (md5_process_bytes): Likewise.
6270
6271 2008-03-14  Eric Blake  <ebb9@byu.net>
6272
6273         Bump copyright year in files generated by gnulib-tool.
6274         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
6275         gnulib-tool, rather than hard-coding it.
6276
6277         Fix 'gnulib-tool --version' output to work with git.
6278         * gnulib-tool (func_gnulib_dir): New function, extracted from...
6279         (startup): ...here.
6280         (func_version): Use it to invoke git-version-gen, rather than
6281         relying on CVS keyword expansion.  Modernize wording.
6282         (cvsdatestamp, last_checkin_date, version): Kill unused
6283         variables.
6284
6285 2008-03-12  Jim Meyering  <meyering@redhat.com>
6286
6287         Recognize optional cast of the argument to free.
6288         * build-aux/useless-if-before-free: Update regexps.
6289
6290         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
6291
6292 2008-03-11  Bruno Haible  <bruno@clisp.org>
6293
6294         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
6295         by a single package.
6296         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
6297         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
6298         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
6299         Reported by Sam Steingold <sds@gnu.org>.
6300
6301 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
6302
6303         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
6304         repositories.
6305
6306 2008-03-11  Bruno Haible  <bruno@clisp.org>
6307
6308         Avoid conflicts between local macro definitions.
6309         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
6310         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
6311
6312 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
6313             Bruno Haible  <bruno@clisp.org>
6314
6315         Make va_copy work with some version of xlc on AIX 5.1.
6316         * lib/stdarg.in.h: New file.
6317         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
6318         On AIX, use a <stdarg.h> file substitute.
6319         * modules/stdarg (Files): Add lib/stdarg.in.h.
6320         (Depends-on): Add include_next.
6321         (Makefile.am): Build a stdarg.h substitute if requested.
6322         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
6323
6324 2008-03-10  Bruno Haible  <bruno@clisp.org>
6325
6326         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
6327         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
6328         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
6329
6330 2008-03-10  Bruno Haible  <bruno@clisp.org>
6331
6332         * modules/stdlib (Depends-on): Add include_next, remove
6333         absolute-header.
6334
6335 2008-03-09  Bruno Haible  <bruno@clisp.org>
6336
6337         * lib/freadahead.h (freadahead): Document more precisely.
6338         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
6339         the sum of both buffer sizes.
6340         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
6341         * NEWS: Document the change.
6342
6343 2008-03-09  Bruno Haible  <bruno@clisp.org>
6344
6345         Extend freadptr to return also the buffer size.
6346         * lib/freadptr.h (freadptr): Add sizep argument.
6347         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
6348         (freadptr): Add sizep argument. Determine buffer size like freadahead
6349         does.
6350         * tests/test-freadptr.c: Don't include freadahead.h.
6351         (main): Adapt for new calling convention of freadptr.
6352         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
6353         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
6354         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
6355         tests/test-freadptr2.sh.
6356         (Depends): Remove freadahead.
6357         (TESTS): Add test-freadptr2.sh.
6358         (check_PROGRAMS): Add test-freadptr2.
6359
6360 2008-03-09  Bruno Haible  <bruno@clisp.org>
6361
6362         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
6363         Report and solution by Simon Josefsson.
6364
6365 2008-03-06  Bruno Haible  <bruno@clisp.org>
6366
6367         Make fflush after ungetc work on BSD platforms.
6368         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
6369         * tests/test-fflush2.c: New file.
6370         * tests/test-fflush2.sh: New file.
6371         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
6372         tests/test-fflush2.c.
6373         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
6374         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
6375
6376 2008-03-06  Eric Blake  <ebb9@byu.net>
6377
6378         Likewise for ftello.
6379         * modules/ftello (Dependencies): Add extensions.
6380         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
6381
6382 2008-03-06  Bruno Haible  <bruno@clisp.org>
6383
6384         * modules/fseeko (Dependencies): Add extensions.
6385         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
6386         Needed on glibc systems.
6387
6388 2008-03-06  Bruno Haible  <bruno@clisp.org>
6389
6390         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
6391         email address.
6392         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
6393
6394 2008-03-06  Bruno Haible  <bruno@clisp.org>
6395
6396         * users.txt: Add libgnupdf.
6397
6398 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
6399
6400         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
6401         (Header File Substitutes, Function Substitutes,
6402         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
6403         (Build robot for gnulib): Fix typo.
6404
6405 2008-03-06  Bruno Haible  <bruno@clisp.org>
6406
6407         * doc/gnulib-tool.texi (VCS Issues): Small updates.
6408         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
6409
6410 2008-03-06  Bruno Haible  <bruno@clisp.org>
6411
6412         * doc/func.texi: New file, extracted from doc/gnulib.texi.
6413         * doc/gnulib.texi: Include it.
6414
6415 2008-03-06  Simon Josefsson  <simon@josefsson.org>
6416
6417         * modules/func (License): Change license to unlimited; there was
6418         no LGPL parts in the module anyway.
6419
6420 2008-03-06  Simon Josefsson  <simon@josefsson.org>
6421
6422         * modules/__func__: Renamed to modules/func.
6423         * modules/__func__-tests: Renamed to modules/func-tests.
6424         * tests/test-__func__.c: Renamed to tests/test-func.c.
6425         * m4/__func__.m4: Renamed to m4/func.m4.
6426         * doc/gnulib.texi (__func__): Section renamed to func.
6427         Suggested by Eric Blake <ebb9@byu.net>.
6428
6429 2008-03-06  Simon Josefsson  <simon@josefsson.org>
6430
6431         * doc/gnulib.texi (__func__): Use C99 terminology when talking
6432         about __func__.  Make example self-contained.  Suggested by Eric
6433         Blake <ebb9@byu.net>.
6434
6435         * tests/test-__func__.c (main): Avoid extraneous () around __func.
6436         Suggested by Eric Blake <ebb9@byu.net>.
6437
6438 2008-03-06  Simon Josefsson  <simon@josefsson.org>
6439
6440         * modules/__func__: New file.
6441         * modules/__func__-tests: New file.
6442         * tests/test-__func__.c: New file.
6443         * m4/__func__.m4: New file.
6444         * doc/gnulib.texi (__func__): Document __func__ module.
6445
6446 2008-03-05  Simon Josefsson  <simon@josefsson.org>
6447
6448         * modules/byteswap (License): Re-license as LGPLv2+.
6449
6450 2008-03-05  Simon Josefsson  <simon@josefsson.org>
6451
6452         * doc/Makefile: Add pdf target.
6453
6454 2008-03-05  Simon Josefsson  <simon@josefsson.org>
6455
6456         * modules/inline (License): Use 'unlimited', since there are only
6457         *.m4 files in this module.
6458
6459 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
6460             Bruno Haible  <bruno@clisp.org>
6461
6462         Add support for HP C 7.1 on OpenVMS 8.3.
6463         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
6464
6465 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
6466
6467         Update VMS specifics.
6468         * lib/getopt.c [VMS]: Remove include of unixlib.h.
6469
6470 2008-03-02  Jim Meyering  <meyering@redhat.com>
6471
6472         Remove the last dependency on the "free" module.
6473         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
6474         Reported by Bob Proulx.
6475
6476         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
6477
6478         Remove useless "if" tests before free.  Deprecate "free" module.
6479         * doc/posix-functions/free.texi: Mention that this
6480         module is no longer useful.
6481         * modules/free (Notice): Say this module is obsolete.
6482         * modules/readutmp (Depends-on): Remove free.
6483         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
6484         * lib/putenv.c (putenv): Likewise.
6485         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
6486         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
6487         * tests/test-c-strcasestr.c (main): Likewise.
6488         * tests/test-c-strstr.c (main): Likewise.
6489         * tests/test-mbscasestr1.c (main): Likewise.
6490         * tests/test-mbscasestr2.c (main): Likewise.
6491         * tests/test-mbsstr1.c (main): Likewise.
6492         * tests/test-mbsstr2.c (main): Likewise.
6493         * tests/test-memmem.c (main): Likewise.
6494         * tests/test-strcasestr.c (main): Likewise.
6495         * tests/test-striconv.c (main): Likewise.
6496         * tests/test-striconveh.c (main): Likewise.
6497         * tests/test-striconveha.c (main): Likewise.
6498         * tests/test-strstr.c (main): Likewise.
6499
6500         * build-aux/git-version-gen: Adjust a comment and the Usage string.
6501
6502         bootstrap: sync from coreutils again
6503         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
6504
6505 2008-03-01  Jim Meyering  <meyering@redhat.com>
6506
6507         bootstrap: sync from coreutils
6508         * build-aux/bootstrap (update_po_files): Copy a .po file into place
6509         also when the target doesn't exist.
6510
6511 2008-03-01  Eric Blake  <ebb9@byu.net>
6512
6513         Fix bugs in last patch.
6514         * lib/memchr2.c (memchr2): Fix typo.
6515         * tests/test-memchr2.c: Test previous bug, and don't use GNU
6516         extension.
6517         Reported by Bruce Korb.
6518
6519         New module 'memchr2'.
6520         * modules/memchr2: New file.
6521         * modules/memchr2-tests: Likewise.
6522         * lib/memchr2.h: Likewise.
6523         * lib/memchr2.c: Likewise, based on memchr.c.
6524         * tests/test-memchr2.c: New test.
6525         * MODULES.html.sh (String handling): Add memchr2.
6526
6527 2008-02-29  Bruno Haible  <bruno@clisp.org>
6528
6529         * modules/freadseek-tests: New file.
6530         * tests/test-freadseek.sh: New file.
6531         * tests/test-freadseek.c: New file.
6532
6533         New module 'freadseek'.
6534         * modules/freadseek: New file.
6535         * lib/freadseek.h: New file.
6536         * lib/freadseek.c: New file.
6537         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
6538
6539 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
6540
6541         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
6542         wydawca.
6543
6544         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
6545         program_invocation_name and program_invocation_short_name are
6546         present.
6547
6548 2008-02-28  Bruno Haible  <bruno@clisp.org>
6549
6550         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
6551         * tests/test-freadptr.sh: Also test non-seekable stdin.
6552
6553 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
6554
6555         * build-aux/bootstrap (source_base, m4_base)
6556         (doc_base, tests_base): New variables.
6557         (gnulib_tool_options): Do not hardcode base directories, use
6558         the above variables instead.
6559
6560 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
6561
6562         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
6563
6564 2008-02-28  Bruno Haible  <bruno@clisp.org>
6565
6566         * modules/freadptr-tests: New file.
6567         * tests/test-freadptr.sh: New file.
6568         * tests/test-freadptr.c: New file.
6569
6570         New module 'freadptr'.
6571         * modules/freadptr: New file.
6572         * lib/freadptr.h: New file.
6573         * lib/freadptr.c: New file.
6574         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
6575
6576 2008-02-26  Karl Berry  <karl@freefriends.org>
6577
6578         Sync from Libtool:
6579         * libltdl/argz.c (argz_add, argz_count): New functions.
6580         * libltdl/argz.in.h: Declare them.
6581         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
6582
6583 2008-02-22  Bruno Haible  <bruno@clisp.org>
6584
6585         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
6586         is a pointer type.  Needed for HP-UX 10.
6587         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
6588         * doc/posix-functions/gmtime_r.texi: Likewise.
6589         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
6590
6591 2008-02-24  Bruno Haible  <bruno@clisp.org>
6592
6593         * modules/environ-tests: New file.
6594         * tests/test-environ.c: New file.
6595
6596         New module 'environ'.
6597         * modules/environ: New file.
6598         * lib/unistd.in.h (environ): New declaration.
6599         * m4/environ.m4: New file.
6600         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
6601         after use.
6602         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
6603         HAVE_DECL_ENVIRON.
6604         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
6605         HAVE_DECL_ENVIRON.
6606         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
6607         wrong claim that 'environ' is missing on some systems.
6608         * modules/execute (Depends-on): Add environ.
6609         * lib/execute.c (environ): Remove fallback declaration.
6610         * modules/pipe (Depends-on): Add environ.
6611         * lib/pipe.c (environ): Remove fallback declaration.
6612         * modules/setenv (Depends-on): Add environ.
6613         * lib/setenv.c (environ): Remove fallback declaration.
6614         * modules/unsetenv (Depends-on): Add environ.
6615         * lib/unsetenv.c (environ): Remove fallback declaration.
6616         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
6617         m4/environ.m4.
6618         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
6619         (gl_PREREQ_UNSETENV): Likewise.
6620
6621 2008-02-24  Bruno Haible  <bruno@clisp.org>
6622
6623         * doc/posix-functions/environ.texi: Document the MacOS X problem.
6624
6625 2008-02-20  Bob Proulx  <bob@proulx.com>
6626
6627         Enable use of older two part flavor 'git describe'.
6628         * build-aux/git-version-gen: If using the older two part flavor of
6629         git version then recreate the third part now present in the
6630         newer three part flavor of git describe.
6631
6632 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
6633
6634         * lib/fts.c (fts_build): Typo correction to comment.
6635
6636 2008-02-17  Bruno Haible  <bruno@clisp.org>
6637
6638         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
6639         generating no-op conflicts.
6640
6641 2008-02-17  Bruno Haible  <bruno@clisp.org>
6642
6643         Speed up by 10%.
6644         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
6645         result_entries, rather than an index-based loop.
6646
6647 2008-02-17  Bruno Haible  <bruno@clisp.org>
6648
6649         Speed up by 25%.
6650         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
6651         'hashcode_cached'.
6652         (entry_create): New function.
6653         (entry_hashcode): Use the cached hashcode if possible.
6654         (read_changelog_file, try_split_merged_entry): Use entry_create.
6655
6656 2008-02-17  Bruno Haible  <bruno@clisp.org>
6657
6658         Speed up from O(n^2) to O(n) for long ChangeLog files.
6659         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
6660         (read_changelog_file): Change implementation of entries_reversed list
6661         to rbtreehash.
6662         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
6663
6664 2008-02-17  Bruno Haible  <bruno@clisp.org>
6665
6666         New option --split-merged-entry.
6667         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
6668         (find_paragraph_end, try_split_merged_entry): New functions.
6669         (long_options): Add option --split-merged-entry.
6670         (usage): Document option --split-merged-entry.
6671         (main): Implement option --split-merged-entry.
6672         Reported by Eric Blake.
6673
6674 2008-02-17  Bruno Haible  <bruno@clisp.org>
6675
6676         * lib/git-merge-changelog.c: Include c-strstr.h.
6677         (main): Support the "git pull --rebase" situation.
6678         * modules/git-merge-changelog (Depends-on): Add c-strstr.
6679         Reported by Eric Blake.
6680
6681 2008-02-16  Eric Blake  <ebb9@byu.net>
6682
6683         Avoid doubling \ in common case of "c-maybe" quoting style.
6684         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
6685         eliding outer quotes.
6686         * lib/quotearg.h: Document this.
6687         * tests/test-quotearg.c (result_strings, inputs, results_g)
6688         (flag_results, locale_results): Test it by adding a new string to
6689         each test group.
6690         (compare_strings): Test new string.
6691
6692 2008-02-13  Eric Blake  <ebb9@byu.net>
6693
6694         Avoid trigraph quoting in default output.
6695         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
6696         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
6697         unless explicitly requested.
6698         * tests/test-quotearg.c (flag_results, main): Add additional tests.
6699
6700 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
6701
6702         Don't rely on signed integer overflowing to negative value.
6703         * lib/getugroups.c (getugroups): Include <limits.h>.
6704         Instead, compare against INT_MAX, and increment only if the test passes.
6705
6706 2008-02-13  Jim Meyering  <meyering@redhat.com>
6707         and Eric Blake  <ebb9@byu.net>
6708
6709         Avoid shadowing warning and compile errors on Linux.
6710         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
6711         forwarding macros on Linux.
6712         (dcgettext): Define a stub, for Linux.
6713         (results_g, main): Avoid warnings.
6714
6715 2008-02-12  Eric Blake  <ebb9@byu.net>
6716
6717         Silence warning in last patch.
6718         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
6719
6720         Quotearg part 4: add tests, fix c-maybe colon quoting.
6721         * lib/quotearg.h: Improve documentation.
6722         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
6723         escapes when adding outer quotes.  When quoting trigraphs, use
6724         valid C notation.  When quoting NUL, omit extra characters if next
6725         character is not digit.  Alter prototype.
6726         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
6727         callers.
6728         * modules/quotearg-tests: New module.
6729         * tests/test-quotearg.c: New test.
6730
6731 2008-02-07  Eric Blake  <ebb9@byu.net>
6732
6733         Quotearg part 3: add flag to control outer quote elision.
6734         * lib/quotearg.h (c_maybe_quoting_style): New style.
6735         (enum quoting_flags): Better documentation of flags.
6736         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
6737         c-maybe style.
6738         (quotearg_buffer_restyled): Handle new flag to elide outer
6739         quotes.
6740
6741         Quotearg part 2: add flag that can control NUL elision.
6742         * lib/quotearg.h (set_quoting_flags): New prototype.
6743         * lib/quotearg.c (struct quoting_options): Add flag field.
6744         (set_quoting_flags): New function.
6745         (quotearg_buffer_restyled): Add flags parameter.
6746         (quotearg_alloc_mem): Set the flag if length cannot be returned.
6747         (quotearg_n_options): Set the flag, since length cannot be
6748         returned.
6749         (quoting_options_from_style): Default flags correctly.
6750
6751         Quotearg part 1: more wrappers, restore quotearg_char state.
6752         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
6753         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
6754         (quotearg_colon_mem): New wrappers.
6755         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
6756         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
6757         functions.
6758         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
6759         (quotearg_colon_mem): New functions.
6760
6761 2008-02-11  Bruno Haible  <bruno@clisp.org>
6762
6763         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
6764         library in the current directory: it does not work with parallel make.
6765         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6766
6767 2008-02-11  Bruno Haible  <bruno@clisp.org>
6768
6769         * .gitattributes: New file.
6770
6771 2008-02-11  Jim Meyering  <meyering@redhat.com>
6772
6773         useless-if-before-free: Fix reversed exit values.
6774         * build-aux/useless-if-before-free: Use correct values
6775         for EXIT_MATCH and EXIT_NO_MATCH.
6776
6777         * build-aux/useless-if-before-free: Close stdout carefully.
6778
6779 2008-02-10  Bruno Haible  <bruno@clisp.org>
6780
6781         New module 'git-merge-changelog'.
6782         * modules/git-merge-changelog: New file.
6783         * lib/git-merge-changelog.c: New file.
6784
6785 2008-02-10  Jim Meyering  <meyering@redhat.com>
6786
6787         useless-if-before-free: New option: --list (-l).
6788
6789         useless-if-before-free: Don't exit immediately upon open failure.
6790         * build-aux/useless-if-before-free: Exit 2 for errors.
6791         Upon failure to open a file, don't exit immediately.
6792         Rather, just warn and continue with any remaining files.
6793
6794 2008-02-10  Bruno Haible  <bruno@clisp.org>
6795
6796         New abstract list operation 'node_set_value'.
6797         * lib/gl_list.h (gl_list_node_set_value): New function.
6798         (struct gl_list_implementation): New field node_set_value.
6799         * lib/gl_list.c (gl_list_node_set_value): New function.
6800         * lib/gl_array_list.c (gl_array_node_set_value): New function.
6801         (gl_array_list_implementation): Update.
6802         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
6803         (gl_carray_list_implementation): Update.
6804         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
6805         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
6806         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
6807         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
6808         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
6809         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
6810         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
6811         Update.
6812         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
6813         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
6814         (gl_sublist_list_implementation): Update.
6815
6816 2008-02-10  Bruno Haible  <bruno@clisp.org>
6817
6818         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
6819         Needed when ELEMENT is #defined to 'some_type *'.
6820
6821 2008-02-10  Jim Meyering  <meyering@redhat.com>
6822
6823         New script and module: useless-if-before-free
6824         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
6825         * build-aux/useless-if-before-free: New file.
6826         * modules/useless-if-before-free: New file.
6827
6828         * build-aux/gitlog-to-changelog: Use committer date, not author date.
6829
6830         xstrtol_error: Fix typo.
6831         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
6832         s/exit_failure/exit_status/.
6833
6834 2008-02-09  Jim Meyering  <meyering@redhat.com>
6835
6836         New script and module: gitlog-to-changelog
6837         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
6838         * modules/gitlog-to-changelog: New file.
6839         * build-aux/gitlog-to-changelog: New file.
6840
6841 2008-02-08  Jim Meyering  <meyering@redhat.com>
6842
6843         Avoid two "parameter unused" warnings.
6844         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
6845         Mark "st" as used.
6846
6847         Use "git COMMAND", not "git-COMMAND".
6848         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
6849         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
6850         * build-aux/git-version-gen: Use "git status", not "git-status".
6851
6852 2008-02-07  Bruno Haible  <bruno@clisp.org>
6853
6854         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
6855         Avoids a crash on Windows Vista.
6856         Reported by Adam Strzelecki <ono@java.pl> via
6857         Simon Josefsson <simon@josefsson.org>.
6858
6859 2008-02-06  Bruno Haible  <bruno@clisp.org>
6860
6861         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
6862         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
6863         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
6864         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
6865         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
6866         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6867         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
6868         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
6869         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6870         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6871         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6872         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6873         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6874         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6875         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6876         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
6877         left-adjust flag.
6878         * tests/test-snprintf-posix.h (test_function): Likewise.
6879         * tests/test-sprintf-posix.h (test_function): Likewise.
6880         * tests/test-vasprintf-posix.c (test_function): Likewise.
6881         * doc/posix-functions/fprintf.texi: Update.
6882         * doc/posix-functions/printf.texi: Update.
6883         * doc/posix-functions/snprintf.texi: Update.
6884         * doc/posix-functions/sprintf.texi: Update.
6885         * doc/posix-functions/vfprintf.texi: Update.
6886         * doc/posix-functions/vprintf.texi: Update.
6887         * doc/posix-functions/vsnprintf.texi: Update.
6888         * doc/posix-functions/vsprintf.texi: Update.
6889         Reported by Peter Fales <psfales@alcatel-lucent.com>.
6890
6891 2008-02-06  Bruno Haible  <bruno@clisp.org>
6892
6893         Fix bug introduced on 2008-01-26.
6894         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
6895
6896 2008-02-06  Bruno Haible  <bruno@clisp.org>
6897
6898         Fix bug introduced on 2007-06-10.
6899         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
6900         !NEED_PRINTF_FLAG_ZERO.
6901
6902 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
6903
6904         getloadavg: use libperfstat on AIX5
6905         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
6906
6907 2008-02-03  Bruno Haible  <bruno@clisp.org>
6908
6909         * lib/diffseq.h: Add comments about required #includes.
6910         Reported by Michael Biggs <gnulib@doubleplum.net>.
6911
6912 2008-02-01  Bruno Haible  <bruno@clisp.org>
6913
6914         * users.txt: Add gnuit.
6915
6916 2008-01-31  Bruno Haible  <bruno@clisp.org>
6917
6918         * lib/md4.c (set_uint32): Mark as inline.
6919         * lib/md5.c (set_uint32): Likewise.
6920         * lib/sha1.c (set_uint32): Likewise.
6921         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
6922         * m4/md5.m4 (gl_MD5): Likewise.
6923         * m4/sha1.m4 (gl_SHA1): Likewise.
6924
6925 2008-01-31  Jim Meyering  <meyering@redhat.com>
6926
6927         Use "sizeof VAR", rather than a literal "4".
6928         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
6929         * lib/md4.c (md4_read_ctx): Likewise.
6930         * lib/sha1.c (sha1_read_ctx): Likewise.
6931
6932 2008-01-31  Simon Josefsson  <simon@josefsson.org>
6933
6934         * tests/test-sha1.c: New file, based on test-md5.c.
6935
6936         * modules/crypto/sha1-tests: New file.
6937
6938 2008-01-31  Simon Josefsson  <simon@josefsson.org>
6939
6940         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
6941
6942 2008-01-31  Jim Meyering  <meyering@redhat.com>
6943
6944         Prefer "sizeof v" over the equivalent "4".
6945         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
6946         * lib/md5.c (set_uint32): Likewise.
6947         * lib/sha1.c (set_uint32): Likewise.
6948
6949 2008-01-31  Simon Josefsson  <simon@josefsson.org>
6950
6951         * lib/sha1.c (set_uint32): Mark function as static.
6952
6953 2008-01-31  Simon Josefsson  <simon@josefsson.org>
6954
6955         md2: clarify comments to say that alignment is not required.
6956         * lib/md2.h: Remove warning about alignment in comment.
6957         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
6958         never been required.
6959
6960 2008-01-31  Simon Josefsson  <simon@josefsson.org>
6961
6962         md4: adapt alignment constraint fix from sha1.
6963         * lib/md4.c (set_uint32): New function, from sha1.c
6964         (md4_read_ctx): Use it.
6965         (md4_finish_ctx): Doc fix.
6966         * lib/md4.h: Doc fix.
6967
6968 2008-01-31  Simon Josefsson  <simon@josefsson.org>
6969
6970         md5: adapt alignment constraint fix from sha1.
6971         * lib/md5.c (set_uint32): New function, from sha1.c
6972         (md5_read_ctx): Use it.
6973         (md5_finish_ctx): Doc fix.
6974         * lib/md5.h: Doc fix.
6975
6976 2008-01-30  Peter Palfrader  <weasel@debian.org>
6977
6978         sha1: remove the result buffer alignment constraint
6979         * lib/sha1.c (set_uint32): New function.
6980         (sha1_read_ctx): Rewrite to remove the result buffer alignment
6981         constraint.
6982         (sha1_finish_ctx): Remove comment warning about alignment constraint.
6983         * lib/sha1.h: Likewise.
6984
6985 2008-01-30  Andreas Schwab  <schwab@suse.de>
6986             Bruno Haible  <bruno@clisp.org>
6987
6988         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
6989         correct definition of LDBL_MIN_EXP.
6990
6991 2008-01-30  Karl Berry  <karl@gnu.org>
6992
6993         * config/srclist-update: try to preserve x bit on updates.
6994         * config/srclistvars.sh: update for karl.
6995
6996 2008-01-29  Jim Meyering  <meyering@redhat.com>
6997
6998         vasnprintf.c: Avoid warning about unused label
6999         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
7000         "overflow" label definition and associated code with the
7001         same cpp condition that guards the sole use of that label.
7002
7003 2008-01-26  Bruno Haible  <bruno@clisp.org>
7004
7005         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
7006         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
7007         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
7008         * lib/isnanl-nolibm.h (isnanl): Likewise.
7009         Reported by Paul Eggert <eggert@cs.ucla.edu>.
7010
7011 2008-01-26  Bruno Haible  <bruno@clisp.org>
7012
7013         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
7014         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
7015
7016 2008-01-26  Bruno Haible  <bruno@clisp.org>
7017
7018         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
7019         GCC >= 4.0 built-in.
7020         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
7021
7022 2008-01-26  Bruno Haible  <bruno@clisp.org>
7023
7024         Rename isnan, applicable to 'double' only, to isnand.
7025         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
7026         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
7027         (configure.ac): Update.
7028         (Include): Replace "isnan.h" with "isnand.h".
7029         * m4/isnand.m4: Renamed from m4/isnan.m4.
7030         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
7031         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
7032         instead of isnan.c.
7033         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
7034         instead of HAVE_ISNAN_IN_LIBC.
7035         (isnand): Renamed from isnan.
7036         * lib/isnand.c: New file.
7037         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
7038         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
7039         (Makefile.am): Update.
7040         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
7041         Include isnand.h instead of isnan.h.
7042         (main): Test isnand instead of isnan.
7043         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
7044         isnan-nolibm.
7045         * modules/frexp (Depends-on): Likewise.
7046         * modules/frexp-tests (Depends-on): Likewise.
7047         * modules/frexp-nolibm (Depends-on): Likewise.
7048         * modules/frexp-nolibm-tests (Depends-on): Likewise.
7049         * modules/isfinite (Depends-on): Likewise.
7050         * modules/round-tests (Depends-on): Likewise.
7051         * modules/signbit (Depends-on): Likewise.
7052         * modules/signbit-tests (Depends-on): Likewise.
7053         * modules/snprintf-posix (Depends-on): Likewise.
7054         * modules/sprintf-posix (Depends-on): Likewise.
7055         * modules/trunc-tests (Depends-on): Likewise.
7056         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
7057         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
7058         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
7059         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
7060         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
7061         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
7062         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
7063         * modules/vasnprintf-posix (Depends-on): Likewise.
7064         * modules/vasprintf-posix (Depends-on): Likewise.
7065         * modules/vfprintf-posix (Depends-on): Likewise.
7066         * modules/vsnprintf-posix (Depends-on): Likewise.
7067         * modules/vsprintf-posix (Depends-on): Likewise.
7068         * lib/frexp.c: Include isnand.h instead of isnan.h.
7069         (ISNAN): Set to isnand instead of isnan.
7070         * lib/isfinite.c: Include isnand.h instead of isnan.h.
7071         (gl_isfinited): Use isnand instead of isnan.
7072         * lib/signbitd.c: Include isnand.h instead of isnan.h.
7073         (gl_signbitd): Use isnand instead of isnan.
7074         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
7075         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
7076         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
7077         (main): Use isnand instead of isnan.
7078         * tests/test-round1.c: Include isnand.h.
7079         (main): Use isnand instead of isnan.
7080         * tests/test-round2.c: Include isnand.h instead of isnan.h.
7081         (ISNAN): Set to isnand instead of isnan.
7082         * tests/test-trunc1.c: Include isnand.h.
7083         (main): Use isnand instead of isnan.
7084         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
7085         (equal): Use isnand instead of isnan.
7086         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
7087         isnand-nolibm.
7088         * NEWS: Mention the change.
7089
7090 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7091             Bruno Haible  <bruno@clisp.org>
7092
7093         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
7094         the GCC builtins for signbits are present and set
7095         REPLACE_SIGNBIT_USING_GCC if so.
7096         * lib/math.in.h (signbit): Define using GCC builtins if
7097         REPLACE_SIGNBIT_USING_GCC is set.
7098         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
7099         REPLACE_SIGNBIT_USING_GCC.
7100         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
7101
7102 2008-01-25  Jim Meyering  <meyering@redhat.com>
7103
7104         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
7105         * lib/poll.c: Include <config.h>, not "config.h".
7106         * tests/test-getaddrinfo.c: Likewise.
7107
7108 2008-01-25  Simon Josefsson  <simon@josefsson.org>
7109
7110         * modules/sockets-tests: New file.
7111
7112 2008-01-24  Simon Josefsson  <simon@josefsson.org>
7113
7114         * modules/sockets: New module, can be used to call WSA_Startup and
7115         WSA_Cleanup when needed.
7116
7117         * lib/sockets.h, lib/sockets.c: New files.
7118
7119         * m4/sockets.m4: New file.
7120
7121         * tests/test-sockets.c: New file.
7122
7123 2008-01-19  Bruno Haible  <bruno@clisp.org>
7124
7125         * doc/posix-headers: Renamed from doc/headers.
7126         * doc/posix-functions: Renamed from doc/functions.
7127         * doc/gnulib.texi: Update.
7128
7129 2008-01-19  Bruno Haible  <bruno@clisp.org>
7130
7131         * doc/glibc-functions/strcasestr.texi: Include contents of
7132         doc/functions/strcasestr.texi, fixing the list of platforms.
7133         * doc/functions/strcasestr.texi: Remove file.
7134
7135 2008-01-19  Bruno Haible  <bruno@clisp.org>
7136
7137         * doc/glibc-functions/memmem.texi: Include contents of
7138         doc/functions/memmem.texi.
7139         * doc/functions/memmem.texi: Remove file.
7140
7141 2008-01-18  Bruno Haible  <bruno@clisp.org>
7142
7143         * doc/glibc-functions/*.texi: New files.
7144         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
7145         to use the new files.
7146
7147 2008-01-17  Bruno Haible  <bruno@clisp.org>
7148
7149         * tests/test-gethostname.c (main): Fix printf statement.
7150
7151 2008-01-17  Simon Josefsson  <simon@josefsson.org>
7152
7153         * modules/gethostname-tests: New file.
7154
7155         * tests/test-gethostname.c: New file.
7156
7157 2008-01-17  Simon Josefsson  <simon@josefsson.org>
7158
7159         * lib/gethostname.c: Include string.h unconditionally, strncpy is
7160         used by the UNAME case.  Reported by Bruno Haible
7161         <bruno@clisp.org>.
7162
7163 2008-01-17  Eric Blake  <ebb9@byu.net>
7164
7165         Convert c-strcasestr to be more efficient.
7166         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
7167         (Depends-on): Add c-strcase, remove malloca, strnlen.
7168         * tests/test-c-strcasestr.c (main): Enhance test.
7169         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
7170
7171 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
7172
7173         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
7174         Use it in creating po/Makevars.
7175
7176 2008-01-15  Simon Josefsson  <simon@josefsson.org>
7177
7178         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
7179         Applications that requires it should initialize libgcrypt
7180         manually.
7181
7182 2008-01-16  Simon Josefsson  <simon@josefsson.org>
7183
7184         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
7185
7186 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
7187
7188         Fix problem with getdate on mingw32 reported by Simon Josefsson
7189         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
7190         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
7191         tzname", when deciding whether to declare tzname.
7192         * lib/strftime.c (tzname): Likewise.
7193
7194 2008-01-15  Bruno Haible  <bruno@clisp.org>
7195
7196         Work around a MacOS X 10.5 bug in frexpl().
7197         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
7198         * doc/functions/frexpl.texi: Document the bug.
7199         Reported by Elias Pipping <pipping@gentoo.org>.
7200
7201 2008-01-14  Eric Blake  <ebb9@byu.net>
7202
7203         Touch up previous patch.
7204         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
7205         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
7206
7207         Convert strcasestr module to use Two-Way algorithm.
7208         * modules/strcasestr-simple: New module, based on the old
7209         strcasestr, but with Two-Way rather than KMP.
7210         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
7211         * lib/string.in.h (rpl_strcasestr): Declare.
7212         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
7213         performance.
7214         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
7215         * modules/string (Makefile.am): Support strcasestr.
7216         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
7217         * modules/strcasestr-tests (Depends-on): Check for alarm.
7218         * tests/test-strcasestr.c: Augment test.
7219         * lib/str-two-way.h: Clean up stray macro.
7220         * NEWS: Document new module.
7221         * MODULES.html.sh (string handling): Likewise.
7222         * doc/functions/strcasestr.texi: New file.
7223         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
7224         here, since it is not a POSIX function.
7225
7226 2008-01-14  Colin Watson  <cjwatson@debian.org>
7227             Bruno Haible  <bruno@clisp.org>
7228
7229         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
7230         works fine; if not, set REPLACE_STRSIGNAL.
7231         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
7232         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
7233         REPLACE_STRSIGNAL.
7234         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
7235         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
7236         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
7237
7238 2008-01-14  Bruno Haible  <bruno@clisp.org>
7239
7240         * modules/strsignal (Include): Change to <string.h>.
7241
7242 2008-01-14  Colin Watson  <cjwatson@debian.org>
7243
7244         * modules/argp (Notice): Add a notice recommending to change
7245         XGETTEXT_OPTIONS.
7246         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
7247
7248 2008-01-13  Colin Watson  <cjwatson@debian.org>
7249
7250         * modules/strsignal-tests: New file.
7251         * tests/test-strsignal.c: New file.
7252
7253         * lib/strsignal.c: New file, from glibc with modifications.
7254         * lib/siglist.h: New file, from glibc with modifications.
7255         * lib/string.in.h (strsignal): New declaration.
7256         * m4/strsignal.m4: New file.
7257         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
7258         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
7259         * modules/strsignal: New file.
7260         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
7261         HAVE_DECL_STRSIGNAL.
7262
7263 2008-01-13  Bruno Haible  <bruno@clisp.org>
7264
7265         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
7266         locale encoding is not ASCII. Needed for OpenBSD 4.0.
7267         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
7268         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
7269
7270 2008-01-13  Bruno Haible  <bruno@clisp.org>
7271
7272         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
7273         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
7274         * lib/argp.h (__attribute__): Likewise.
7275         * lib/c-stack.c (__attribute__): Likewise.
7276         * lib/error.h (__attribute__): Likewise.
7277         * lib/fts.c (__attribute__): Likewise.
7278         * lib/openat.h (__attribute__): Likewise.
7279         * lib/stdio.in.h (__attribute__): Likewise.
7280         * lib/string.in.h (__attribute__): Likewise.
7281         * lib/utimens.c (__attribute__): Likewise.
7282         * lib/vasnprintf.h (__attribute__): Likewise.
7283         * lib/xalloc.h (__attribute__): Likewise.
7284         * lib/xprintf.h (__attribute__): Likewise.
7285         * lib/xstrtol.h (__attribute__): Likewise.
7286         * lib/xvasprintf.h (__attribute__): Likewise.
7287
7288 2008-01-12  Bruno Haible  <bruno@clisp.org>
7289
7290         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
7291         * doc/glibc-headers/a.out.texi: New file.
7292         * doc/glibc-headers/aliases.texi: New file.
7293         * doc/glibc-headers/alloca.texi: New file.
7294         * doc/glibc-headers/ar.texi: New file.
7295         * doc/glibc-headers/argp.texi: New file.
7296         * doc/glibc-headers/argz.texi: New file.
7297         * doc/glibc-headers/byteswap.texi: New file.
7298         * doc/glibc-headers/crypt.texi: New file.
7299         * doc/glibc-headers/endian.texi: New file.
7300         * doc/glibc-headers/envz.texi: New file.
7301         * doc/glibc-headers/err.texi: New file.
7302         * doc/glibc-headers/error.texi: New file.
7303         * doc/glibc-headers/execinfo.texi: New file.
7304         * doc/glibc-headers/fpu_control.texi: New file.
7305         * doc/glibc-headers/fstab.texi: New file.
7306         * doc/glibc-headers/fts.texi: New file.
7307         * doc/glibc-headers/getopt.texi: New file.
7308         * doc/glibc-headers/ieee754.texi: New file.
7309         * doc/glibc-headers/ifaddrs.texi: New file.
7310         * doc/glibc-headers/libintl.texi: New file.
7311         * doc/glibc-headers/mcheck.texi: New file.
7312         * doc/glibc-headers/mntent.texi: New file.
7313         * doc/glibc-headers/obstack.texi: New file.
7314         * doc/glibc-headers/paths.texi: New file.
7315         * doc/glibc-headers/printf.texi: New file.
7316         * doc/glibc-headers/pty.texi: New file.
7317         * doc/glibc-headers/resolv.texi: New file.
7318         * doc/glibc-headers/shadow.texi: New file.
7319         * doc/glibc-headers/sysexits.texi: New file.
7320         * doc/glibc-headers/ttyent.texi: New file.
7321
7322 2008-01-12  Jim Meyering  <meyering@redhat.com>
7323
7324         announce-gen: emit Gnulib's git-based version string.
7325         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
7326         New option --gnulib-version=V, where V is expected to be
7327         the output of running git describe in the gnulib directory.
7328         (get_tool_versions): Request feedback on xdelta.  I suspect it's
7329         not useful, and plan to stop publishing an xdelta file with each
7330         coreutils release.
7331
7332         * build-aux/announce-gen: Also check for lzma-compressed files.
7333
7334 2008-01-11  Bruno Haible  <bruno@clisp.org>
7335
7336         * tests/test-memmem.c (main): Increase maximum allowed time.
7337         * tests/test-strstr.c (main): Likewise.
7338
7339 2008-01-11  Bruno Haible  <bruno@clisp.org>
7340
7341         * doc/functions/memmem.texi: Add more precisions about platforms.
7342         * doc/functions/strstr.texi: Likewise.
7343
7344 2008-01-10  Eric Blake  <ebb9@byu.net>
7345
7346         * m4/strstr.m4: Delete cruft from copy-n-paste.
7347         Reported by Bruno Haible.
7348
7349 2008-01-10  Bruno Haible  <bruno@clisp.org>
7350
7351         Make c-strstr rely on strstr.
7352         * lib/c-strstr.c: Don't include str-kmp.h.
7353         (c_strstr): Define in terms of strstr.
7354         * modules/c-strstr (Files): Remove lib/str-kmp.h.
7355         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
7356
7357 2008-01-10  Bruno Haible  <bruno@clisp.org>
7358
7359         * doc/gnulib.texi (String Functions in C Locale): New section.
7360         * doc/c-ctype.texi: New file.
7361         * doc/c-strcase.texi: New file.
7362         * doc/c-strcaseeq.texi: New file.
7363         * doc/c-strcasestr.texi: New file.
7364         * doc/c-strstr.texi: New file.
7365         * doc/c-strtod.texi: New file.
7366         * doc/c-strtold.texi: New file.
7367
7368 2008-01-10  Eric Blake  <ebb9@byu.net>
7369
7370         * lib/relocatable.h: Fix a comment.
7371
7372 2008-01-10  Eric Blake  <ebb9@byu.net>
7373
7374         Share two-way algorithm.
7375         * lib/str-two-way.h: New file, merged from...
7376         * lib/memmem.c: ...here...
7377         * lib/strstr.c: ...and here.
7378         * modules/memmem (Files): Use it.
7379         * modules/strstr (Files): Likewise.
7380
7381         Avoid quadratic strstr implementations.
7382         * lib/strstr.c: New file.
7383         * m4/strstr.m4: Likewise.
7384         * modules/strstr: Likewise.
7385         * modules/strstr-tests: Likewise.
7386         * tests/test-strstr.c: Likewise.
7387         * lib/string.in.h (rpl_strstr): Declare.
7388         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
7389         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
7390         * modules/string (Makefile.am): Likewise.
7391         * MODULES.html.sh (string handling): Mention new module.
7392         * doc/functions/strstr.texi (strstr): Document the bug.
7393
7394 2008-01-10  Bruno Haible  <bruno@clisp.org>
7395
7396         * lib/relocatable.h (relocate): State whether result is freshly
7397         allocated or not.
7398         * lib/relocatable.c (relocate): Return a freshly allocated string
7399         instead of a pointer to a privately held string.
7400         Reported by Sylvain Beucler <beuc@gnu.org>.
7401
7402 2008-01-10  Colin Watson  <cjwatson@debian.org>
7403
7404         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
7405         s/S_ISNLK/S_ISLNK/.
7406
7407 2008-01-09  Bruno Haible  <bruno@clisp.org>
7408
7409         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
7410         and other files.
7411         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
7412         if it's only a guess.
7413         * modules/memmem: Simplify by depending on memmem-simple.
7414
7415 2008-01-09  Bruno Haible  <bruno@clisp.org>
7416
7417         Work around OpenBSD 4.0 tdelete() bug.
7418         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
7419         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
7420         macros and don't redefine the enum values.
7421         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
7422         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
7423         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
7424
7425 2008-01-09  Bruno Haible  <bruno@clisp.org>
7426
7427         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
7428         (main): Don't perform the tests if setlocale did not install a UTF-8
7429         locale. Needed on OpenBSD 4.0.
7430         * modules/wcwidth-tests (Depends-on): Add localcharset.
7431
7432 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
7433
7434         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
7435         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
7436         * NEWS: announce this.
7437         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
7438
7439 2008-01-09  Simon Josefsson  <simon@josefsson.org>
7440         and Eric Blake  <ebb9@byu.net>
7441
7442         Add memmem-simple module.
7443         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
7444         (gl_FUNC_MEMMEM): Separate performance from presence checks.
7445         * modules/memmem-simple: New file.
7446         * modules/memmem (Description): Tweak.
7447         * MODULES.html.sh (string handling): Mention new module.
7448         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
7449         addressed by memmem-simple.
7450         * NEWS: Document the difference.
7451
7452 2008-01-09  Eric Blake  <ebb9@byu.net>
7453
7454         Give gcc some memmem optimization hints.
7455         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
7456         (strcasestr): Declare as pure.
7457         * modules/memmem (Maintainer): Claim my implementation.
7458
7459 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7460
7461         Support AIX 6.1 and higher.
7462         * build-aux/config.libpath: Likewise.
7463         * build-aux/config.rpath: Likewise.
7464
7465 2008-01-08  Jim Meyering  <meyering@redhat.com>
7466             Bruno Haible  <bruno@clisp.org>
7467
7468         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
7469         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
7470         Reported by Peter Fales in
7471         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
7472
7473 2008-01-08  Bruno Haible  <bruno@clisp.org>
7474
7475         * modules/unictype/category-of (Depends-on): Add
7476         unictype/category-none.
7477         * modules/unictype/category-and-tests (Depends-on): Add
7478         unictype/category-{L,N,Lu,Nd}.
7479         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
7480         * modules/unictype/category-or-tests (Depends-on): Add
7481         unictype/category-{L,N}.
7482         * modules/unictype/category-name-tests (Depends-on): Add
7483         unictype/category-{Z,Nl}.
7484         Reported by Simon Josefsson.
7485
7486 2008-01-08  Bruno Haible  <bruno@clisp.org>
7487
7488         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
7489         convention better.
7490         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
7491         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
7492         Reported by Peter Miller <millerp@canb.auug.org.au>.
7493
7494 2008-01-08  Eric Blake  <ebb9@byu.net>
7495
7496         Rewrite memmem to guarantee linear complexity without malloc.
7497         * lib/memmem.c (memmem): Use Two-Way rather than
7498         Knuth-Morris-Pratt, to allow O(1) space usage.
7499         (critical_factorization, two_way_short_needle)
7500         (two_way_long_needle): New functions.
7501         (knuth_morris_pratt): Delete.
7502         * modules/memmem (Depends-on): No longer need malloca or stdbool.
7503         Add stdint.
7504         * tests/test-memmem.c (main): Add tests for periodic needle and
7505         sublinear performance.
7506         * doc/functions/memmem.texi (memmem): Document other deficiencies
7507         in cygwin and older glibc.
7508
7509 2008-01-08  Bruno Haible  <bruno@clisp.org>
7510
7511         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
7512         augmentation.
7513
7514 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
7515
7516         Add a configure time option: --disable-acl.
7517         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
7518         AC_ARG_ENABLE(acl).
7519
7520 2008-01-06  Simon Josefsson  <simon@josefsson.org>
7521
7522         * tests/test-localename.c: Don't include obsolete "setenv.h".
7523
7524         * modules/localename-tests (Depends-on): Need unsetenv.
7525
7526 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7527
7528         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
7529
7530 2008-01-06  Colin Watson  <cjwatson@debian.org>
7531
7532         * users.txt: Add man-db.
7533
7534 2008-01-07  Bruno Haible  <bruno@clisp.org>
7535
7536         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
7537         previous section name.
7538
7539 2008-01-07  Bruno Haible  <bruno@clisp.org>
7540
7541         * lib/progname.c (set_program_name): Don't strip off a leading
7542         "lt-" prefix outside a .libs directory.
7543         Suggested by Paul Eggert.
7544
7545 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
7546             Bruno Haible  <bruno@clisp.org>
7547
7548         Improve memory cleanup in 'relocatable' module.
7549         * lib/relocatable.h (compute_curr_prefix): Change return type to
7550         'char *'.
7551         * lib/relocatable.c (compute_curr_prefix): Change return type to
7552         'char *'. Free curr_installdir after use.
7553         (relocate): Free curr_prefix_better after use.
7554         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
7555
7556 2008-01-01  Bruno Haible  <bruno@clisp.org>
7557
7558         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
7559         failure on older glibc systems.
7560         Reported by Peter Fales <psfales@alcatel-lucent.com>.
7561
7562 2008-01-05  Eric Blake  <ebb9@byu.net>
7563
7564         Avoid quadratic system memmem.
7565         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
7566         Reported by Ralf Wildenhues.
7567
7568         Fix memmem test for mingw.
7569         * modules/memmem-tests (configure.ac): Check for alarm.
7570         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
7571         it.
7572         * doc/functions/memmem.texi: New file.
7573         * doc/gnulib.texi (Function Substitutes): Add memmem.
7574         Reported by Bruno Haible.
7575
7576 2008-01-04  Bruno Haible  <bruno@clisp.org>
7577
7578         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
7579         Require gl_HEADER_STRINGS_H_DEFAULTS, not
7580         gl_HEADER_STRING_H_DEFAULTS.
7581
7582 2008-01-04  Eric Blake  <ebb9@byu.net>
7583
7584         Shorten duration of memmem test.
7585         * tests/test-memmem.c (main): Use alarm to declare failure if test
7586         is taking too long.
7587         Reported by Ralf Wildenhues.
7588
7589 2007-12-21  Simon Josefsson  <simon@josefsson.org>
7590
7591         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
7592         string, needed by strerror.
7593
7594 2008-01-03  Colin Watson  <cjwatson@debian.org>
7595             Bruno Haible  <bruno@clisp.org>
7596
7597         * doc/gnulib-tool.texi (Localization): New section.
7598
7599 2008-01-02  Bruno Haible  <bruno@clisp.org>
7600
7601         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
7602         variables to 'unsigned char *' type.
7603         Reported by Paul Eggert.
7604
7605 2008-01-02  Jim Meyering  <jim@meyering.net>
7606
7607         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
7608
7609 2007-12-31  Jim Meyering  <jim@meyering.net>
7610
7611         Avoid use of private FTS type name.
7612         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
7613
7614 2007-12-30  Karl Berry  <karl@gnu.org>
7615
7616         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
7617         work around defect in Texinfo and/or the standalone Info browser.
7618
7619 2007-12-30  Bruno Haible  <bruno@clisp.org>
7620
7621         Unify 5 copies of the KMP code.
7622         * lib/str-kmp.h: New file.
7623         * lib/c-strcasestr.c: Include str-kmp.h.
7624         (knuth_morris_pratt): Remove function.
7625         (c_strcasestr): Update.
7626         * lib/c-strstr.c: Include str-kmp.h.
7627         (knuth_morris_pratt): Remove function.
7628         (c_strcasestr): Update.
7629         * lib/mbscasestr.c: Include str-kmp.h.
7630         (knuth_morris_pratt_unibyte): Remove function.
7631         * lib/mbsstr.c: Include str-kmp.h.
7632         (knuth_morris_pratt_unibyte): Remove function.
7633         * lib/strcasestr.c: Include str-kmp.h.
7634         (knuth_morris_pratt): Remove function.
7635         (strcasestr): Update.
7636         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
7637         * modules/c-strstr (Files): Likewise.
7638         * modules/mbscasestr (Files): Likewise.
7639         * modules/mbsstr (Files): Likewise.
7640         * modules/strcasestr (Files): Likewise.
7641         Suggested by Paul Eggert.
7642
7643 2007-12-30  Bruno Haible  <bruno@clisp.org>
7644
7645         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
7646         defined.
7647
7648 2007-12-30  Bruno Haible  <bruno@clisp.org>
7649
7650         * lib/xmalloca.h: Include xalloc.h.
7651         (xnmalloca): New macro.
7652
7653 2007-12-30  Bruno Haible  <bruno@clisp.org>
7654
7655         * lib/malloca.h (nmalloca): New macro.
7656         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
7657         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
7658         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
7659         knuth_morris_pratt_multibyte): Likewise.
7660         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
7661         knuth_morris_pratt_multibyte): Likewise.
7662         * lib/memmem.c (knuth_morris_pratt): Likewise.
7663         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
7664
7665 2007-12-25  Bruno Haible  <bruno@clisp.org>
7666
7667         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
7668         * lib/glob.c: Don't include openat.h.
7669         (link_exists2_p): Add back the code that deals with the
7670         !GLOB_ALTDIRFUNC case.
7671         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
7672         let it do the filename concatenation.
7673         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
7674         * modules/glob (Depends-on): Remove openat.
7675
7676 2007-12-31  Bruno Haible  <bruno@clisp.org>
7677
7678         * modules/dirfd (License): Change to LGPLv2+.
7679         Approved by Jim Meyering.
7680
7681 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
7682
7683         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
7684         when multiplying M by sizeof (size_t).
7685
7686 2007-12-10  Martin Lambers  <marlam@marlam.de>
7687
7688         Override getpagesize on mingw.
7689         * lib/getpagesize.c: New file.
7690         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
7691         * modules/getpagesize (Files): Add lib/getpagesize.c.
7692         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
7693         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
7694         REPLACE_GETPAGESIZE.
7695         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
7696
7697 2007-12-25  Bruno Haible  <bruno@clisp.org>
7698
7699         * modules/localcharset (Notice): New field.
7700         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
7701         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
7702
7703 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
7704             Bruno Haible  <bruno@clisp.org>
7705
7706         Avoid using the syntax symbol() in formatted documentation.
7707         * MODULES.html.sh (func_module): When replacing symbol() with a
7708         hyperlink, remove the parentheses. Show an error if some remain.
7709         Recognize and render the '...' syntax.
7710         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
7711         Rework. Add paragraph about GCC's inlining.
7712         * doc/alloca.texi: Likewise.
7713         * doc/error.texi: Remove parentheses from symbol reference.
7714         * doc/gnulib-intro.texi: Likewise.
7715         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
7716         * modules/fnmatch (Description): Reword to say "the ... function".
7717         * modules/full-read (Description): Likewise.
7718         * modules/full-write (Description): Likewise.
7719         * modules/safe-read (Description): Likewise.
7720         * modules/safe-write (Description): Likewise.
7721         * modules/strchrnul (Description): Likewise.
7722         * modules/trim (Description): Likewise.
7723         * modules/error (Description): Remove parentheses from symbol
7724         references.
7725         * modules/verror (Description): Likewise.
7726         Reported by Karl Berry.
7727
7728 2007-12-25  Bruno Haible  <bruno@clisp.org>
7729
7730         Fixup after 2007-10-16 commit.
7731         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
7732
7733 2007-12-24  Bruno Haible  <bruno@clisp.org>
7734
7735         Make --enable-relocatable work with DESTDIR.
7736         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
7737         to compute installdir from destprog.
7738         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
7739         also set the RELOC_DESTDIR variable.
7740         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
7741
7742 2007-12-24  Bruno Haible  <bruno@clisp.org>
7743
7744         Fix link error due to xalloc_die().
7745         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
7746         of xreadlink.
7747         * lib/relocwrapper.c: Update comments.
7748         * build-aux/install-reloc: Remove xreadlink.c from file list.
7749         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
7750         xreadlink.c.
7751         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
7752
7753 2007-12-24  Bruno Haible  <bruno@clisp.org>
7754
7755         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
7756         * lib/setenv.h: Remove file.
7757         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
7758         lib/setenv.h.
7759         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
7760         (Depends-on): Add stdlib.
7761         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
7762         gl_FUNC_UNSETENV.
7763         (Include): Replace setenv.h with <stdlib.h>.
7764         * modules/unsetenv: New file.
7765         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
7766         * lib/unsetenv.c: Include <stdlib.h> first.
7767         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
7768         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
7769         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
7770         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
7771         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
7772         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
7773         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
7774         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
7775         * doc/functions/unsetenv.texi: Update.
7776         * modules/xsetenv (Depends-on): Add unsetenv.
7777         * modules/getdate (Depends-on): Likewise.
7778         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
7779         * lib/xsetenv.c: Don't include setenv.h.
7780         * lib/getdate.y: Likewise.
7781         * lib/relocwrapper.c: Likewise.
7782         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
7783         (Depends-on): Add stdlib.
7784         * NEWS: Mention the changes.
7785         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
7786
7787 2007-12-23  Bruno Haible  <bruno@clisp.org>
7788
7789         * lib/memmem.c (memmem): Use lowercase variable names. Tab
7790         indentation.
7791
7792 2007-12-23  Bruno Haible  <bruno@clisp.org>
7793
7794         * lib/c-strcasestr.c: Add more comments.
7795         * lib/c-strstr.c: Likewise.
7796         * lib/mbscasestr.c: Likewise.
7797         * lib/mbsstr.c: Likewise.
7798         * lib/strcasestr.c: Likewise.
7799         * lib/memmem.c: Likewise.
7800
7801 2007-12-23  Bruno Haible  <bruno@clisp.org>
7802
7803         * tests/test-memmem.c: Include <string.h> first.
7804
7805 2007-12-22  Bruno Haible  <bruno@clisp.org>
7806
7807         * gnulib-tool (func_create_testdir): Change $auxdir while generating
7808         the contents of $testsbase.
7809         Reported by Ralf Wildenhues.
7810
7811 2007-12-22  Bruno Haible  <bruno@clisp.org>
7812
7813         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
7814         two variables local_ldadd_before, local_ldadd_last.
7815
7816 2007-12-20  Eric Blake  <ebb9@byu.net>
7817
7818         Work around circular library issue when cross-compiling.
7819         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
7820         that progname.o does not need to pull in rpl_memcmp.
7821
7822 2007-12-19  Eric Blake  <ebb9@byu.net>
7823
7824         Fix memmem to avoid O(n^2) worst-case complexity.
7825         * lib/memmem.c (knuth_morris_pratt): New function.
7826         (memmem): Use it if first few naive iterations fail.
7827         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
7828         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
7829         * modules/memchr (License): Likewise.
7830         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
7831         malloca.
7832         * tests/test-memmem.c: Rewrite, borrowing ideas from
7833         test-mbsstr1.c; the old version wouldn't even compile!
7834         * modules/memmem-tests: New file.
7835         * lib/string.in.h (rpl_memmem): Add declaration.
7836         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
7837         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
7838         REPLACE_MEMMEM.
7839
7840 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
7841
7842         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
7843         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
7844         before any system include files, and undef after them all.  This
7845         should fix a problem on VMS reported by John E. Malmberg in
7846         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
7847
7848 2007-12-17  Eric Blake  <ebb9@byu.net>
7849
7850         Revert addition of verify, for BSD/OS.
7851         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
7852         can't handle large files, for the sake of obsolete platforms.
7853         * modules/fseeko (Depends-on): Remove verify.
7854         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
7855         * doc/functions/ftello.texi (ftello): Likewise.
7856         * doc/functions/fgetpos.texi (fgetpos): Likewise.
7857         Reported by Larry Jones.
7858
7859 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
7860
7861         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
7862         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
7863
7864 2007-12-17  Jim Meyering  <meyering@redhat.com>
7865
7866         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
7867         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
7868         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
7869         * modules/getcwd (Depends-on): Add openat.
7870         Reported by Petr Salinger.
7871
7872 2007-12-17  Bruno Haible  <bruno@clisp.org>
7873
7874         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
7875         avoid a segmentation fault of the configure test on x86_64 systems.
7876
7877 2007-12-15  Jim Meyering  <meyering@redhat.com>
7878
7879         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
7880
7881 2007-12-13  Eric Blake  <ebb9@byu.net>
7882
7883         Another fseek test.
7884         * tests/test-fseek.c (main): Also test ungetc handling.
7885         * tests/test-fseeko.c (main): Likewise.
7886         * modules/fseeko (Depends-on): Add verify.
7887         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
7888         large.
7889         Reported by Larry Jones.
7890
7891         Fix fseeko on mingw.
7892         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
7893         seek.
7894
7895         Beef up fseek tests.
7896         * tests/test-fseek.c (main): Also test eof handling.
7897         * tests/test-fseeko.c (main): Likewise.
7898         Reported by Larry Jones.
7899
7900 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
7901
7902         Fix fseeko on BSD-based platforms.
7903         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
7904         successful seek.
7905
7906 2007-12-12  Eric Blake  <ebb9@byu.net>
7907
7908         Allow circular dependency of separate libtests.a
7909         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
7910         when use_libtests.
7911
7912 2007-12-11  Eric Blake  <ebb9@byu.net>
7913
7914         Fix bug with -0.0L in previous patch.
7915         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
7916         * tests/test-isnan.c (main): Also test on zeroes.
7917         * tests/test-isnanf.c (main): Likewise.
7918         * tests/test-isnanl.h (main): Likewise.
7919
7920         Detect pseudo-denormals on x86 even when cross-compiling.
7921         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
7922         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
7923         invalid bit patterns that happen to satisfy ==.
7924
7925         Avoid link failures with separate libtests.a.
7926         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
7927         last, to satisfy circular dependencies.
7928
7929 2007-12-11  Eric Blake  <ebb9@byu.net>
7930         and Bruno Haible  <bruno@clisp.org>
7931
7932         Fix OpenBSD 4.0 <float.h> handling of long double.
7933         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
7934         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
7935         * doc/headers/float.texi (float.h): Document OpenBSD bug.
7936
7937 2007-12-11  Jim Meyering  <meyering@redhat.com>
7938
7939         * users.txt: Add libvirt.
7940
7941         Support versions of autoconf prior to 2.59c.
7942         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
7943         if it is not already defined.
7944
7945 2007-12-09  Bruno Haible  <bruno@clisp.org>
7946
7947         Let 'gnulib-tool --import' collect sources needed for the tests in
7948         tests/ rather than in lib/.
7949         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
7950         argument. If true, add rules to generate libtests.a, and put libtests.a
7951         into $(LDADD). Consider source files in subdirectories and set
7952         uses_subdirs.
7953         (func_emit_initmacro_start, func_emit_initmacro_end,
7954         func_emit_initmacro_done): Pass all arguments explicitly.
7955         (func_import): Determine two module lists main_modules,
7956         testsrelated_modules. Determine use_libtests. Determine two variables
7957         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
7958         instead of just sed_transform_lib_file. Determine two variables
7959         main_files and testsrelated_files. Compute 'files' as the union of
7960         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
7961         func_add_or_update. In the generated gnulib-comp.m4, collect the
7962         object files for tests/ in different variables than those for lib/.
7963         Substitute LIBTESTS_LIBDEPS.
7964         (func_create_testdir): Combine the uses_subdirs results from
7965         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
7966
7967 2007-12-09  Bruno Haible  <bruno@clisp.org>
7968
7969         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
7970         the build-aux directory.
7971
7972 2007-12-09  Bruno Haible  <bruno@clisp.org>
7973
7974         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
7975         introduced on 2006-09-09.
7976
7977 2007-12-07  Jim Meyering  <meyering@redhat.com>
7978
7979         Let these macros work also with autoconf-2.59.
7980         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
7981         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
7982         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
7983
7984 2007-12-06  Jim Meyering  <meyering@redhat.com>
7985
7986         Avoid a configure-time syntax error in gl_FUNC_ACL.
7987         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
7988         function in each branch, before testing the cache variable.
7989
7990 2007-12-04  Eric Blake  <ebb9@byu.net>
7991
7992         Make scripts executable.
7993         * build-aux/config.guess: Add execute permissions.
7994         * build-aux/config.sub: Likewise.
7995         * build-aux/gendocs.sh: Likewise.
7996
7997         Fix frexp on mingw.
7998         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
7999         cross-compiling.
8000         * doc/functions/frexp.texi (frexp): Document the bug.
8001
8002         Make cygwin fseeko check more reliable.
8003         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
8004         version numbers, rather than unrelated feature check.
8005         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
8006         * doc/functions/ftello.texi (ftello): Likewise.
8007         Reported by Bruno Haible.
8008
8009         * m4/strerror.m4: Bump version number.
8010
8011 2007-12-03  Bruno Haible  <bruno@clisp.org>
8012
8013         * doc/functions/mprotect.texi: Mention the mingw problem.
8014
8015 2007-12-03  Eric Blake  <ebb9@byu.net>
8016
8017         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
8018         REPLACE_STRERROR is initialized before this macro.
8019
8020 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
8021
8022         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
8023         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
8024         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
8025         put -lsec in even for programs other than 'ls'.  This fixes a problem
8026         for gettext reported by Bruno Haible in
8027         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
8028         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
8029         Add support for Solaris 10.  This isn't efficient, but should get the
8030         job done for now.
8031
8032 2007-12-03  James Youngman  <jay@gnu.org>
8033
8034         * doc/regexprops-generic.texi: change "an close-group" to "a
8035         close-group" and "illegal" to "not allowed".
8036
8037 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8038
8039         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
8040         pr_byname.h. Needed for the rare case when the maintainer has done
8041         "make maintainer-clean" in the source directory and then attempts a
8042         build outside the source directory.
8043         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
8044         scripts_byname.h.
8045
8046 2007-12-02  Martin Lambers <marlam@marlam.de>
8047             Bruno Haible  <bruno@clisp.org>
8048
8049         * lib/getpagesize.h: Remove file.
8050         * lib/unistd.in.h: Include declaration of getpagesize here.
8051         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
8052         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
8053         HAVE_SYS_PARAM_H.
8054         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
8055         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
8056         * modules/getpagesize (Files): Remove lib/getpagesize.h.
8057         (Depends-on): Add unistd.
8058         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8059         (Include): Use <unistd.h> instead of getpagesize.h.
8060         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
8061         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
8062         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
8063         gl_GETPAGESIZE invocation, already handled by module dependency.
8064         * lib/pagealign_alloc.c: Don't include getpagesize.h.
8065
8066 2007-12-02  Bruno Haible  <bruno@clisp.org>
8067
8068         * modules/strings-tests: New file.
8069         * tests/test-strings.c: New file.
8070
8071         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
8072         * lib/strings.in.h: New file.
8073         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
8074         * m4/strings_h.m4: New file.
8075         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
8076         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
8077         * modules/strings: New file.
8078         * modules/string (Makefile.am): Update.
8079         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
8080         Reported by Karl Berry.
8081
8082 2007-12-01  Eric Blake  <ebb9@byu.net>
8083
8084         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
8085         accomodate fix in cygwin 1.5.25.
8086
8087 2007-12-01  Jim Meyering  <meyering@redhat.com>
8088
8089         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
8090         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
8091         that would inhibit utf8-optimization of a regexp containing line-
8092         or buffer-anchors, e.g., `^', `$'.
8093
8094 2007-11-30  Bruno Haible  <bruno@clisp.org>
8095
8096         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
8097         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
8098         glthread_recursive_lock_init.
8099         * lib/lock.c (glthread_recursive_lock_init)
8100         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
8101         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
8102
8103 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
8104
8105         New function qset_acl, like set_acl but with syscall semantics.
8106         * lib/acl.h (qset_acl): New decl.
8107         * lib/acl.c (qset_acl): New function.
8108         (set_acl): Use new function.  Use more-consistent diagnostics.
8109
8110 2007-11-28  Jim Meyering  <meyering@redhat.com>
8111
8112         * modules/physmem (License): Change from GPL to LGPLv2+.
8113
8114 2007-11-26  Bruno Haible  <bruno@clisp.org>
8115
8116         * lib/vasnprintf.c (decode_long_double): Don't abort if the
8117         'long double' type has excess precision.
8118         Reported by Jim Meyering in
8119         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
8120
8121 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8122
8123         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
8124         Sync from <http://gnu.org/licenses>.
8125         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
8126         with license text from same location.
8127         * doc/maintain.texi, doc/standards.texi:  Sync from
8128         <http://savannah.gnu.org/projects/gnustandards>.
8129
8130 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
8131         and Jim Meyering  <meyering@redhat.com>
8132
8133         Adjust getdate' grammar to accept a slightly more regular language.
8134         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
8135         Before, the former was rejected.
8136         * lib/getdate.y (digits_to_date_time): New function, factored
8137         out of ...
8138         (number): ...here.  Just call digits_to_date_time.
8139         (hybrid): New non-terminal to handle an <unsigned number,
8140         signed relative offset> sequence consistently.
8141
8142 2007-11-18  Jim Meyering  <meyering@redhat.com>
8143
8144         Pull my changes from coreutils:
8145         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
8146         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
8147         use of $gnulib_tool_option_extras, so that it's separated from the
8148         preceding argument.
8149
8150         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
8151         * build-aux/bootstrap (cp_mark_as_generated): Create any required
8152         parent destination directories before copying a file into place.
8153
8154 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
8155
8156         bootstrap: work also with 4-argument variant of AC_INIT
8157         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
8158
8159 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
8160
8161         Port test-getaddrinfo to Solaris.
8162         Problem reported by Bruno Haible in
8163         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
8164         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
8165         explanation of setting 'hints'.
8166         Don't reject an implementation merely because it returns EAI_SERVICE.
8167         (EAI_SERVICE): Define to 0 if not defined.
8168
8169 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
8170
8171         The license of gnu-make and posix-shell is now "GPLed build tool".
8172         * modules/gnu-make (License): Likewise.
8173         * modules/posix-shell (License): Likewise.
8174
8175         New module posix-shell, for determining a POSIX shell
8176         or perhaps something that is close enough to a POSIX shell.
8177         * m4/posix-shell.m4: New file.
8178         * modules/posix-shell: New file.
8179
8180         * MODULES.html.sh: Mention new module.
8181
8182         New module gnu-make, for determining whether we're using GNU Make.
8183         * m4/gnu-make.m4: New file.
8184         * modules/gnu-make: New file.
8185         * MODULES.html.sh: Mention new module.
8186
8187 2007-11-14  Jim Meyering  <meyering@redhat.com>
8188
8189         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
8190         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
8191         use this macro to create a function _definition_.
8192         Remove useless "#undef ARGMATCH_DIE".
8193
8194 2007-11-14  Bruno Haible  <bruno@clisp.org>
8195
8196         * lib/config.charset: Update for OpenBSD 4.1.
8197         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
8198
8199 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
8200
8201         Document 64-bit #if problems in stdint.texi.
8202         * doc/headers/stdint.texi (stdint.h): Mention problems with
8203         64-bit-#if, and how to work around them.
8204
8205         Don't insist on 'long long int' support in the preprocessor.  It
8206         breaks too many things.  For example, PRIdMAX still uses a 'long
8207         long int' format with the latest Sun compiler, even though
8208         HAVE_LONG_LONG_INT isn't defined due to that compiler's
8209         preprocessor problem.  This causes the latest coreutils to dump
8210         core on Solaris 10 sparc with the Sun C compiler.
8211         Instead, fix the 2007-10-16 problem in a different way, by evaluating
8212         the troublesome expressions at configure-time, not at #if-time.
8213         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
8214         preprocessor.
8215         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
8216         compile-time C checks, done at 'configure'-time.
8217         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
8218         * modules/inttypes (Makefile): Substitute the new symbols that
8219         gl_INTTYPES_H now generates.
8220         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
8221
8222 2007-11-12  Bruno Haible  <bruno@clisp.org>
8223
8224         Tests for Unicode character classification functions.
8225
8226         * modules/unictype/bidicategory-byname-tests: New file.
8227         * modules/unictype/bidicategory-name-tests: New file.
8228         * modules/unictype/bidicategory-of-tests: New file.
8229         * modules/unictype/bidicategory-test-tests: New file.
8230         * modules/unictype/block-list-tests: New file.
8231         * modules/unictype/block-of-tests: New file.
8232         * modules/unictype/block-test-tests: New file.
8233         * modules/unictype/category-C-tests: New file.
8234         * modules/unictype/category-Cc-tests: New file.
8235         * modules/unictype/category-Cf-tests: New file.
8236         * modules/unictype/category-Cn-tests: New file.
8237         * modules/unictype/category-Co-tests: New file.
8238         * modules/unictype/category-Cs-tests: New file.
8239         * modules/unictype/category-L-tests: New file.
8240         * modules/unictype/category-Ll-tests: New file.
8241         * modules/unictype/category-Lm-tests: New file.
8242         * modules/unictype/category-Lo-tests: New file.
8243         * modules/unictype/category-Lt-tests: New file.
8244         * modules/unictype/category-Lu-tests: New file.
8245         * modules/unictype/category-M-tests: New file.
8246         * modules/unictype/category-Mc-tests: New file.
8247         * modules/unictype/category-Me-tests: New file.
8248         * modules/unictype/category-Mn-tests: New file.
8249         * modules/unictype/category-N-tests: New file.
8250         * modules/unictype/category-Nd-tests: New file.
8251         * modules/unictype/category-Nl-tests: New file.
8252         * modules/unictype/category-No-tests: New file.
8253         * modules/unictype/category-P-tests: New file.
8254         * modules/unictype/category-Pc-tests: New file.
8255         * modules/unictype/category-Pd-tests: New file.
8256         * modules/unictype/category-Pe-tests: New file.
8257         * modules/unictype/category-Pf-tests: New file.
8258         * modules/unictype/category-Pi-tests: New file.
8259         * modules/unictype/category-Po-tests: New file.
8260         * modules/unictype/category-Ps-tests: New file.
8261         * modules/unictype/category-S-tests: New file.
8262         * modules/unictype/category-Sc-tests: New file.
8263         * modules/unictype/category-Sk-tests: New file.
8264         * modules/unictype/category-Sm-tests: New file.
8265         * modules/unictype/category-So-tests: New file.
8266         * modules/unictype/category-Z-tests: New file.
8267         * modules/unictype/category-Zl-tests: New file.
8268         * modules/unictype/category-Zp-tests: New file.
8269         * modules/unictype/category-Zs-tests: New file.
8270         * modules/unictype/category-and-not-tests: New file.
8271         * modules/unictype/category-and-tests: New file.
8272         * modules/unictype/category-byname-tests: New file.
8273         * modules/unictype/category-name-tests: New file.
8274         * modules/unictype/category-none-tests: New file.
8275         * modules/unictype/category-of-tests: New file.
8276         * modules/unictype/category-or-tests: New file.
8277         * modules/unictype/category-test-withtable-tests: New file.
8278         * modules/unictype/combining-class-tests: New file.
8279         * modules/unictype/ctype-alnum-tests: New file.
8280         * modules/unictype/ctype-alpha-tests: New file.
8281         * modules/unictype/ctype-blank-tests: New file.
8282         * modules/unictype/ctype-cntrl-tests: New file.
8283         * modules/unictype/ctype-digit-tests: New file.
8284         * modules/unictype/ctype-graph-tests: New file.
8285         * modules/unictype/ctype-lower-tests: New file.
8286         * modules/unictype/ctype-print-tests: New file.
8287         * modules/unictype/ctype-punct-tests: New file.
8288         * modules/unictype/ctype-space-tests: New file.
8289         * modules/unictype/ctype-upper-tests: New file.
8290         * modules/unictype/ctype-xdigit-tests: New file.
8291         * modules/unictype/decimal-digit-tests: New file.
8292         * modules/unictype/digit-tests: New file.
8293         * modules/unictype/mirror-tests: New file.
8294         * modules/unictype/numeric-tests: New file.
8295         * modules/unictype/property-alphabetic-tests: New file.
8296         * modules/unictype/property-ascii-hex-digit-tests: New file.
8297         * modules/unictype/property-bidi-arabic-digit-tests: New file.
8298         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
8299         * modules/unictype/property-bidi-block-separator-tests: New file.
8300         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
8301         * modules/unictype/property-bidi-common-separator-tests: New file.
8302         * modules/unictype/property-bidi-control-tests: New file.
8303         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
8304         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
8305         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
8306         * modules/unictype/property-bidi-european-digit-tests: New file.
8307         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
8308         * modules/unictype/property-bidi-left-to-right-tests: New file.
8309         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
8310         * modules/unictype/property-bidi-other-neutral-tests: New file.
8311         * modules/unictype/property-bidi-pdf-tests: New file.
8312         * modules/unictype/property-bidi-segment-separator-tests: New file.
8313         * modules/unictype/property-bidi-whitespace-tests: New file.
8314         * modules/unictype/property-byname-tests: New file.
8315         * modules/unictype/property-combining-tests: New file.
8316         * modules/unictype/property-composite-tests: New file.
8317         * modules/unictype/property-currency-symbol-tests: New file.
8318         * modules/unictype/property-dash-tests: New file.
8319         * modules/unictype/property-decimal-digit-tests: New file.
8320         * modules/unictype/property-default-ignorable-code-point-tests: New file.
8321         * modules/unictype/property-deprecated-tests: New file.
8322         * modules/unictype/property-diacritic-tests: New file.
8323         * modules/unictype/property-extender-tests: New file.
8324         * modules/unictype/property-format-control-tests: New file.
8325         * modules/unictype/property-grapheme-base-tests: New file.
8326         * modules/unictype/property-grapheme-extend-tests: New file.
8327         * modules/unictype/property-grapheme-link-tests: New file.
8328         * modules/unictype/property-hex-digit-tests: New file.
8329         * modules/unictype/property-hyphen-tests: New file.
8330         * modules/unictype/property-id-continue-tests: New file.
8331         * modules/unictype/property-id-start-tests: New file.
8332         * modules/unictype/property-ideographic-tests: New file.
8333         * modules/unictype/property-ids-binary-operator-tests: New file.
8334         * modules/unictype/property-ids-trinary-operator-tests: New file.
8335         * modules/unictype/property-ignorable-control-tests: New file.
8336         * modules/unictype/property-iso-control-tests: New file.
8337         * modules/unictype/property-join-control-tests: New file.
8338         * modules/unictype/property-left-of-pair-tests: New file.
8339         * modules/unictype/property-line-separator-tests: New file.
8340         * modules/unictype/property-logical-order-exception-tests: New file.
8341         * modules/unictype/property-lowercase-tests: New file.
8342         * modules/unictype/property-math-tests: New file.
8343         * modules/unictype/property-non-break-tests: New file.
8344         * modules/unictype/property-not-a-character-tests: New file.
8345         * modules/unictype/property-numeric-tests: New file.
8346         * modules/unictype/property-other-alphabetic-tests: New file.
8347         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
8348         * modules/unictype/property-other-grapheme-extend-tests: New file.
8349         * modules/unictype/property-other-id-continue-tests: New file.
8350         * modules/unictype/property-other-id-start-tests: New file.
8351         * modules/unictype/property-other-lowercase-tests: New file.
8352         * modules/unictype/property-other-math-tests: New file.
8353         * modules/unictype/property-other-uppercase-tests: New file.
8354         * modules/unictype/property-paired-punctuation-tests: New file.
8355         * modules/unictype/property-paragraph-separator-tests: New file.
8356         * modules/unictype/property-pattern-syntax-tests: New file.
8357         * modules/unictype/property-pattern-white-space-tests: New file.
8358         * modules/unictype/property-private-use-tests: New file.
8359         * modules/unictype/property-punctuation-tests: New file.
8360         * modules/unictype/property-quotation-mark-tests: New file.
8361         * modules/unictype/property-radical-tests: New file.
8362         * modules/unictype/property-sentence-terminal-tests: New file.
8363         * modules/unictype/property-soft-dotted-tests: New file.
8364         * modules/unictype/property-space-tests: New file.
8365         * modules/unictype/property-terminal-punctuation-tests: New file.
8366         * modules/unictype/property-test-tests: New file.
8367         * modules/unictype/property-titlecase-tests: New file.
8368         * modules/unictype/property-unassigned-code-value-tests: New file.
8369         * modules/unictype/property-unified-ideograph-tests: New file.
8370         * modules/unictype/property-uppercase-tests: New file.
8371         * modules/unictype/property-variation-selector-tests: New file.
8372         * modules/unictype/property-white-space-tests: New file.
8373         * modules/unictype/property-xid-continue-tests: New file.
8374         * modules/unictype/property-xid-start-tests: New file.
8375         * modules/unictype/property-zero-width-tests: New file.
8376         * modules/unictype/scripts-tests: New file.
8377         * modules/unictype/syntax-c-ident-tests: New file.
8378         * modules/unictype/syntax-c-whitespace-tests: New file.
8379         * modules/unictype/syntax-java-ident-tests: New file.
8380         * modules/unictype/syntax-java-whitespace-tests: New file.
8381         * tests/unictype/test-bidi_byname.c: New file.
8382         * tests/unictype/test-bidi_name.c: New file.
8383         * tests/unictype/test-bidi_of.c: New file.
8384         * tests/unictype/test-bidi_test.c: New file.
8385         * tests/unictype/test-block_list.c: New file.
8386         * tests/unictype/test-block_of.c: New file.
8387         * tests/unictype/test-block_test.c: New file.
8388         * tests/unictype/test-categ_and.c: New file.
8389         * tests/unictype/test-categ_and_not.c: New file.
8390         * tests/unictype/test-categ_byname.c: New file.
8391         * tests/unictype/test-categ_name.c: New file.
8392         * tests/unictype/test-categ_none.c: New file.
8393         * tests/unictype/test-categ_of.c: New file.
8394         * tests/unictype/test-categ_or.c: New file.
8395         * tests/unictype/test-categ_test_withtable.c: New file.
8396         * tests/unictype/test-combining.c: New file.
8397         * tests/unictype/test-decdigit.c: New file.
8398         * tests/unictype/test-digit.c: New file.
8399         * tests/unictype/test-mirror.c: New file.
8400         * tests/unictype/test-numeric.c: New file.
8401         * tests/unictype/test-pr_byname.c: New file.
8402         * tests/unictype/test-pr_test.c: New file.
8403         * tests/unictype/test-predicate-part1.h: New file.
8404         * tests/unictype/test-predicate-part2.h: New file.
8405         * tests/unictype/test-scripts.c: New file.
8406         * tests/unictype/test-sy_c_ident.c: New file.
8407         * tests/unictype/test-sy_java_ident.c: New file.
8408
8409         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
8410         for Unicode 5.0.0.
8411         * tests/unictype/test-categ_Cc.c: Likewise.
8412         * tests/unictype/test-categ_Cf.c: Likewise.
8413         * tests/unictype/test-categ_Cn.c: Likewise.
8414         * tests/unictype/test-categ_Co.c: Likewise.
8415         * tests/unictype/test-categ_Cs.c: Likewise.
8416         * tests/unictype/test-categ_L.c: Likewise.
8417         * tests/unictype/test-categ_Ll.c: Likewise.
8418         * tests/unictype/test-categ_Lm.c: Likewise.
8419         * tests/unictype/test-categ_Lo.c: Likewise.
8420         * tests/unictype/test-categ_Lt.c: Likewise.
8421         * tests/unictype/test-categ_Lu.c: Likewise.
8422         * tests/unictype/test-categ_M.c: Likewise.
8423         * tests/unictype/test-categ_Mc.c: Likewise.
8424         * tests/unictype/test-categ_Me.c: Likewise.
8425         * tests/unictype/test-categ_Mn.c: Likewise.
8426         * tests/unictype/test-categ_N.c: Likewise.
8427         * tests/unictype/test-categ_Nd.c: Likewise.
8428         * tests/unictype/test-categ_Nl.c: Likewise.
8429         * tests/unictype/test-categ_No.c: Likewise.
8430         * tests/unictype/test-categ_P.c: Likewise.
8431         * tests/unictype/test-categ_Pc.c: Likewise.
8432         * tests/unictype/test-categ_Pd.c: Likewise.
8433         * tests/unictype/test-categ_Pe.c: Likewise.
8434         * tests/unictype/test-categ_Pf.c: Likewise.
8435         * tests/unictype/test-categ_Pi.c: Likewise.
8436         * tests/unictype/test-categ_Po.c: Likewise.
8437         * tests/unictype/test-categ_Ps.c: Likewise.
8438         * tests/unictype/test-categ_S.c: Likewise.
8439         * tests/unictype/test-categ_Sc.c: Likewise.
8440         * tests/unictype/test-categ_Sk.c: Likewise.
8441         * tests/unictype/test-categ_Sm.c: Likewise.
8442         * tests/unictype/test-categ_So.c: Likewise.
8443         * tests/unictype/test-categ_Z.c: Likewise.
8444         * tests/unictype/test-categ_Zl.c: Likewise.
8445         * tests/unictype/test-categ_Zp.c: Likewise.
8446         * tests/unictype/test-categ_Zs.c: Likewise.
8447         * tests/unictype/test-ctype_alnum.c: Likewise.
8448         * tests/unictype/test-ctype_alpha.c: Likewise.
8449         * tests/unictype/test-ctype_blank.c: Likewise.
8450         * tests/unictype/test-ctype_cntrl.c: Likewise.
8451         * tests/unictype/test-ctype_digit.c: Likewise.
8452         * tests/unictype/test-ctype_graph.c: Likewise.
8453         * tests/unictype/test-ctype_lower.c: Likewise.
8454         * tests/unictype/test-ctype_print.c: Likewise.
8455         * tests/unictype/test-ctype_punct.c: Likewise.
8456         * tests/unictype/test-ctype_space.c: Likewise.
8457         * tests/unictype/test-ctype_upper.c: Likewise.
8458         * tests/unictype/test-ctype_xdigit.c: Likewise.
8459         * tests/unictype/test-decdigit.h: Likewise.
8460         * tests/unictype/test-digit.h: Likewise.
8461         * tests/unictype/test-numeric.h: Likewise.
8462         * tests/unictype/test-pr_alphabetic.c: Likewise.
8463         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
8464         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
8465         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
8466         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
8467         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
8468         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
8469         * tests/unictype/test-pr_bidi_control.c: Likewise.
8470         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
8471         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
8472         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
8473         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
8474         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
8475         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
8476         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
8477         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
8478         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
8479         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
8480         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
8481         * tests/unictype/test-pr_combining.c: Likewise.
8482         * tests/unictype/test-pr_composite.c: Likewise.
8483         * tests/unictype/test-pr_currency_symbol.c: Likewise.
8484         * tests/unictype/test-pr_dash.c: Likewise.
8485         * tests/unictype/test-pr_decimal_digit.c: Likewise.
8486         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
8487         * tests/unictype/test-pr_deprecated.c: Likewise.
8488         * tests/unictype/test-pr_diacritic.c: Likewise.
8489         * tests/unictype/test-pr_extender.c: Likewise.
8490         * tests/unictype/test-pr_format_control.c: Likewise.
8491         * tests/unictype/test-pr_grapheme_base.c: Likewise.
8492         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
8493         * tests/unictype/test-pr_grapheme_link.c: Likewise.
8494         * tests/unictype/test-pr_hex_digit.c: Likewise.
8495         * tests/unictype/test-pr_hyphen.c: Likewise.
8496         * tests/unictype/test-pr_id_continue.c: Likewise.
8497         * tests/unictype/test-pr_id_start.c: Likewise.
8498         * tests/unictype/test-pr_ideographic.c: Likewise.
8499         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
8500         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
8501         * tests/unictype/test-pr_ignorable_control.c: Likewise.
8502         * tests/unictype/test-pr_iso_control.c: Likewise.
8503         * tests/unictype/test-pr_join_control.c: Likewise.
8504         * tests/unictype/test-pr_left_of_pair.c: Likewise.
8505         * tests/unictype/test-pr_line_separator.c: Likewise.
8506         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
8507         * tests/unictype/test-pr_lowercase.c: Likewise.
8508         * tests/unictype/test-pr_math.c: Likewise.
8509         * tests/unictype/test-pr_non_break.c: Likewise.
8510         * tests/unictype/test-pr_not_a_character.c: Likewise.
8511         * tests/unictype/test-pr_numeric.c: Likewise.
8512         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
8513         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
8514         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
8515         * tests/unictype/test-pr_other_id_continue.c: Likewise.
8516         * tests/unictype/test-pr_other_id_start.c: Likewise.
8517         * tests/unictype/test-pr_other_lowercase.c: Likewise.
8518         * tests/unictype/test-pr_other_math.c: Likewise.
8519         * tests/unictype/test-pr_other_uppercase.c: Likewise.
8520         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
8521         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
8522         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
8523         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
8524         * tests/unictype/test-pr_private_use.c: Likewise.
8525         * tests/unictype/test-pr_punctuation.c: Likewise.
8526         * tests/unictype/test-pr_quotation_mark.c: Likewise.
8527         * tests/unictype/test-pr_radical.c: Likewise.
8528         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
8529         * tests/unictype/test-pr_soft_dotted.c: Likewise.
8530         * tests/unictype/test-pr_space.c: Likewise.
8531         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
8532         * tests/unictype/test-pr_titlecase.c: Likewise.
8533         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
8534         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
8535         * tests/unictype/test-pr_uppercase.c: Likewise.
8536         * tests/unictype/test-pr_variation_selector.c: Likewise.
8537         * tests/unictype/test-pr_white_space.c: Likewise.
8538         * tests/unictype/test-pr_xid_continue.c: Likewise.
8539         * tests/unictype/test-pr_xid_start.c: Likewise.
8540         * tests/unictype/test-pr_zero_width.c: Likewise.
8541         * tests/unictype/test-sy_c_whitespace.c: Likewise.
8542         * tests/unictype/test-sy_java_whitespace.c: Likewise.
8543
8544 2007-11-12  Bruno Haible  <bruno@clisp.org>
8545
8546         Unicode character classification functions.
8547         * lib/unictype.h: New file.
8548         * modules/unictype/base: New file.
8549         * modules/unictype/category-L: New file.
8550         * modules/unictype/category-Lu: New file.
8551         * modules/unictype/category-Ll: New file.
8552         * modules/unictype/category-Lt: New file.
8553         * modules/unictype/category-Lm: New file.
8554         * modules/unictype/category-Lo: New file.
8555         * modules/unictype/category-M: New file.
8556         * modules/unictype/category-Mn: New file.
8557         * modules/unictype/category-Mc: New file.
8558         * modules/unictype/category-Me: New file.
8559         * modules/unictype/category-N: New file.
8560         * modules/unictype/category-Nd: New file.
8561         * modules/unictype/category-Nl: New file.
8562         * modules/unictype/category-No: New file.
8563         * modules/unictype/category-P: New file.
8564         * modules/unictype/category-Pc: New file.
8565         * modules/unictype/category-Pd: New file.
8566         * modules/unictype/category-Ps: New file.
8567         * modules/unictype/category-Pe: New file.
8568         * modules/unictype/category-Pi: New file.
8569         * modules/unictype/category-Pf: New file.
8570         * modules/unictype/category-Po: New file.
8571         * modules/unictype/category-S: New file.
8572         * modules/unictype/category-Sm: New file.
8573         * modules/unictype/category-Sc: New file.
8574         * modules/unictype/category-Sk: New file.
8575         * modules/unictype/category-So: New file.
8576         * modules/unictype/category-Z: New file.
8577         * modules/unictype/category-Zs: New file.
8578         * modules/unictype/category-Zl: New file.
8579         * modules/unictype/category-Zp: New file.
8580         * modules/unictype/category-C: New file.
8581         * modules/unictype/category-Cc: New file.
8582         * modules/unictype/category-Cf: New file.
8583         * modules/unictype/category-Cs: New file.
8584         * modules/unictype/category-Co: New file.
8585         * modules/unictype/category-Cn: New file.
8586         * modules/unictype/category-or: New file.
8587         * modules/unictype/category-of: New file.
8588         * modules/unictype/category-test: New file.
8589         * modules/unictype/category-test-withtable: New file.
8590         * modules/unictype/category-byname: New file.
8591         * modules/unictype/category-none: New file.
8592         * modules/unictype/category-and: New file.
8593         * modules/unictype/category-and-not: New file.
8594         * modules/unictype/category-name: New file.
8595         * modules/unictype/combining-class: New file.
8596         * modules/unictype/category-all: New file.
8597         * modules/unictype/bidicategory-all: New file.
8598         * modules/unictype/bidicategory-byname: New file.
8599         * modules/unictype/bidicategory-name: New file.
8600         * modules/unictype/bidicategory-of: New file.
8601         * modules/unictype/bidicategory-test: New file.
8602         * modules/unictype/decimal-digit: New file.
8603         * modules/unictype/digit: New file.
8604         * modules/unictype/numeric: New file.
8605         * modules/unictype/mirror: New file.
8606         * modules/unictype/property-white-space: New file.
8607         * modules/unictype/property-alphabetic: New file.
8608         * modules/unictype/property-other-alphabetic: New file.
8609         * modules/unictype/property-not-a-character: New file.
8610         * modules/unictype/property-default-ignorable-code-point: New file.
8611         * modules/unictype/property-other-default-ignorable-code-point: New
8612         file.
8613         * modules/unictype/property-deprecated: New file.
8614         * modules/unictype/property-logical-order-exception: New file.
8615         * modules/unictype/property-variation-selector: New file.
8616         * modules/unictype/property-private-use: New file.
8617         * modules/unictype/property-unassigned-code-value: New file.
8618         * modules/unictype/property-uppercase: New file.
8619         * modules/unictype/property-other-uppercase: New file.
8620         * modules/unictype/property-lowercase: New file.
8621         * modules/unictype/property-other-lowercase: New file.
8622         * modules/unictype/property-titlecase: New file.
8623         * modules/unictype/property-soft-dotted: New file.
8624         * modules/unictype/property-id-start: New file.
8625         * modules/unictype/property-other-id-start: New file.
8626         * modules/unictype/property-id-continue: New file.
8627         * modules/unictype/property-other-id-continue: New file.
8628         * modules/unictype/property-xid-start: New file.
8629         * modules/unictype/property-xid-continue: New file.
8630         * modules/unictype/property-pattern-white-space: New file.
8631         * modules/unictype/property-pattern-syntax: New file.
8632         * modules/unictype/property-join-control: New file.
8633         * modules/unictype/property-grapheme-base: New file.
8634         * modules/unictype/property-grapheme-extend: New file.
8635         * modules/unictype/property-other-grapheme-extend: New file.
8636         * modules/unictype/property-grapheme-link: New file.
8637         * modules/unictype/property-bidi-control: New file.
8638         * modules/unictype/property-bidi-left-to-right: New file.
8639         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
8640         * modules/unictype/property-bidi-arabic-right-to-left: New file.
8641         * modules/unictype/property-bidi-european-digit: New file.
8642         * modules/unictype/property-bidi-eur-num-separator: New file.
8643         * modules/unictype/property-bidi-eur-num-terminator: New file.
8644         * modules/unictype/property-bidi-arabic-digit: New file.
8645         * modules/unictype/property-bidi-common-separator: New file.
8646         * modules/unictype/property-bidi-block-separator: New file.
8647         * modules/unictype/property-bidi-segment-separator: New file.
8648         * modules/unictype/property-bidi-whitespace: New file.
8649         * modules/unictype/property-bidi-non-spacing-mark: New file.
8650         * modules/unictype/property-bidi-boundary-neutral: New file.
8651         * modules/unictype/property-bidi-pdf: New file.
8652         * modules/unictype/property-bidi-embedding-or-override: New file.
8653         * modules/unictype/property-bidi-other-neutral: New file.
8654         * modules/unictype/property-hex-digit: New file.
8655         * modules/unictype/property-ascii-hex-digit: New file.
8656         * modules/unictype/property-ideographic: New file.
8657         * modules/unictype/property-unified-ideograph: New file.
8658         * modules/unictype/property-radical: New file.
8659         * modules/unictype/property-ids-binary-operator: New file.
8660         * modules/unictype/property-ids-trinary-operator: New file.
8661         * modules/unictype/property-zero-width: New file.
8662         * modules/unictype/property-space: New file.
8663         * modules/unictype/property-non-break: New file.
8664         * modules/unictype/property-iso-control: New file.
8665         * modules/unictype/property-format-control: New file.
8666         * modules/unictype/property-dash: New file.
8667         * modules/unictype/property-hyphen: New file.
8668         * modules/unictype/property-punctuation: New file.
8669         * modules/unictype/property-line-separator: New file.
8670         * modules/unictype/property-paragraph-separator: New file.
8671         * modules/unictype/property-quotation-mark: New file.
8672         * modules/unictype/property-sentence-terminal: New file.
8673         * modules/unictype/property-terminal-punctuation: New file.
8674         * modules/unictype/property-currency-symbol: New file.
8675         * modules/unictype/property-math: New file.
8676         * modules/unictype/property-other-math: New file.
8677         * modules/unictype/property-paired-punctuation: New file.
8678         * modules/unictype/property-left-of-pair: New file.
8679         * modules/unictype/property-combining: New file.
8680         * modules/unictype/property-composite: New file.
8681         * modules/unictype/property-decimal-digit: New file.
8682         * modules/unictype/property-numeric: New file.
8683         * modules/unictype/property-diacritic: New file.
8684         * modules/unictype/property-extender: New file.
8685         * modules/unictype/property-ignorable-control: New file.
8686         * modules/unictype/property-test: New file.
8687         * modules/unictype/property-byname: New file.
8688         * modules/unictype/property-all: New file.
8689         * modules/unictype/scripts: New file.
8690         * modules/unictype/scripts-all: New file.
8691         * modules/unictype/block-of: New file.
8692         * modules/unictype/block-test: New file.
8693         * modules/unictype/block-list: New file.
8694         * modules/unictype/block-all: New file.
8695         * modules/unictype/syntax-c-whitespace: New file.
8696         * modules/unictype/syntax-java-whitespace: New file.
8697         * modules/unictype/syntax-c-ident: New file.
8698         * modules/unictype/syntax-java-ident: New file.
8699         * modules/unictype/ctype-alnum: New file.
8700         * modules/unictype/ctype-alpha: New file.
8701         * modules/unictype/ctype-cntrl: New file.
8702         * modules/unictype/ctype-digit: New file.
8703         * modules/unictype/ctype-graph: New file.
8704         * modules/unictype/ctype-lower: New file.
8705         * modules/unictype/ctype-print: New file.
8706         * modules/unictype/ctype-punct: New file.
8707         * modules/unictype/ctype-space: New file.
8708         * modules/unictype/ctype-upper: New file.
8709         * modules/unictype/ctype-xdigit: New file.
8710         * modules/unictype/ctype-blank: New file.
8711         * lib/unictype/bidi_byname.c: New file.
8712         * lib/unictype/bidi_name.c: New file.
8713         * lib/unictype/bidi_of.c: New file.
8714         * lib/unictype/bidi_test.c: New file.
8715         * lib/unictype/bitmap.h: New file.
8716         * lib/unictype/block_test.c: New file.
8717         * lib/unictype/blocks.c: New file.
8718         * lib/unictype/categ_C.c: New file.
8719         * lib/unictype/categ_Cc.c: New file.
8720         * lib/unictype/categ_Cf.c: New file.
8721         * lib/unictype/categ_Cn.c: New file.
8722         * lib/unictype/categ_Co.c: New file.
8723         * lib/unictype/categ_Cs.c: New file.
8724         * lib/unictype/categ_L.c: New file.
8725         * lib/unictype/categ_Ll.c: New file.
8726         * lib/unictype/categ_Lm.c: New file.
8727         * lib/unictype/categ_Lo.c: New file.
8728         * lib/unictype/categ_Lt.c: New file.
8729         * lib/unictype/categ_Lu.c: New file.
8730         * lib/unictype/categ_M.c: New file.
8731         * lib/unictype/categ_Mc.c: New file.
8732         * lib/unictype/categ_Me.c: New file.
8733         * lib/unictype/categ_Mn.c: New file.
8734         * lib/unictype/categ_N.c: New file.
8735         * lib/unictype/categ_Nd.c: New file.
8736         * lib/unictype/categ_Nl.c: New file.
8737         * lib/unictype/categ_No.c: New file.
8738         * lib/unictype/categ_P.c: New file.
8739         * lib/unictype/categ_Pc.c: New file.
8740         * lib/unictype/categ_Pd.c: New file.
8741         * lib/unictype/categ_Pe.c: New file.
8742         * lib/unictype/categ_Pf.c: New file.
8743         * lib/unictype/categ_Pi.c: New file.
8744         * lib/unictype/categ_Po.c: New file.
8745         * lib/unictype/categ_Ps.c: New file.
8746         * lib/unictype/categ_S.c: New file.
8747         * lib/unictype/categ_Sc.c: New file.
8748         * lib/unictype/categ_Sk.c: New file.
8749         * lib/unictype/categ_Sm.c: New file.
8750         * lib/unictype/categ_So.c: New file.
8751         * lib/unictype/categ_Z.c: New file.
8752         * lib/unictype/categ_Zl.c: New file.
8753         * lib/unictype/categ_Zp.c: New file.
8754         * lib/unictype/categ_Zs.c: New file.
8755         * lib/unictype/categ_and.c: New file.
8756         * lib/unictype/categ_and_not.c: New file.
8757         * lib/unictype/categ_byname.c: New file.
8758         * lib/unictype/categ_name.c: New file.
8759         * lib/unictype/categ_none.c: New file.
8760         * lib/unictype/categ_of.c: New file.
8761         * lib/unictype/categ_or.c: New file.
8762         * lib/unictype/categ_test.c: New file.
8763         * lib/unictype/combining.c: New file.
8764         * lib/unictype/ctype_alnum.c: New file.
8765         * lib/unictype/ctype_alpha.c: New file.
8766         * lib/unictype/ctype_blank.c: New file.
8767         * lib/unictype/ctype_cntrl.c: New file.
8768         * lib/unictype/ctype_digit.c: New file.
8769         * lib/unictype/ctype_graph.c: New file.
8770         * lib/unictype/ctype_lower.c: New file.
8771         * lib/unictype/ctype_print.c: New file.
8772         * lib/unictype/ctype_punct.c: New file.
8773         * lib/unictype/ctype_space.c: New file.
8774         * lib/unictype/ctype_upper.c: New file.
8775         * lib/unictype/ctype_xdigit.c: New file.
8776         * lib/unictype/decdigit.c: New file.
8777         * lib/unictype/digit.c: New file.
8778         * lib/unictype/identsyntaxmap.h: New file.
8779         * lib/unictype/mirror.c: New file.
8780         * lib/unictype/numeric.c: New file.
8781         * lib/unictype/pr_alphabetic.c: New file.
8782         * lib/unictype/pr_ascii_hex_digit.c: New file.
8783         * lib/unictype/pr_bidi_arabic_digit.c: New file.
8784         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
8785         * lib/unictype/pr_bidi_block_separator.c: New file.
8786         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
8787         * lib/unictype/pr_bidi_common_separator.c: New file.
8788         * lib/unictype/pr_bidi_control.c: New file.
8789         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
8790         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
8791         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
8792         * lib/unictype/pr_bidi_european_digit.c: New file.
8793         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
8794         * lib/unictype/pr_bidi_left_to_right.c: New file.
8795         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
8796         * lib/unictype/pr_bidi_other_neutral.c: New file.
8797         * lib/unictype/pr_bidi_pdf.c: New file.
8798         * lib/unictype/pr_bidi_segment_separator.c: New file.
8799         * lib/unictype/pr_bidi_whitespace.c: New file.
8800         * lib/unictype/pr_byname.c: New file.
8801         * lib/unictype/pr_byname.gperf: New file.
8802         * lib/unictype/pr_combining.c: New file.
8803         * lib/unictype/pr_composite.c: New file.
8804         * lib/unictype/pr_currency_symbol.c: New file.
8805         * lib/unictype/pr_dash.c: New file.
8806         * lib/unictype/pr_decimal_digit.c: New file.
8807         * lib/unictype/pr_default_ignorable_code_point.c: New file.
8808         * lib/unictype/pr_deprecated.c: New file.
8809         * lib/unictype/pr_diacritic.c: New file.
8810         * lib/unictype/pr_extender.c: New file.
8811         * lib/unictype/pr_format_control.c: New file.
8812         * lib/unictype/pr_grapheme_base.c: New file.
8813         * lib/unictype/pr_grapheme_extend.c: New file.
8814         * lib/unictype/pr_grapheme_link.c: New file.
8815         * lib/unictype/pr_hex_digit.c: New file.
8816         * lib/unictype/pr_hyphen.c: New file.
8817         * lib/unictype/pr_id_continue.c: New file.
8818         * lib/unictype/pr_id_start.c: New file.
8819         * lib/unictype/pr_ideographic.c: New file.
8820         * lib/unictype/pr_ids_binary_operator.c: New file.
8821         * lib/unictype/pr_ids_trinary_operator.c: New file.
8822         * lib/unictype/pr_ignorable_control.c: New file.
8823         * lib/unictype/pr_iso_control.c: New file.
8824         * lib/unictype/pr_join_control.c: New file.
8825         * lib/unictype/pr_left_of_pair.c: New file.
8826         * lib/unictype/pr_line_separator.c: New file.
8827         * lib/unictype/pr_logical_order_exception.c: New file.
8828         * lib/unictype/pr_lowercase.c: New file.
8829         * lib/unictype/pr_math.c: New file.
8830         * lib/unictype/pr_non_break.c: New file.
8831         * lib/unictype/pr_not_a_character.c: New file.
8832         * lib/unictype/pr_numeric.c: New file.
8833         * lib/unictype/pr_other_alphabetic.c: New file.
8834         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
8835         * lib/unictype/pr_other_grapheme_extend.c: New file.
8836         * lib/unictype/pr_other_id_continue.c: New file.
8837         * lib/unictype/pr_other_id_start.c: New file.
8838         * lib/unictype/pr_other_lowercase.c: New file.
8839         * lib/unictype/pr_other_math.c: New file.
8840         * lib/unictype/pr_other_uppercase.c: New file.
8841         * lib/unictype/pr_paired_punctuation.c: New file.
8842         * lib/unictype/pr_paragraph_separator.c: New file.
8843         * lib/unictype/pr_pattern_syntax.c: New file.
8844         * lib/unictype/pr_pattern_white_space.c: New file.
8845         * lib/unictype/pr_private_use.c: New file.
8846         * lib/unictype/pr_punctuation.c: New file.
8847         * lib/unictype/pr_quotation_mark.c: New file.
8848         * lib/unictype/pr_radical.c: New file.
8849         * lib/unictype/pr_sentence_terminal.c: New file.
8850         * lib/unictype/pr_soft_dotted.c: New file.
8851         * lib/unictype/pr_space.c: New file.
8852         * lib/unictype/pr_terminal_punctuation.c: New file.
8853         * lib/unictype/pr_test.c: New file.
8854         * lib/unictype/pr_titlecase.c: New file.
8855         * lib/unictype/pr_unassigned_code_value.c: New file.
8856         * lib/unictype/pr_unified_ideograph.c: New file.
8857         * lib/unictype/pr_uppercase.c: New file.
8858         * lib/unictype/pr_variation_selector.c: New file.
8859         * lib/unictype/pr_white_space.c: New file.
8860         * lib/unictype/pr_xid_continue.c: New file.
8861         * lib/unictype/pr_xid_start.c: New file.
8862         * lib/unictype/pr_zero_width.c: New file.
8863         * lib/unictype/scripts.c: New file.
8864         * lib/unictype/sy_c_ident.c: New file.
8865         * lib/unictype/sy_c_whitespace.c: New file.
8866         * lib/unictype/sy_java_ident.c: New file.
8867         * lib/unictype/sy_java_whitespace.c: New file.
8868
8869         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
8870         Unicode 5.0.0.
8871         * lib/unictype/blocks.h: Likewise.
8872         * lib/unictype/categ_C.h: Likewise.
8873         * lib/unictype/categ_Cc.h: Likewise.
8874         * lib/unictype/categ_Cf.h: Likewise.
8875         * lib/unictype/categ_Cn.h: Likewise.
8876         * lib/unictype/categ_Co.h: Likewise.
8877         * lib/unictype/categ_Cs.h: Likewise.
8878         * lib/unictype/categ_L.h: Likewise.
8879         * lib/unictype/categ_Ll.h: Likewise.
8880         * lib/unictype/categ_Lm.h: Likewise.
8881         * lib/unictype/categ_Lo.h: Likewise.
8882         * lib/unictype/categ_Lt.h: Likewise.
8883         * lib/unictype/categ_Lu.h: Likewise.
8884         * lib/unictype/categ_M.h: Likewise.
8885         * lib/unictype/categ_Mc.h: Likewise.
8886         * lib/unictype/categ_Me.h: Likewise.
8887         * lib/unictype/categ_Mn.h: Likewise.
8888         * lib/unictype/categ_N.h: Likewise.
8889         * lib/unictype/categ_Nd.h: Likewise.
8890         * lib/unictype/categ_Nl.h: Likewise.
8891         * lib/unictype/categ_No.h: Likewise.
8892         * lib/unictype/categ_P.h: Likewise.
8893         * lib/unictype/categ_Pc.h: Likewise.
8894         * lib/unictype/categ_Pd.h: Likewise.
8895         * lib/unictype/categ_Pe.h: Likewise.
8896         * lib/unictype/categ_Pf.h: Likewise.
8897         * lib/unictype/categ_Pi.h: Likewise.
8898         * lib/unictype/categ_Po.h: Likewise.
8899         * lib/unictype/categ_Ps.h: Likewise.
8900         * lib/unictype/categ_S.h: Likewise.
8901         * lib/unictype/categ_Sc.h: Likewise.
8902         * lib/unictype/categ_Sk.h: Likewise.
8903         * lib/unictype/categ_Sm.h: Likewise.
8904         * lib/unictype/categ_So.h: Likewise.
8905         * lib/unictype/categ_Z.h: Likewise.
8906         * lib/unictype/categ_Zl.h: Likewise.
8907         * lib/unictype/categ_Zp.h: Likewise.
8908         * lib/unictype/categ_Zs.h: Likewise.
8909         * lib/unictype/categ_of.h: Likewise.
8910         * lib/unictype/combining.h: Likewise.
8911         * lib/unictype/ctype_alnum.h: Likewise.
8912         * lib/unictype/ctype_alpha.h: Likewise.
8913         * lib/unictype/ctype_blank.h: Likewise.
8914         * lib/unictype/ctype_cntrl.h: Likewise.
8915         * lib/unictype/ctype_digit.h: Likewise.
8916         * lib/unictype/ctype_graph.h: Likewise.
8917         * lib/unictype/ctype_lower.h: Likewise.
8918         * lib/unictype/ctype_print.h: Likewise.
8919         * lib/unictype/ctype_punct.h: Likewise.
8920         * lib/unictype/ctype_space.h: Likewise.
8921         * lib/unictype/ctype_upper.h: Likewise.
8922         * lib/unictype/ctype_xdigit.h: Likewise.
8923         * lib/unictype/decdigit.h: Likewise.
8924         * lib/unictype/digit.h: Likewise.
8925         * lib/unictype/mirror.h: Likewise.
8926         * lib/unictype/numeric.h: Likewise.
8927         * lib/unictype/pr_alphabetic.h: Likewise.
8928         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
8929         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
8930         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
8931         * lib/unictype/pr_bidi_block_separator.h: Likewise.
8932         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
8933         * lib/unictype/pr_bidi_common_separator.h: Likewise.
8934         * lib/unictype/pr_bidi_control.h: Likewise.
8935         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
8936         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
8937         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
8938         * lib/unictype/pr_bidi_european_digit.h: Likewise.
8939         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
8940         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
8941         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
8942         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
8943         * lib/unictype/pr_bidi_pdf.h: Likewise.
8944         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
8945         * lib/unictype/pr_bidi_whitespace.h: Likewise.
8946         * lib/unictype/pr_combining.h: Likewise.
8947         * lib/unictype/pr_composite.h: Likewise.
8948         * lib/unictype/pr_currency_symbol.h: Likewise.
8949         * lib/unictype/pr_dash.h: Likewise.
8950         * lib/unictype/pr_decimal_digit.h: Likewise.
8951         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
8952         * lib/unictype/pr_deprecated.h: Likewise.
8953         * lib/unictype/pr_diacritic.h: Likewise.
8954         * lib/unictype/pr_extender.h: Likewise.
8955         * lib/unictype/pr_format_control.h: Likewise.
8956         * lib/unictype/pr_grapheme_base.h: Likewise.
8957         * lib/unictype/pr_grapheme_extend.h: Likewise.
8958         * lib/unictype/pr_grapheme_link.h: Likewise.
8959         * lib/unictype/pr_hex_digit.h: Likewise.
8960         * lib/unictype/pr_hyphen.h: Likewise.
8961         * lib/unictype/pr_id_continue.h: Likewise.
8962         * lib/unictype/pr_id_start.h: Likewise.
8963         * lib/unictype/pr_ideographic.h: Likewise.
8964         * lib/unictype/pr_ids_binary_operator.h: Likewise.
8965         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
8966         * lib/unictype/pr_ignorable_control.h: Likewise.
8967         * lib/unictype/pr_iso_control.h: Likewise.
8968         * lib/unictype/pr_join_control.h: Likewise.
8969         * lib/unictype/pr_left_of_pair.h: Likewise.
8970         * lib/unictype/pr_line_separator.h: Likewise.
8971         * lib/unictype/pr_logical_order_exception.h: Likewise.
8972         * lib/unictype/pr_lowercase.h: Likewise.
8973         * lib/unictype/pr_math.h: Likewise.
8974         * lib/unictype/pr_non_break.h: Likewise.
8975         * lib/unictype/pr_not_a_character.h: Likewise.
8976         * lib/unictype/pr_numeric.h: Likewise.
8977         * lib/unictype/pr_other_alphabetic.h: Likewise.
8978         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
8979         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
8980         * lib/unictype/pr_other_id_continue.h: Likewise.
8981         * lib/unictype/pr_other_id_start.h: Likewise.
8982         * lib/unictype/pr_other_lowercase.h: Likewise.
8983         * lib/unictype/pr_other_math.h: Likewise.
8984         * lib/unictype/pr_other_uppercase.h: Likewise.
8985         * lib/unictype/pr_paired_punctuation.h: Likewise.
8986         * lib/unictype/pr_paragraph_separator.h: Likewise.
8987         * lib/unictype/pr_pattern_syntax.h: Likewise.
8988         * lib/unictype/pr_pattern_white_space.h: Likewise.
8989         * lib/unictype/pr_private_use.h: Likewise.
8990         * lib/unictype/pr_punctuation.h: Likewise.
8991         * lib/unictype/pr_quotation_mark.h: Likewise.
8992         * lib/unictype/pr_radical.h: Likewise.
8993         * lib/unictype/pr_sentence_terminal.h: Likewise.
8994         * lib/unictype/pr_soft_dotted.h: Likewise.
8995         * lib/unictype/pr_space.h: Likewise.
8996         * lib/unictype/pr_terminal_punctuation.h: Likewise.
8997         * lib/unictype/pr_titlecase.h: Likewise.
8998         * lib/unictype/pr_unassigned_code_value.h: Likewise.
8999         * lib/unictype/pr_unified_ideograph.h: Likewise.
9000         * lib/unictype/pr_uppercase.h: Likewise.
9001         * lib/unictype/pr_variation_selector.h: Likewise.
9002         * lib/unictype/pr_white_space.h: Likewise.
9003         * lib/unictype/pr_xid_continue.h: Likewise.
9004         * lib/unictype/pr_xid_start.h: Likewise.
9005         * lib/unictype/pr_zero_width.h: Likewise.
9006         * lib/unictype/scripts.h: Likewise.
9007         * lib/unictype/scripts_byname.gperf: Likewise.
9008         * lib/unictype/sy_c_ident.h: Likewise.
9009         * lib/unictype/sy_c_whitespace.h: Likewise.
9010         * lib/unictype/sy_java_ident.h: Likewise.
9011         * lib/unictype/sy_java_whitespace.h: Likewise.
9012
9013         * lib/unictype/Makefile: New file.
9014         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
9015         glibc.
9016         * lib/unictype/3level.h: New file, copied from glibc.
9017         * lib/unictype/3levelbit.h: New file.
9018
9019 2007-11-11  Bruno Haible  <bruno@clisp.org>
9020
9021         * modules/gperf: New file.
9022         * modules/iconv_open (Depends-on): Add it.
9023         (Makefile.am): Remove the GPERF definition.
9024
9025 2007-11-11  Bruno Haible  <bruno@clisp.org>
9026
9027         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
9028         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
9029
9030 2007-11-11  Bruno Haible  <bruno@clisp.org>
9031
9032         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
9033         (usage): Remove function.
9034
9035 2007-11-11  Bruno Haible  <bruno@clisp.org>
9036
9037         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
9038         gl_FUNC_CEILF_LIBS.
9039         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
9040         gl_FUNC_CEIL_LIBS.
9041         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
9042         gl_FUNC_CEILL_LIBS.
9043         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
9044         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
9045         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
9046
9047 2007-11-11  Bruno Haible  <bruno@clisp.org>
9048
9049         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
9050         roundf were declared but do not exist on functions.
9051         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
9052         roundl were declared but do not exist on functions.
9053         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
9054         HAVE_FLOORL_AND_CEILL, respectively.
9055         Needed for Sun C on Solaris 10.
9056
9057 2007-11-11  Bruno Haible  <bruno@clisp.org>
9058
9059         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
9060         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
9061         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
9062         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
9063         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
9064         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
9065         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
9066         HAVE_DECL_ROUNDF.
9067         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
9068         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
9069         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
9070         of HAVE_DECL_ROUND*.
9071         * modules/math (Makefile.am): Update.
9072
9073 2007-11-10  Bruno Haible  <bruno@clisp.org>
9074
9075         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
9076         ptrdiff_t as m4/intl.m4.
9077
9078 2007-11-10  Jim Meyering  <meyering@redhat.com>
9079
9080         Avoid link failure for the argmatch test.
9081         * tests/test-argmatch.c (usage): Define function to avoid a link
9082         failure: argmatch_die requires a usage function.
9083
9084 2007-11-09  Bruno Haible  <bruno@clisp.org>
9085
9086         * doc/functions/snprintf.texi: Mention BeOS deficiency.
9087         * doc/functions/vsnprintf.texi: Likewise.
9088         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
9089         with a size argument < 2.
9090
9091 2007-11-09  Bruno Haible  <bruno@clisp.org>
9092
9093         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
9094         buffer. Fixes an inefficiency introduced on 2007-11-03.
9095
9096 2007-11-09  Bruno Haible  <bruno@clisp.org>
9097
9098         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
9099         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
9100
9101 2007-11-08  Jim Meyering  <meyering@redhat.com>
9102
9103         Change cache variable name prefix "jm_" to "gl_" everywhere.
9104         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
9105         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
9106         * m4/uptime.m4: s/gl_/jm_/
9107
9108 2007-11-07  Bruno Haible  <bruno@clisp.org>
9109
9110         Update to GNU gettext 0.17.
9111         * m4/intl.m4: Update to GNU gettext 0.17.
9112         * m4/po.m4: Likewise.
9113         * modules/gettext (Files): Remove m4/ulonglong.m4.
9114         (configure.ac): Require gettext infrastructure from version 0.17.
9115
9116 2007-11-06  Bruno Haible  <bruno@clisp.org>
9117
9118         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
9119         symbolic values are not defined in a public header.
9120         * lib/freadable.c (freadable) [QNX]: Likewise.
9121         * lib/freadahead.c (freadahead) [QNX]: Likewise.
9122         * lib/freading.c (freading) [QNX]: Likewise.
9123         * lib/fseterr.c (fseterr) [QNX]: Likewise.
9124         * lib/fwritable.c (fwritable) [QNX]: Likewise.
9125         * lib/fwriting.c (fwriting) [QNX]: Likewise.
9126         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
9127         Reported by Alain Magloire.
9128
9129         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
9130
9131 2007-11-05  Bruno Haible  <bruno@clisp.org>
9132
9133         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
9134         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
9135         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
9136         Reported by Eric Blake.
9137
9138 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9139             Bruno Haible  <bruno@clisp.org>
9140
9141         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
9142         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
9143         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
9144         (malloc): Undefine also before including <stdlib.h>.
9145         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
9146         Needed on OSF/1 4.0.
9147
9148 2007-11-05  Jim Meyering  <meyering@redhat.com>
9149
9150         git-version-gen: sync from coreutils.
9151         * build-aux/git-version-gen: Add comments.
9152         Change the first '-' to '.' in the snapshot version string,
9153         e.g., 6.9-377-08144 -> 6.9.377-08144
9154         Remove first parameter.
9155         Don't declare a version "-dirty" merely because a time
9156         stamp has changed.
9157
9158 2007-11-04  Bruno Haible  <bruno@clisp.org>
9159
9160         * lib/lock.h: Protect all macro definitions containing an 'if'
9161         statement through a "do { ... } while (0)".
9162         * lib/tls.h: Likewise.
9163
9164 2007-11-04  Bruno Haible  <bruno@clisp.org>
9165
9166         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
9167
9168 2007-11-04  Bruno Haible  <bruno@clisp.org>
9169
9170         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
9171         * modules/fprintf-posix (Depends-on): Add nocrash.
9172         * modules/snprintf-posix (Depends-on): Likewise.
9173         * modules/sprintf-posix (Depends-on): Likewise.
9174         * modules/vasnprintf-posix (Depends-on): Likewise.
9175         * modules/vasprintf-posix (Depends-on): Likewise.
9176         * modules/vfprintf-posix (Depends-on): Likewise.
9177         * modules/vsnprintf-posix (Depends-on): Likewise.
9178         * modules/vsprintf-posix (Depends-on): Likewise.
9179         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
9180         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
9181         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
9182         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
9183         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
9184         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
9185         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
9186
9187 2007-11-04  Bruno Haible  <bruno@clisp.org>
9188
9189         * modules/nocrash: New file.
9190         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
9191         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
9192
9193 2007-11-04  Bruno Haible  <bruno@clisp.org>
9194
9195         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
9196         precision handling.
9197         * tests/test-vasprintf-posix.c (test_function): Likewise.
9198         * tests/test-snprintf-posix.h (test_function): Likewise.
9199         * tests/test-sprintf-posix.h (test_function): Likewise.
9200
9201         Fix *printf behaviour for large precisions on mingw and BeOS.
9202         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
9203         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
9204         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
9205         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
9206         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
9207         gl_PRINTF_PRECISION and test its result. Invoke
9208         gl_PREREQ_VASNPRINTF_PRECISION.
9209         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
9210         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
9211         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
9212         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
9213         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
9214         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
9215         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
9216         * doc/functions/fprintf.texi: Update.
9217         * doc/functions/printf.texi: Update.
9218         * doc/functions/snprintf.texi: Update.
9219         * doc/functions/sprintf.texi: Update.
9220         * doc/functions/vfprintf.texi: Update.
9221         * doc/functions/vprintf.texi: Update.
9222         * doc/functions/vsnprintf.texi: Update.
9223         * doc/functions/vsprintf.texi: Update.
9224
9225 2007-11-04  Bruno Haible  <bruno@clisp.org>
9226
9227         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
9228
9229 2007-11-04  Bruno Haible  <bruno@clisp.org>
9230
9231         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
9232         Reported by Sylvain Beucler <beuc@gnu.org>.
9233
9234 2007-11-03  Bruno Haible  <bruno@clisp.org>
9235
9236         * tests/test-fprintf-posix2.sh: New file.
9237         * tests/test-fprintf-posix2.c: New file.
9238         * modules/fprintf-posix-tests (Files): Add them.
9239         (TESTS): Add test-fprintf-posix2.sh.
9240         (configure.ac): Check for getrlimit and setrlimit.
9241         (check_PROGRAMS): Add test-fprintf-posix2.
9242
9243         * tests/test-printf-posix2.sh: New file.
9244         * tests/test-printf-posix2.c: New file.
9245         * modules/printf-posix-tests (Files): Add them.
9246         (TESTS): Add test-printf-posix2.sh.
9247         (configure.ac): Check for getrlimit and setrlimit.
9248         (check_PROGRAMS): Add test-printf-posix2.
9249
9250         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
9251         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
9252         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
9253         (decode_double): New function, copied from decode_long_double.
9254         (scale10_round_decimal_decoded): New function, extracted from
9255         scale10_round_decimal_long_double.
9256         (scale10_round_decimal_long_double): Use it.
9257         (scale10_round_decimal_double): New function.
9258         (floorlog10): New function.
9259         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
9260         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
9261         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
9262         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
9263         gl_PRINTF_ENOMEM and test its result. Invoke
9264         gl_PREREQ_VASNPRINTF_ENOMEM.
9265         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
9266         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
9267         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
9268         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
9269         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
9270         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
9271         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
9272         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
9273         * modules/snprintf-posix (Depends-on): Likewise.
9274         * modules/sprintf-posix (Depends-on): Likewise.
9275         * modules/vasnprintf-posix (Depends-on): Likewise.
9276         * modules/vasprintf-posix (Depends-on): Likewise.
9277         * modules/vfprintf-posix (Depends-on): Likewise.
9278         * modules/vsnprintf-posix (Depends-on): Likewise.
9279         * modules/vsprintf-posix (Depends-on): Likewise.
9280         * doc/functions/fprintf.texi: Update.
9281         * doc/functions/printf.texi: Update.
9282         * doc/functions/snprintf.texi: Update.
9283         * doc/functions/sprintf.texi: Update.
9284         * doc/functions/vfprintf.texi: Update.
9285         * doc/functions/vprintf.texi: Update.
9286         * doc/functions/vsnprintf.texi: Update.
9287         * doc/functions/vsprintf.texi: Update.
9288
9289 2007-11-03  Bruno Haible  <bruno@clisp.org>
9290
9291         * modules/frexp-nolibm-tests: New file.
9292
9293         * modules/frexp-nolibm: New file.
9294         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
9295
9296 2007-11-03  Bruno Haible  <bruno@clisp.org>
9297
9298         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
9299         value is C99 compliant.
9300         Needed for OSF/1 5.1.
9301
9302 2007-11-03  Bruno Haible  <bruno@clisp.org>
9303
9304         Fix out-of-memory handling of vasnprintf.
9305         * lib/printf-parse.c: Include <errno.h>.
9306         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
9307         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
9308         is already set.
9309
9310 2007-11-02  Eric Blake  <ebb9@byu.net>
9311
9312         Fix tests on cygwin.
9313         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
9314
9315 2007-11-01  Bruno Haible  <bruno@clisp.org>
9316
9317         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
9318         warning.
9319         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
9320         needed for POSIX compatibility.
9321
9322 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
9323
9324         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
9325         for compatibility with GNU.
9326
9327 2007-11-01  Bruno Haible  <bruno@clisp.org>
9328
9329         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
9330         (putenv): Renamed from rpl_putenv. Change argument type from
9331         'const char *' to 'char *'.
9332         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
9333         of defining putenv in config.h, just set REPLACE_PUTENV.
9334         * modules/putenv (Depends-on): Add stdlib.
9335         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9336         (Include): Use <stdlib.h>.
9337         * lib/stdlib.in.h (putenv): New declaration.
9338         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
9339         REPLACE_PUTENV.
9340         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
9341         REPLACE_PUTENV.
9342         Needed for MacOS X 10.5.0.
9343         Reported by Peter O'Gorman <peter@pogma.com>.
9344
9345 2007-11-01  Jim Meyering  <meyering@redhat.com>
9346
9347         Treat an empty date string exactly like "0".
9348         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
9349         if the remaining date string (to be parsed) is empty, use "0".
9350         Reported by Mischa Molhoek and discussed in this thread:
9351         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
9352
9353 2007-10-31  Bruno Haible  <bruno@clisp.org>
9354
9355         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
9356         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
9357         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
9358         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
9359         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
9360         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
9361
9362 2007-10-31  Bruno Haible  <bruno@clisp.org>
9363
9364         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
9365         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
9366         (AC_TYPE_LONG_LONG_INT): Use it.
9367         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
9368         it as well.
9369         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
9370         to m4/longlong.m4.
9371         * modules/stdint (Files): Remove m4/ulonglong.m4.
9372         * modules/strtoull (Files): Use m4/longlong.m4 instead of
9373         m4/ulonglong.m4.
9374         * modules/strtoumax (Files): Likewise.
9375
9376 2007-10-30  Bruno Haible  <bruno@clisp.org>
9377
9378         * modules/xvasprintf-posix: New file.
9379         Suggested by Eric Blake.
9380
9381 2007-10-30  Bruno Haible  <bruno@clisp.org>
9382
9383         * modules/xprintf-posix-tests: New file.
9384         * tests/test-xprintf-posix.sh: New file.
9385         * tests/test-xprintf-posix.c: New file.
9386         * tests/test-xfprintf-posix.c: New file.
9387
9388         * modules/xprintf-posix: New file.
9389
9390 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9391
9392         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
9393         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
9394         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
9395
9396 2007-10-29  Bruno Haible  <bruno@clisp.org>
9397
9398         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
9399         contain the special marker '_cv_'.
9400         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
9401         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
9402         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
9403         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
9404         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
9405         Reported by Ralf Wildenhues.
9406
9407 2007-10-29  Bruno Haible  <bruno@clisp.org>
9408
9409         * gnulib-tool (func_import): When --lgpl is not specified, set
9410         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
9411         GPLv3.
9412         Reported by Simon Josefsson.
9413
9414 2007-10-28  Bruno Haible  <bruno@clisp.org>
9415
9416         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
9417         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
9418         HAVE_DECL_ISFINITE.
9419         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
9420         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
9421         HAVE_DECL_ISFINITE.
9422
9423 2007-10-28  Bruno Haible  <bruno@clisp.org>
9424
9425         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
9426         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
9427
9428 2007-10-28  Bruno Haible  <bruno@clisp.org>
9429
9430         Fix link errors with Sun C 5.0 on Solaris 10.
9431         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
9432         function is declared but not present in the compiler's libm.
9433         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
9434         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
9435         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
9436         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
9437         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
9438         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
9439         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
9440         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
9441         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
9442         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
9443         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
9444         HAVE_DECL_FLOORL.
9445
9446 2007-10-28  Bruno Haible  <bruno@clisp.org>
9447
9448         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
9449         gl_FUNC_FLOORL. Cache the result.
9450         (gl_FUNC_FLOORL): Use it.
9451         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
9452         gl_FUNC_CEILL. Cache the result.
9453         (gl_FUNC_CEILL): Use it.
9454
9455         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
9456         gl_FUNC_FLOOR. Cache the result.
9457         (gl_FUNC_FLOOR): Use it.
9458         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
9459         gl_FUNC_CEIL. Cache the result.
9460         (gl_FUNC_CEIL): Use it.
9461
9462         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
9463         gl_FUNC_FLOORF. Cache the result.
9464         (gl_FUNC_FLOORF): Use it.
9465         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
9466         gl_FUNC_CEILF. Cache the result.
9467         (gl_FUNC_CEILF): Use it.
9468
9469 2007-10-28  Bruno Haible  <bruno@clisp.org>
9470
9471         * gnulib-tool: Allow specifying the LGPL version number through
9472         --lgpl=2 or --lgpl=3.
9473         (func_usage): Document --lgpl with argument.
9474         Handle --lgpl=... arguments.
9475         (func_import): Recognize also gl_LGPL calls with an argument. When
9476         --lgpl=2 is used and the module's license is just LGPL, report an
9477         error. Set sed_transform_lib_file according to the lgpl variable. In
9478         the generated files, use --lgpl or gl_LGPL invocations with argument,
9479         if necessary.
9480         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
9481         an LGPv2+ license.
9482         * doc/gnulib-tool.texi (Modified imports): Update explanation of
9483         gl_LGPL macro.
9484
9485 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9486             Bruno Haible  <bruno@clisp.org>
9487
9488         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
9489         (u16_uctomb_aux): Likewise.
9490         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
9491         !HAVE_INLINE.
9492         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
9493
9494 2007-10-28  Bruno Haible  <bruno@clisp.org>
9495
9496         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
9497         Invoke AM_GETTEXT_OPTION if it exists.
9498         * modules/vasprintf: Likewise.
9499         * modules/verror: Likewise.
9500         * modules/xprintf: Likewise.
9501         * modules/xvasprintf: Likewise.
9502
9503 2007-10-27  Ben Pfaff  <blp@gnu.org>
9504
9505         * lib/math.in.h: Define isfinite macro and prototypes for
9506         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
9507         implementations.
9508         * m4/math_h.m4: New substitutions for isfinite module.
9509         * lib/isfinite.c: New file.
9510         * m4/isfinite.m4: New file.
9511         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
9512         * modules/isfinite: New file.
9513         * modules/isfinite-tests: New file.
9514         * tests/tests-isfinite.c: New file.
9515         * doc/functions/isfinite.texi: Mention isfinite module.
9516         * MODULES.html.sh: Mention new module.
9517
9518 2007-10-27  Ben Pfaff  <blp@gnu.org>
9519
9520         Ralf Wildenhues reported that Tru64 4.0D declares the round
9521         functions but does not have definitions.
9522         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
9523         cannot be found in any library, set the output variable to
9524         "missing" instead of "".
9525         * m4/round.m4: Also use our substitute if we cannot find round in
9526         any library, even if it is declared.
9527         * m4/roundf.m4: Likewise for roundf.
9528         * m4/roundl.m4: Likewise for roundl.
9529         * lib/math.in.h: Undefine roundf, round, roundl before defining
9530         their replacements, to allow for hypothetical systems where these
9531         may be defined as macros but not available in libraries.
9532
9533 2007-10-27  Bruno Haible  <bruno@clisp.org>
9534
9535         * doc/gnulib.texi: Invoke @firstparagraphindent.
9536         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
9537         changes in gnulib.
9538         (Source changes): New section.
9539
9540 2007-10-26  Bruno Haible  <bruno@clisp.org>
9541
9542         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
9543         borrowed from autoconf.
9544
9545 2007-10-26  Bruno Haible  <bruno@clisp.org>
9546
9547         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
9548         strerror returned the empty string. Needed on HP-UX 11.00.
9549
9550 2007-10-24  Micah Cowan  <micah@cowan.name>
9551
9552         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
9553         * build-aux/bootstrap: Remove support for now-unnecessary option,
9554         --cvs-user, and envvars CVS_USER, CVS_RSH.
9555
9556 2007-10-24  Jim Meyering  <meyering@redhat.com>
9557
9558         Avoid diagnostics from sha1sum when there is no cached checksum.
9559         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
9560         if the po.s1 file hasn't been created yet.
9561
9562         * build-aux/bootstrap: Sync from coreutils:
9563         2007-10-24  Jim Meyering  <meyering@redhat.com>
9564         Get gnulib from the git repository, not from an obsolete cvs one.
9565         * build-aux/bootstrap: Suggestion from Micah Cowan.
9566         2007-10-04  Jim Meyering  <jim@meyering.net>
9567         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
9568         (update_po_files): Work also when there are no .po files in po/.
9569
9570 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
9571
9572         * README: Append ".git" to git and cg examples.
9573         Problem reported by Benoit Sigoure.
9574
9575 2007-10-23  Micah Cowan  <micah@cowan.name>
9576
9577         * users.txt: Add wget.
9578
9579 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9580
9581         Fix linking of some unistdio tests on FreeBSD.
9582         * modules/unistdio/u16-vsnprintf-tests
9583         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
9584         * modules/unistdio/u16-vsprintf-tests
9585         (test_u16_vsnprintf1_LDADD): Likewise.
9586         * modules/unistdio/u32-vsnprintf-tests
9587         (test_u32_vsnprintf1_LDADD): Likewise.
9588         * modules/unistdio/u32-vsprintf-tests
9589         (test_u32_vsprintf1_LDADD): Likewise.
9590         * modules/unistdio/u8-vsnprintf-tests
9591         (test_u8_vsnprintf1_LDADD): Likewise.
9592         * modules/unistdio/u8-vsprintf-tests
9593         (test_u8_vsprintf1_LDADD): Likewise.
9594         * modules/unistdio/ulc-vsnprintf-tests
9595         (test_ulc_vsnprintf1_LDADD): Likewise.
9596         * modules/unistdio/ulc-vsprintf-tests
9597         (test_ulc_vsprintf1_LDADD): Likewise.
9598
9599         Fix linking of some uniconv tests on FreeBSD.
9600         * modules/uniconv/u16-conv-from-enc-tests
9601         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
9602         * modules/uniconv/u16-conv-to-enc-tests
9603         (test_u16_conv_to_enc_LDADD): Likewise.
9604         * modules/uniconv/u16-strconv-from-enc-tests
9605         (test_u16_strconv_from_enc_LDADD): Likewise.
9606         * modules/uniconv/u16-strconv-to-enc-tests
9607         (test_u16_strconv_to_enc_LDADD): Likewise.
9608         * modules/uniconv/u32-conv-from-enc-tests
9609         (test_u32_conv_from_enc_LDADD): Likewise.
9610         * modules/uniconv/u32-conv-to-enc-tests
9611         (test_u32_conv_to_enc_LDADD): Likewise.
9612         * modules/uniconv/u32-strconv-from-enc-tests
9613         (test_u32_strconv_from_enc_LDADD): Likewise.
9614         * modules/uniconv/u32-strconv-to-enc-tests
9615         (test_u32_strconv_to_enc_LDADD): Likewise.
9616         * modules/uniconv/u8-conv-from-enc-tests
9617         (test_u8_conv_from_enc_LDADD): Likewise.
9618         * modules/uniconv/u8-conv-to-enc-tests
9619         (test_u8_conv_to_enc_LDADD): Likewise.
9620         * modules/uniconv/u8-strconv-from-enc-tests
9621         (test_u8_strconv_from_enc_LDADD): Likewise.
9622         * modules/uniconv/u8-strconv-to-enc-tests
9623         (test_u8_strconv_to_enc_LDADD): Likewise.
9624
9625 2007-10-22  Bruno Haible  <bruno@clisp.org>
9626
9627         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
9628         size.
9629
9630 2007-10-22  Eric Blake  <ebb9@byu.net>
9631
9632         Tweak x*printf documentation.
9633         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
9634         variable name and comments.
9635         Suggested by Bruno Haible.
9636
9637 2007-10-22  Bruno Haible  <bruno@clisp.org>
9638
9639         * lib/acl.c (copy_acl): Fix file name in comment.
9640
9641 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
9642
9643         Fix Tru64 problem with stdbool.h.
9644         * lib/stdbool.in.h (false, true):
9645         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
9646         Don't declare as an enum in this situation; it runs afoul of Tru64.
9647         Problem reported by Steven M. Schweda in
9648         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
9649
9650 2007-10-22  Eric Blake  <ebb9@byu.net>
9651
9652         Also wrap vf?printf.
9653         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
9654         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
9655         (xvprintf, xvfprintf): New functions.
9656
9657 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9658
9659         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
9660         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
9661
9662         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
9663         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
9664
9665 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
9666
9667         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
9668         by Bruno Haible.
9669
9670 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9671
9672         * lib/getloadavg.c
9673         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
9674         Undef `sys' after including sys/table.h, for Tru64 4.0D.
9675
9676         * tests/test-i-ring.c: Work for C89.
9677
9678 2007-10-22  Bruno Haible  <bruno@clisp.org>
9679
9680         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
9681         -1u, in preprocessor expression, so that we don't test for the bug
9682         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
9683         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
9684
9685 2007-10-22  Eric Blake  <ebb9@byu.net>
9686
9687         * tests/test-yesno.sh: Silence stderr during test.
9688
9689 2007-10-22  Simon Josefsson  <simon@josefsson.org>
9690
9691         * modules/crypto/gc-camellia: New file.
9692
9693         * m4/gc-camellia.m4: New file.
9694
9695         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
9696
9697         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
9698
9699 2007-10-22  Simon Josefsson  <simon@josefsson.org>
9700
9701         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
9702         --help to stdout.  Reported by sms@antinode.org (Steven
9703         M. Schweda).
9704
9705 2007-10-22  Simon Josefsson  <simon@josefsson.org>
9706
9707         * users.txt: Fix link to libksba.
9708
9709 2007-10-21  Ben Pfaff  <blp@gnu.org>
9710
9711         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
9712         round.c roundf implementation that depends on floorf and ceilf to
9713         be tested unconditionally.
9714
9715 2007-10-21  Ben Pfaff  <blp@gnu.org>
9716
9717         * m4/check-libm-func.m4: Removed.
9718         * m4/check-math-lib.m4: New file.
9719         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
9720         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
9721         definition and lack of AC_LIBOBJ([roundf]).
9722         * m4/roundl.m4: Ditto, and similarly for roundl.
9723         * modules/round: Reference new m4 file.
9724         * modules/roundf: Ditto.
9725         * modules/roundl: Ditto.
9726         * tests/test-round2.c (main): Use ROUND instead of round.
9727         Bug report from Bruno Haible.
9728
9729 2007-10-21  Bruno Haible  <bruno@clisp.org>
9730
9731         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
9732         context.
9733
9734 2007-10-21  Bruno Haible  <bruno@clisp.org>
9735
9736         * tests/test-wcwidth.c (main): Allow negative result for some control
9737         characters.
9738
9739         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
9740         Needed on OSF/1 5.1.
9741
9742 2007-10-21  Bruno Haible  <bruno@clisp.org>
9743
9744         * tests/test-floorf1.c: Include isnanf.h.
9745         (main): Use isnanf() instead of isnan().
9746         * tests/test-ceilf1.c: Include isnanf.h.
9747         (main): Use isnanf() instead of isnan().
9748         * tests/test-truncf1.c: Include isnanf.h.
9749         (main): Use isnanf() instead of isnan().
9750         * tests/test-roundf1.c: Include isnanf.h.
9751         (main): Use isnanf() instead of isnan().
9752
9753 2007-10-21  Eric Blake  <ebb9@byu.net>
9754
9755         * users.txt: Update URL for m4.
9756
9757 2007-10-21  Bruno Haible  <bruno@clisp.org>
9758
9759         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
9760
9761 2007-10-21  Bruno Haible  <bruno@clisp.org>
9762
9763         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
9764         Git's management files if the CVS files are not present.
9765
9766 2007-10-20  Bruno Haible  <bruno@clisp.org>
9767
9768         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
9769         gcc-3.4.x.
9770
9771 2007-10-20  Ben Pfaff  <blp@gnu.org>
9772
9773         * lib/math.in.h: Declare round, roundf, roundl if we are providing
9774         implementations.
9775         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
9776         * lib/round.c: New file.
9777         * lib/roundf.c: New file.
9778         * lib/roundl.c: New file.
9779         * m4/round.m4: New file.
9780         * m4/roundf.m4: New file.
9781         * m4/roundl.m4: New file.
9782         * m4/check-libm-func-m4: New file.
9783         * modules/math: Replace round, roundf, roundl related @VARS@ in
9784         math.in.h.
9785         * modules/round: New file.
9786         * modules/round-tests: New file.
9787         * modules/roundf: New file.
9788         * modules/roundf-tests: New file.
9789         * modules/roundl: New file.
9790         * modules/roundl-tests: New file.
9791         * tests/test-round1.c: New file.
9792         * tests/test-round2.c: New file.
9793         * tests/test-roundf1.c: New file.
9794         * tests/test-roundf2.c: New file.
9795         * tests/test-roundl.c: New file.
9796         * doc/functions/round.texi: Mention round module.
9797         * doc/functions/roundf.texi: Mention roundf module.
9798         * doc/functions/roundl.texi: Mention roundl module.
9799         * MODULES.html.sh: Mention new modules.
9800         Thanks to Bruno Haible for suggestions.
9801
9802 2007-10-20  Jim Meyering  <meyering@redhat.com>
9803
9804         * lib/xprintf.c: Include <config.h> unconditionally.
9805
9806         Change xprintf's license to GPL.
9807         * modules/xprintf (License): s/LGPL/GPL/, since this module
9808         depends on modules (exit and exitfail) which are GPL.
9809         Suggestion from Bruno Haible.
9810
9811         xprintf fixes.
9812         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
9813         Use a clearer diagnostic.
9814         Patch from Bruno Haible.
9815
9816 2007-10-20  Bruno Haible  <bruno@clisp.org>
9817
9818         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
9819         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
9820         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9821
9822 2007-10-20  Bruno Haible  <bruno@clisp.org>
9823
9824         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
9825         precision in the comparison result > x - 1 or similar.
9826         * tests/test-ceilf2.c (correct_result_p): Likewise.
9827         * tests/test-truncf2.c (correct_result_p): Likewise.
9828         * tests/test-trunc2.c (correct_result_p): Likewise.
9829         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9830
9831 2007-10-20  Bruno Haible  <bruno@clisp.org>
9832
9833         * modules/ceil: New file.
9834         * m4/ceil.m4: New file.
9835         * doc/functions/ceil.texi: Mention the 'ceil' module.
9836
9837 2007-10-20  Bruno Haible  <bruno@clisp.org>
9838
9839         * modules/floor: New file.
9840         * m4/floor.m4: New file.
9841         * doc/functions/floor.texi: Mention the 'floor' module.
9842
9843 2007-10-20  Bruno Haible  <bruno@clisp.org>
9844
9845         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
9846         of %a.
9847         * modules/floorf-tests (Depends-on): Likewise.
9848         * modules/truncf-tests (Depends-on): Likewise.
9849         * modules/trunc-tests (Depends-on): Likewise.
9850         Reported by Ben Pfaff.
9851
9852 2007-10-19  Jim Meyering  <meyering@redhat.com>
9853
9854         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
9855         Don't bother testing specific errno values.  Just test ferror.
9856
9857         New module: xprintf
9858         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
9859
9860 2007-10-19  Bruno Haible  <bruno@clisp.org>
9861
9862         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
9863         syntax.
9864         * modules/javaexec (Makefile.am): Likewise.
9865         * modules/relocatable-prog (Makefile.am): Likewise.
9866         Suggested by Jim Meyering.
9867
9868 2007-10-18  Bruno Haible  <bruno@clisp.org>
9869
9870         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
9871         Reported by Jim Meyering.
9872
9873 2007-10-18  Eric Blake  <ebb9@byu.net>
9874
9875         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
9876
9877 2007-10-18  Bruno Haible  <bruno@clisp.org>
9878
9879         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
9880         the format string into writable memory. Needed in Fortify conditions.
9881
9882 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
9883             Bruno Haible  <bruno@clisp.org>
9884
9885         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
9886         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
9887         * modules/trim (Depends-on): Add mbchar.
9888         (configure.ac): Add gl_FUNC_MBRTOWC.
9889         (Makefile.am): Augment lib_SOURCES.
9890
9891 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
9892
9893         Modify glob.c to use fstatat and dirfd, to simplify it.
9894         Suggested by Eric Blake.
9895         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
9896         Don't include <stdbool.h>; not used.
9897         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
9898         (link_exists_p): Simplify implementation, since we can now assume
9899         dirfd and fstatat.
9900         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
9901
9902 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9903
9904         * gnulib-tool (func_get_dependencies): Fix sed script to
9905         match only tests.
9906
9907 2007-10-17  Bruno Haible  <bruno@clisp.org>
9908
9909         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
9910         allow locale names without encoding suffix.
9911         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
9912         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
9913
9914 2007-10-16  Bruno Haible  <bruno@clisp.org>
9915
9916         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
9917         * lib/getgroups.c (getgroups): Likewise.
9918         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
9919
9920 2007-10-16  Bruno Haible  <bruno@clisp.org>
9921
9922         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
9923         * modules/malloc-posix (License): Likewise.
9924         * modules/realloc-posix (License): Likewise.
9925         * modules/calloc-posix (License): Likewise.
9926         * modules/intprops (License): Change from GPL to LGPL, with
9927         Paul Eggert's approval.
9928
9929 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
9930
9931         Merge glibc changes into lib/glob.c.
9932
9933         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
9934         2007-10-15 04:59:03 UTC.  Here are the changes:
9935
9936         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
9937
9938         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
9939
9940         * lib/glob.c: Add some branch prediction throughout.
9941
9942         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
9943
9944         [BZ #5103]
9945         * lib/glob.c (glob): Recognize patterns starting \/.
9946
9947         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
9948
9949         [BZ #3996]
9950         * lib/glob.c (attribute_hidden): Define if not defined.
9951         (glob): Unescape dirname, filename or username when needed and not
9952         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
9953         is NULL.  Handle unescaped [ in pattern without closing ].
9954         Don't pass GLOB_CHECK down to recursive glob for directories.
9955         (__glob_pattern_type): New function.
9956         (__glob_pattern_p): Implement using __glob_pattern_type.
9957         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
9958         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
9959         Remove unreachable code.
9960
9961         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
9962
9963         * lib/glob.c (glob_in_dir): Add some comments and asserts to
9964         explain why there are no leaks.
9965
9966         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
9967
9968         [BZ #3253]
9969         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
9970         time, rather allocate increasingly bigger arrays of pointers, if
9971         possible with alloca, if too large with malloc.
9972
9973 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
9974
9975         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
9976         Problem reported by H.Merijn Brand in
9977         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
9978         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
9979         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
9980
9981 2007-10-15  Bruno Haible  <bruno@clisp.org>
9982
9983         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
9984         with explicit rpl_ prefix.
9985         * lib/fopen.c (fopen): Likewise.
9986         * lib/freopen.c (freopen): Likewise.
9987         * lib/iconv.c (iconv): Likewise.
9988         * lib/iconv_close.c (iconv_close): Likewise.
9989
9990 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9991
9992         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
9993
9994 2007-10-15  Bruno Haible  <bruno@clisp.org>
9995
9996         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
9997         <stddef.h> instead of <stdlib.h> since we only need NULL.
9998         Reported by Ben Pfaff <blp@cs.stanford.edu>.
9999
10000 2007-10-15  Bruno Haible  <bruno@clisp.org>
10001
10002         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
10003         Replace paragraph talking about LIBOBJS.
10004         Reported by Colin Watson <cjwatson@debian.org>.
10005
10006 2007-10-15  Bruno Haible  <bruno@clisp.org>
10007
10008         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
10009         <stdlib.h> before using NULL.
10010
10011 2007-10-15  Simon Josefsson  <simon@josefsson.org>
10012
10013         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
10014         Reported by Albert Chin <china@thewrittenword.com>.
10015
10016 2007-10-14  Bruno Haible  <bruno@clisp.org>
10017
10018         * modules/iconv_open-utf-tests: New file.
10019         * tests/test-iconv-utf.c: New file.
10020
10021         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
10022         * modules/iconv_open-utf: New file.
10023         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
10024         (iconv, iconv_close): New declarations.
10025         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
10026         be defined.
10027         (iconv_open): Add special handling of conversion between UTF-8 and
10028         UTF-{16,32}{BE,LE}.
10029         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
10030         * lib/iconv_close.c: New file.
10031         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
10032         gl_FUNC_ICONV_OPEN.
10033         (gl_FUNC_ICONV_OPEN): Use it.
10034         (gl_FUNC_ICONV_OPEN_UTF): New macro.
10035         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
10036         and REPLACE_ICONV_UTF.
10037         * modules/iconv_open (Depends-on): Add c-strcase.
10038         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
10039         ICONV_CONST.
10040         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
10041
10042 2007-10-13  Albert Chin  <china@thewrittenword.com>
10043             Bruno Haible  <bruno@clisp.org>
10044
10045         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
10046         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
10047
10048 2007-10-13  Bruno Haible  <bruno@clisp.org>
10049
10050         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
10051         defined, use the ISO C99 inline semantics.
10052         * lib/argp.h (ARGP_EI): Likewise.
10053
10054 2007-10-13  Bruno Haible  <bruno@clisp.org>
10055
10056         Handle 'inline' change in gcc 4.3.0.
10057         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
10058         argp_fmtstream_write, argp_fmtstream_set_lmargin,
10059         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
10060         argp_fmtstream_point): Disable 'extern' declaration if the function
10061         definition is going to be provided inline.
10062         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
10063         semantics, not the ISO C99 inline semantics.
10064         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
10065         'extern' declaration if the function definition is going to be provided
10066         inline.
10067         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
10068         the GNU C inline semantics, not the ISO C99 inline semantics. With
10069         GCC 4.2, avoid a warning.
10070
10071 2007-10-13  Bruno Haible  <bruno@clisp.org>
10072
10073         * lib/freading.h (freading): Enable the use of __freading for
10074         glibc >= 2.7.
10075         * lib/freading.c (freading): Likewise.
10076
10077 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
10078
10079         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
10080         "warning: C99 inline functions are not supported; using GNU89".
10081
10082 2007-10-12  Bruno Haible  <bruno@clisp.org>
10083
10084         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
10085         of 2.
10086         * tests/test-ceilf2.c: New file.
10087         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
10088
10089         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
10090         * modules/ceilf-tests: Update.
10091
10092 2007-10-12  Bruno Haible  <bruno@clisp.org>
10093
10094         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
10095         of 2.
10096         * tests/test-floorf2.c: New file.
10097         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
10098
10099         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
10100         * modules/floorf-tests: Update.
10101
10102 2007-10-12  Bruno Haible  <bruno@clisp.org>
10103
10104         * tests/test-trunc2.c: New file.
10105         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
10106
10107         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
10108         * modules/trunc-tests: Update.
10109
10110 2007-10-12  Bruno Haible  <bruno@clisp.org>
10111
10112         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
10113         of 2.
10114         * tests/test-truncf2.c: New file.
10115         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
10116
10117         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
10118         * modules/truncf-tests: Update.
10119
10120 2007-10-11  Eric Blake  <ebb9@byu.net>
10121
10122         Don't claim strerror is broken on Interix.
10123         * doc/functions/strerror.texi (strerror): Known broken systems are
10124         now Solaris 8, and not Interix.
10125         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
10126         Interix on cross-compile.
10127         Reported by Martin Koeppe in
10128         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
10129
10130 2007-10-11  Bruno Haible  <bruno@clisp.org>
10131
10132         * modules/i-ring-tests: New file.
10133         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
10134         instead of assert.
10135
10136 2007-10-11  Bruno Haible  <bruno@clisp.org>
10137
10138         * modules/filenamecat-tests: New file.
10139         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
10140         * lib/filenamecat.c: Remove test code.
10141
10142 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
10143
10144         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
10145
10146         * lib/strerror.c: Include <string.h> always, to test interface,
10147         and to remove the need for the dummy.
10148         Include intprops.h to compute width instead of doing it ourselves
10149         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
10150         (strerror): Define it to return NULL if there's no system strerror.
10151         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
10152         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
10153         ancient pre-strerror Unix systems well any more.  Saying "unknown
10154         system error" is enough.
10155         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
10156         simpler strerror.c implementation.
10157         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
10158         Simplify the tests to reflect the simpler strerror implementation.
10159         * modules/strerror (Depends-on): Add intprops.
10160
10161 2007-10-09  Eric Blake  <ebb9@byu.net>
10162
10163         Silence test-fpending.
10164         * modules/fpending-tests (Files): Add wrapper script.
10165         * tests/test-fpending.sh: New file.
10166
10167 2007-10-09  Bruno Haible  <bruno@clisp.org>
10168
10169         * MODULES.html.sh (func_module): Don't create a hyperlink for
10170         function names like 'printf_frexp'.
10171         (Misc): Add crc, memxor.
10172         (Characteristics of floating types): New section.
10173         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
10174         isnanf-nolibm, signbit, trunc, truncf, truncl.
10175         (Enhancements for ISO C 99 functions): New subsection Input/output.
10176         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
10177         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
10178         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
10179         (Compatibility checks for POSIX:2001 functions): Add clock-time.
10180         (Enhancements for POSIX:2001 functions): Add chdir-long.
10181         (File system functions): Add areadlink, chdir-safer, read-file.
10182         Remove cycle-check.
10183         (File system as inode set): New section.
10184         (Date and time): Add gethrxtime.
10185         (Multithreading): Add openmp.
10186         (Internationalization functions): Add localename.
10187         (Unicode string functions): Add unistr/u*-mbsnlen.
10188         (Support for maintaining and releasing projects): Add git-version-gen.
10189         (Lone files): Remove directories.
10190
10191 2007-10-08  Ben Pfaff  <blp@gnu.org>
10192
10193         * lib/xmalloca.h: Fix typo in comment.
10194
10195 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
10196
10197         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
10198         when avoiding problems with integer overflow.  Use a portable test
10199         instead.
10200
10201 2007-10-08  Simon Josefsson  <simon@josefsson.org>
10202
10203         * modules/dummy (License): Change to LGPLv2+.
10204         * modules/float (License): Likewise
10205         * modules/realloc (License): Likewise
10206         * modules/stdlib (License): Likewise
10207
10208 2007-10-07  Bruno Haible  <bruno@clisp.org>
10209
10210         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
10211         * floor.c (TWO_MANT_DIG): Likewise.
10212         * ceil.c (TWO_MANT_DIG): Likewise.
10213         Reported by Ben Pfaff.
10214
10215 2007-10-07  Bruno Haible  <bruno@clisp.org>
10216
10217         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
10218         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
10219         * lib/frexp.c (FUNC): Likewise.
10220         * lib/printf-frexp.h (printf_frexp): Likewise.
10221         * lib/printf-frexpl.h (printf_frexpl): Likewise.
10222         * lib/printf-frexp.c (FUNC): Likewise.
10223         Suggested by Jim Meyering.
10224
10225 2007-10-07  Jim Meyering  <meyering@redhat.com>
10226
10227         Make xnanosleep's integer overflow test more robust.
10228         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
10229         so that gcc-4.3.0 doesn't optimize away this test for overflow.
10230
10231 2007-10-07  Bruno Haible  <bruno@clisp.org>
10232
10233         * NEWS: Mention the license change.
10234
10235         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
10236         abbreviations in the modules files.
10237
10238         Change copyright notice from GPLv2+ to GPLv3+.
10239         * README: Change copyright notice.
10240         * MODULES.html.sh: Likewise.
10241         * build-aux/bootstrap.conf: Likewise.
10242         * build-aux/config.libpath: Likewise.
10243         * build-aux/csharpcomp.sh.in: Likewise.
10244         * build-aux/csharpexec.sh.in: Likewise.
10245         * build-aux/install-reloc: Likewise.
10246         * build-aux/javacomp.sh.in: Likewise.
10247         * build-aux/javaexec.sh.in: Likewise.
10248         * build-aux/ldd.sh.in: Likewise.
10249         * build-aux/reloc-ldflags: Likewise.
10250         * build-aux/relocatable.sh.in: Likewise.
10251         * build-aux/x-to-1.in: Likewise.
10252         * check-module: Likewise.
10253         * config/srclistvars.sh: Likewise.
10254         * gnulib-tool: Likewise.
10255         * lib/acl-internal.h: Likewise.
10256         * lib/acl.c: Likewise.
10257         * lib/acl.h: Likewise.
10258         * lib/acl_entries.c: Likewise.
10259         * lib/areadlink-with-size.c: Likewise.
10260         * lib/areadlink.c: Likewise.
10261         * lib/areadlink.h: Likewise.
10262         * lib/argmatch.c: Likewise.
10263         * lib/argmatch.h: Likewise.
10264         * lib/argp-ba.c: Likewise.
10265         * lib/argp-eexst.c: Likewise.
10266         * lib/argp-fmtstream.c: Likewise.
10267         * lib/argp-fmtstream.h: Likewise.
10268         * lib/argp-fs-xinl.c: Likewise.
10269         * lib/argp-help.c: Likewise.
10270         * lib/argp-namefrob.h: Likewise.
10271         * lib/argp-parse.c: Likewise.
10272         * lib/argp-pin.c: Likewise.
10273         * lib/argp-pv.c: Likewise.
10274         * lib/argp-pvh.c: Likewise.
10275         * lib/argp-xinl.c: Likewise.
10276         * lib/argp.h: Likewise.
10277         * lib/at-func.c: Likewise.
10278         * lib/atanl.c: Likewise.
10279         * lib/backupfile.c: Likewise.
10280         * lib/backupfile.h: Likewise.
10281         * lib/basename.c: Likewise.
10282         * lib/binary-io.h: Likewise.
10283         * lib/byteswap.in.h: Likewise.
10284         * lib/c-stack.c: Likewise.
10285         * lib/c-stack.h: Likewise.
10286         * lib/c-strcasestr.c: Likewise.
10287         * lib/c-strcasestr.h: Likewise.
10288         * lib/c-strstr.c: Likewise.
10289         * lib/c-strstr.h: Likewise.
10290         * lib/c-strtod.c: Likewise.
10291         * lib/calloc.c: Likewise.
10292         * lib/canon-host.c: Likewise.
10293         * lib/canon-host.h: Likewise.
10294         * lib/canonicalize-lgpl.c: Likewise.
10295         * lib/canonicalize.c: Likewise.
10296         * lib/canonicalize.h: Likewise.
10297         * lib/ceil.c: Likewise.
10298         * lib/ceilf.c: Likewise.
10299         * lib/ceill.c: Likewise.
10300         * lib/chdir-long.c: Likewise.
10301         * lib/chdir-long.h: Likewise.
10302         * lib/chdir-safer.c: Likewise.
10303         * lib/chdir-safer.h: Likewise.
10304         * lib/chown.c: Likewise.
10305         * lib/classpath.c: Likewise.
10306         * lib/classpath.h: Likewise.
10307         * lib/clean-temp.c: Likewise.
10308         * lib/clean-temp.h: Likewise.
10309         * lib/cloexec.c: Likewise.
10310         * lib/close-stream.c: Likewise.
10311         * lib/closein.c: Likewise.
10312         * lib/closein.h: Likewise.
10313         * lib/closeout.c: Likewise.
10314         * lib/closeout.h: Likewise.
10315         * lib/concat-filename.c: Likewise.
10316         * lib/copy-file.c: Likewise.
10317         * lib/copy-file.h: Likewise.
10318         * lib/count-one-bits.h: Likewise.
10319         * lib/crc.c: Likewise.
10320         * lib/crc.h: Likewise.
10321         * lib/creat-safer.c: Likewise.
10322         * lib/csharpcomp.c: Likewise.
10323         * lib/csharpcomp.h: Likewise.
10324         * lib/csharpexec.c: Likewise.
10325         * lib/csharpexec.h: Likewise.
10326         * lib/cycle-check.c: Likewise.
10327         * lib/cycle-check.h: Likewise.
10328         * lib/diacrit.c: Likewise.
10329         * lib/diacrit.h: Likewise.
10330         * lib/diffseq.h: Likewise.
10331         * lib/dirchownmod.c: Likewise.
10332         * lib/dirent.in.h: Likewise.
10333         * lib/dirfd.c: Likewise.
10334         * lib/dirfd.h: Likewise.
10335         * lib/dirname.c: Likewise.
10336         * lib/dirname.h: Likewise.
10337         * lib/dummy.c: Likewise.
10338         * lib/dup-safer.c: Likewise.
10339         * lib/dup2.c: Likewise.
10340         * lib/eealloc.h: Likewise.
10341         * lib/error.c: Likewise.
10342         * lib/error.h: Likewise.
10343         * lib/euidaccess.c: Likewise.
10344         * lib/exclude.c: Likewise.
10345         * lib/exclude.h: Likewise.
10346         * lib/execute.c: Likewise.
10347         * lib/execute.h: Likewise.
10348         * lib/exitfail.c: Likewise.
10349         * lib/exitfail.h: Likewise.
10350         * lib/expl.c: Likewise.
10351         * lib/fatal-signal.c: Likewise.
10352         * lib/fatal-signal.h: Likewise.
10353         * lib/fbufmode.c: Likewise.
10354         * lib/fbufmode.h: Likewise.
10355         * lib/fchdir.c: Likewise.
10356         * lib/fchmodat.c: Likewise.
10357         * lib/fchownat.c: Likewise.
10358         * lib/fcntl--.h: Likewise.
10359         * lib/fcntl-safer.h: Likewise.
10360         * lib/fcntl.in.h: Likewise.
10361         * lib/fd-safer.c: Likewise.
10362         * lib/fflush.c: Likewise.
10363         * lib/file-has-acl.c: Likewise.
10364         * lib/file-set.c: Likewise.
10365         * lib/file-type.c: Likewise.
10366         * lib/file-type.h: Likewise.
10367         * lib/fileblocks.c: Likewise.
10368         * lib/filemode.c: Likewise.
10369         * lib/filemode.h: Likewise.
10370         * lib/filename.h: Likewise.
10371         * lib/filenamecat.c: Likewise.
10372         * lib/filenamecat.h: Likewise.
10373         * lib/findprog.c: Likewise.
10374         * lib/findprog.h: Likewise.
10375         * lib/float.in.h: Likewise.
10376         * lib/floor.c: Likewise.
10377         * lib/floorf.c: Likewise.
10378         * lib/floorl.c: Likewise.
10379         * lib/fopen-safer.c: Likewise.
10380         * lib/fopen.c: Likewise.
10381         * lib/fpending.c: Likewise.
10382         * lib/fpending.h: Likewise.
10383         * lib/fprintf.c: Likewise.
10384         * lib/fprintftime.h: Likewise.
10385         * lib/fpucw.h: Likewise.
10386         * lib/fpurge.c: Likewise.
10387         * lib/fpurge.h: Likewise.
10388         * lib/freadable.c: Likewise.
10389         * lib/freadable.h: Likewise.
10390         * lib/freadahead.c: Likewise.
10391         * lib/freadahead.h: Likewise.
10392         * lib/freading.c: Likewise.
10393         * lib/freading.h: Likewise.
10394         * lib/free.c: Likewise.
10395         * lib/freopen.c: Likewise.
10396         * lib/frexp.c: Likewise.
10397         * lib/frexpl.c: Likewise.
10398         * lib/fseek.c: Likewise.
10399         * lib/fseterr.c: Likewise.
10400         * lib/fseterr.h: Likewise.
10401         * lib/fstatat.c: Likewise.
10402         * lib/fstrcmp.c: Likewise.
10403         * lib/fstrcmp.h: Likewise.
10404         * lib/fsusage.c: Likewise.
10405         * lib/fsusage.h: Likewise.
10406         * lib/ftell.c: Likewise.
10407         * lib/ftello.c: Likewise.
10408         * lib/fts-cycle.c: Likewise.
10409         * lib/fts.c: Likewise.
10410         * lib/fts_.h: Likewise.
10411         * lib/full-read.c: Likewise.
10412         * lib/full-read.h: Likewise.
10413         * lib/full-write.c: Likewise.
10414         * lib/full-write.h: Likewise.
10415         * lib/fwritable.c: Likewise.
10416         * lib/fwritable.h: Likewise.
10417         * lib/fwriteerror.c: Likewise.
10418         * lib/fwriteerror.h: Likewise.
10419         * lib/fwriting.c: Likewise.
10420         * lib/fwriting.h: Likewise.
10421         * lib/gcd.c: Likewise.
10422         * lib/gcd.h: Likewise.
10423         * lib/getcwd.c: Likewise.
10424         * lib/getdate.h: Likewise.
10425         * lib/getdate.y: Likewise.
10426         * lib/getdomainname.c: Likewise.
10427         * lib/getdomainname.h: Likewise.
10428         * lib/getgroups.c: Likewise.
10429         * lib/gethostname.c: Likewise.
10430         * lib/gethrxtime.c: Likewise.
10431         * lib/gethrxtime.h: Likewise.
10432         * lib/getloadavg.c: Likewise.
10433         * lib/getndelim2.c: Likewise.
10434         * lib/getndelim2.h: Likewise.
10435         * lib/getnline.c: Likewise.
10436         * lib/getnline.h: Likewise.
10437         * lib/getopt.c: Likewise.
10438         * lib/getopt.in.h: Likewise.
10439         * lib/getopt1.c: Likewise.
10440         * lib/getopt_int.h: Likewise.
10441         * lib/getpagesize.h: Likewise.
10442         * lib/getsubopt.c: Likewise.
10443         * lib/gettime.c: Likewise.
10444         * lib/getugroups.c: Likewise.
10445         * lib/getugroups.h: Likewise.
10446         * lib/getusershell.c: Likewise.
10447         * lib/gl_anyavltree_list1.h: Likewise.
10448         * lib/gl_anyavltree_list2.h: Likewise.
10449         * lib/gl_anyhash_list1.h: Likewise.
10450         * lib/gl_anyhash_list2.h: Likewise.
10451         * lib/gl_anylinked_list1.h: Likewise.
10452         * lib/gl_anylinked_list2.h: Likewise.
10453         * lib/gl_anyrbtree_list1.h: Likewise.
10454         * lib/gl_anyrbtree_list2.h: Likewise.
10455         * lib/gl_anytree_list1.h: Likewise.
10456         * lib/gl_anytree_list2.h: Likewise.
10457         * lib/gl_anytree_oset.h: Likewise.
10458         * lib/gl_anytreehash_list1.h: Likewise.
10459         * lib/gl_anytreehash_list2.h: Likewise.
10460         * lib/gl_array_list.c: Likewise.
10461         * lib/gl_array_list.h: Likewise.
10462         * lib/gl_array_oset.c: Likewise.
10463         * lib/gl_array_oset.h: Likewise.
10464         * lib/gl_avltree_list.c: Likewise.
10465         * lib/gl_avltree_list.h: Likewise.
10466         * lib/gl_avltree_oset.c: Likewise.
10467         * lib/gl_avltree_oset.h: Likewise.
10468         * lib/gl_avltreehash_list.c: Likewise.
10469         * lib/gl_avltreehash_list.h: Likewise.
10470         * lib/gl_carray_list.c: Likewise.
10471         * lib/gl_carray_list.h: Likewise.
10472         * lib/gl_linked_list.c: Likewise.
10473         * lib/gl_linked_list.h: Likewise.
10474         * lib/gl_linkedhash_list.c: Likewise.
10475         * lib/gl_linkedhash_list.h: Likewise.
10476         * lib/gl_list.c: Likewise.
10477         * lib/gl_list.h: Likewise.
10478         * lib/gl_oset.c: Likewise.
10479         * lib/gl_oset.h: Likewise.
10480         * lib/gl_rbtree_list.c: Likewise.
10481         * lib/gl_rbtree_list.h: Likewise.
10482         * lib/gl_rbtree_oset.c: Likewise.
10483         * lib/gl_rbtree_oset.h: Likewise.
10484         * lib/gl_rbtreehash_list.c: Likewise.
10485         * lib/gl_rbtreehash_list.h: Likewise.
10486         * lib/gl_sublist.c: Likewise.
10487         * lib/gl_sublist.h: Likewise.
10488         * lib/group-member.c: Likewise.
10489         * lib/group-member.h: Likewise.
10490         * lib/hard-locale.c: Likewise.
10491         * lib/hard-locale.h: Likewise.
10492         * lib/hash-pjw.c: Likewise.
10493         * lib/hash-pjw.h: Likewise.
10494         * lib/hash-triple.c: Likewise.
10495         * lib/hash.c: Likewise.
10496         * lib/hash.h: Likewise.
10497         * lib/human.c: Likewise.
10498         * lib/human.h: Likewise.
10499         * lib/i-ring.c: Likewise.
10500         * lib/i-ring.h: Likewise.
10501         * lib/idcache.c: Likewise.
10502         * lib/imaxabs.c: Likewise.
10503         * lib/imaxdiv.c: Likewise.
10504         * lib/inet_pton.c: Likewise.
10505         * lib/inet_pton.h: Likewise.
10506         * lib/intprops.h: Likewise.
10507         * lib/inttostr.c: Likewise.
10508         * lib/inttostr.h: Likewise.
10509         * lib/inttypes.in.h: Likewise.
10510         * lib/isapipe.c: Likewise.
10511         * lib/isdir.c: Likewise.
10512         * lib/isnan.c: Likewise.
10513         * lib/isnan.h: Likewise.
10514         * lib/isnanf.c: Likewise.
10515         * lib/isnanf.h: Likewise.
10516         * lib/isnanl-nolibm.h: Likewise.
10517         * lib/isnanl.c: Likewise.
10518         * lib/isnanl.h: Likewise.
10519         * lib/javacomp.c: Likewise.
10520         * lib/javacomp.h: Likewise.
10521         * lib/javaexec.c: Likewise.
10522         * lib/javaexec.h: Likewise.
10523         * lib/javaversion.c: Likewise.
10524         * lib/javaversion.h: Likewise.
10525         * lib/javaversion.java: Likewise.
10526         * lib/lbrkprop.h: Likewise.
10527         * lib/lchmod.h: Likewise.
10528         * lib/lchown.c: Likewise.
10529         * lib/ldexpl.c: Likewise.
10530         * lib/linebreak.c: Likewise.
10531         * lib/linebreak.h: Likewise.
10532         * lib/linebuffer.c: Likewise.
10533         * lib/linebuffer.h: Likewise.
10534         * lib/locale.in.h: Likewise.
10535         * lib/logl.c: Likewise.
10536         * lib/long-options.c: Likewise.
10537         * lib/long-options.h: Likewise.
10538         * lib/lstat.c: Likewise.
10539         * lib/lstat.h: Likewise.
10540         * lib/math.in.h: Likewise.
10541         * lib/mbchar.c: Likewise.
10542         * lib/mbchar.h: Likewise.
10543         * lib/mbfile.h: Likewise.
10544         * lib/mbiter.h: Likewise.
10545         * lib/mbscasecmp.c: Likewise.
10546         * lib/mbscasestr.c: Likewise.
10547         * lib/mbschr.c: Likewise.
10548         * lib/mbscspn.c: Likewise.
10549         * lib/mbslen.c: Likewise.
10550         * lib/mbsncasecmp.c: Likewise.
10551         * lib/mbsnlen.c: Likewise.
10552         * lib/mbspbrk.c: Likewise.
10553         * lib/mbspcasecmp.c: Likewise.
10554         * lib/mbsrchr.c: Likewise.
10555         * lib/mbssep.c: Likewise.
10556         * lib/mbsspn.c: Likewise.
10557         * lib/mbsstr.c: Likewise.
10558         * lib/mbstok_r.c: Likewise.
10559         * lib/mbswidth.c: Likewise.
10560         * lib/mbswidth.h: Likewise.
10561         * lib/mbuiter.h: Likewise.
10562         * lib/memcasecmp.c: Likewise.
10563         * lib/memcasecmp.h: Likewise.
10564         * lib/memchr.c: Likewise.
10565         * lib/memcmp.c: Likewise.
10566         * lib/memcoll.c: Likewise.
10567         * lib/memcoll.h: Likewise.
10568         * lib/memcpy.c: Likewise.
10569         * lib/memrchr.c: Likewise.
10570         * lib/mkancesdirs.c: Likewise.
10571         * lib/mkdir-p.c: Likewise.
10572         * lib/mkdir-p.h: Likewise.
10573         * lib/mkdir.c: Likewise.
10574         * lib/mkdirat.c: Likewise.
10575         * lib/mkdtemp.c: Likewise.
10576         * lib/mkstemp-safer.c: Likewise.
10577         * lib/mkstemp.c: Likewise.
10578         * lib/modechange.c: Likewise.
10579         * lib/modechange.h: Likewise.
10580         * lib/mountlist.c: Likewise.
10581         * lib/mountlist.h: Likewise.
10582         * lib/mpsort.c: Likewise.
10583         * lib/nanosleep.c: Likewise.
10584         * lib/obstack.c: Likewise.
10585         * lib/obstack.h: Likewise.
10586         * lib/open-safer.c: Likewise.
10587         * lib/open.c: Likewise.
10588         * lib/openat-die.c: Likewise.
10589         * lib/openat-priv.h: Likewise.
10590         * lib/openat-proc.c: Likewise.
10591         * lib/openat.c: Likewise.
10592         * lib/openat.h: Likewise.
10593         * lib/pagealign_alloc.c: Likewise.
10594         * lib/pagealign_alloc.h: Likewise.
10595         * lib/physmem.c: Likewise.
10596         * lib/physmem.h: Likewise.
10597         * lib/pipe-safer.c: Likewise.
10598         * lib/pipe.c: Likewise.
10599         * lib/pipe.h: Likewise.
10600         * lib/posixtm.c: Likewise.
10601         * lib/posixtm.h: Likewise.
10602         * lib/posixver.c: Likewise.
10603         * lib/printf-frexp.c: Likewise.
10604         * lib/printf-frexp.h: Likewise.
10605         * lib/printf-frexpl.c: Likewise.
10606         * lib/printf-frexpl.h: Likewise.
10607         * lib/printf.c: Likewise.
10608         * lib/progname.c: Likewise.
10609         * lib/progname.h: Likewise.
10610         * lib/progreloc.c: Likewise.
10611         * lib/putenv.c: Likewise.
10612         * lib/quote.c: Likewise.
10613         * lib/quote.h: Likewise.
10614         * lib/quotearg.c: Likewise.
10615         * lib/quotearg.h: Likewise.
10616         * lib/raise.c: Likewise.
10617         * lib/readline.c: Likewise.
10618         * lib/readline.h: Likewise.
10619         * lib/readlink.c: Likewise.
10620         * lib/readtokens.c: Likewise.
10621         * lib/readtokens.h: Likewise.
10622         * lib/readtokens0.c: Likewise.
10623         * lib/readtokens0.h: Likewise.
10624         * lib/readutmp.c: Likewise.
10625         * lib/readutmp.h: Likewise.
10626         * lib/realloc.c: Likewise.
10627         * lib/relocwrapper.c: Likewise.
10628         * lib/rename-dest-slash.c: Likewise.
10629         * lib/rename.c: Likewise.
10630         * lib/rmdir.c: Likewise.
10631         * lib/rpmatch.c: Likewise.
10632         * lib/safe-read.c: Likewise.
10633         * lib/safe-read.h: Likewise.
10634         * lib/safe-write.c: Likewise.
10635         * lib/safe-write.h: Likewise.
10636         * lib/same-inode.h: Likewise.
10637         * lib/same.c: Likewise.
10638         * lib/same.h: Likewise.
10639         * lib/save-cwd.c: Likewise.
10640         * lib/save-cwd.h: Likewise.
10641         * lib/savedir.c: Likewise.
10642         * lib/savedir.h: Likewise.
10643         * lib/savewd.c: Likewise.
10644         * lib/savewd.h: Likewise.
10645         * lib/search.in.h: Likewise.
10646         * lib/setenv.c: Likewise.
10647         * lib/setenv.h: Likewise.
10648         * lib/settime.c: Likewise.
10649         * lib/sh-quote.c: Likewise.
10650         * lib/sh-quote.h: Likewise.
10651         * lib/sig2str.c: Likewise.
10652         * lib/sig2str.h: Likewise.
10653         * lib/signal.in.h: Likewise.
10654         * lib/signbitd.c: Likewise.
10655         * lib/signbitf.c: Likewise.
10656         * lib/signbitl.c: Likewise.
10657         * lib/sigprocmask.c: Likewise.
10658         * lib/sincosl.c: Likewise.
10659         * lib/sleep.c: Likewise.
10660         * lib/sprintf.c: Likewise.
10661         * lib/sqrtl.c: Likewise.
10662         * lib/stat-time.h: Likewise.
10663         * lib/stdio--.h: Likewise.
10664         * lib/stdio-safer.h: Likewise.
10665         * lib/stdlib--.h: Likewise.
10666         * lib/stdlib-safer.h: Likewise.
10667         * lib/stdlib.in.h: Likewise.
10668         * lib/stpcpy.c: Likewise.
10669         * lib/stpncpy.c: Likewise.
10670         * lib/strchrnul.c: Likewise.
10671         * lib/strcspn.c: Likewise.
10672         * lib/strerror.c: Likewise.
10673         * lib/strftime.c: Likewise.
10674         * lib/strftime.h: Likewise.
10675         * lib/striconveh.c: Likewise.
10676         * lib/striconveh.h: Likewise.
10677         * lib/striconveha.c: Likewise.
10678         * lib/striconveha.h: Likewise.
10679         * lib/stripslash.c: Likewise.
10680         * lib/strnlen1.c: Likewise.
10681         * lib/strnlen1.h: Likewise.
10682         * lib/strtod.c: Likewise.
10683         * lib/strtoimax.c: Likewise.
10684         * lib/strtok_r.c: Likewise.
10685         * lib/strtol.c: Likewise.
10686         * lib/strtoll.c: Likewise.
10687         * lib/strtoul.c: Likewise.
10688         * lib/strtoull.c: Likewise.
10689         * lib/sysexits.in.h: Likewise.
10690         * lib/tempname.c: Likewise.
10691         * lib/tempname.h: Likewise.
10692         * lib/timespec.h: Likewise.
10693         * lib/tls.c: Likewise.
10694         * lib/tls.h: Likewise.
10695         * lib/tmpdir.c: Likewise.
10696         * lib/tmpdir.h: Likewise.
10697         * lib/tmpfile-safer.c: Likewise.
10698         * lib/tmpfile.c: Likewise.
10699         * lib/trigl.c: Likewise.
10700         * lib/trigl.h: Likewise.
10701         * lib/trim.c: Likewise.
10702         * lib/trim.h: Likewise.
10703         * lib/trunc.c: Likewise.
10704         * lib/truncf.c: Likewise.
10705         * lib/truncl.c: Likewise.
10706         * lib/tsearch.c: Likewise.
10707         * lib/unicodeio.c: Likewise.
10708         * lib/unicodeio.h: Likewise.
10709         * lib/unistd--.h: Likewise.
10710         * lib/unistd-safer.h: Likewise.
10711         * lib/unistdio/ulc-fprintf.c: Likewise.
10712         * lib/unistdio/ulc-vfprintf.c: Likewise.
10713         * lib/unlinkdir.c: Likewise.
10714         * lib/unlinkdir.h: Likewise.
10715         * lib/unlocked-io.h: Likewise.
10716         * lib/unsetenv.c: Likewise.
10717         * lib/userspec.c: Likewise.
10718         * lib/utime.c: Likewise.
10719         * lib/utimecmp.c: Likewise.
10720         * lib/utimecmp.h: Likewise.
10721         * lib/utimens.c: Likewise.
10722         * lib/verify.h: Likewise.
10723         * lib/verror.c: Likewise.
10724         * lib/verror.h: Likewise.
10725         * lib/version-etc-fsf.c: Likewise.
10726         * lib/version-etc.c: Likewise.
10727         * lib/version-etc.h: Likewise.
10728         * lib/vfprintf.c: Likewise.
10729         * lib/vprintf.c: Likewise.
10730         * lib/vsprintf.c: Likewise.
10731         * lib/w32spawn.h: Likewise.
10732         * lib/wait-process.c: Likewise.
10733         * lib/wait-process.h: Likewise.
10734         * lib/wcwidth.c: Likewise.
10735         * lib/write-any-file.c: Likewise.
10736         * lib/xalloc-die.c: Likewise.
10737         * lib/xalloc.h: Likewise.
10738         * lib/xasprintf.c: Likewise.
10739         * lib/xgetcwd.c: Likewise.
10740         * lib/xgetcwd.h: Likewise.
10741         * lib/xgetdomainname.c: Likewise.
10742         * lib/xgetdomainname.h: Likewise.
10743         * lib/xgethostname.c: Likewise.
10744         * lib/xmalloc.c: Likewise.
10745         * lib/xmalloca.c: Likewise.
10746         * lib/xmalloca.h: Likewise.
10747         * lib/xmemcoll.c: Likewise.
10748         * lib/xnanosleep.c: Likewise.
10749         * lib/xreadlink.c: Likewise.
10750         * lib/xreadlink.h: Likewise.
10751         * lib/xsetenv.c: Likewise.
10752         * lib/xsetenv.h: Likewise.
10753         * lib/xstriconv.c: Likewise.
10754         * lib/xstriconv.h: Likewise.
10755         * lib/xstrndup.c: Likewise.
10756         * lib/xstrndup.h: Likewise.
10757         * lib/xstrtod.c: Likewise.
10758         * lib/xstrtod.h: Likewise.
10759         * lib/xstrtol-error.c: Likewise.
10760         * lib/xstrtol.c: Likewise.
10761         * lib/xstrtol.h: Likewise.
10762         * lib/xtime.h: Likewise.
10763         * lib/xvasprintf.c: Likewise.
10764         * lib/xvasprintf.h: Likewise.
10765         * lib/yesno.c: Likewise.
10766         * lib/yesno.h: Likewise.
10767         * posix-modules: Likewise.
10768         * tests/test-alloca-opt.c: Likewise.
10769         * tests/test-arcfour.c: Likewise.
10770         * tests/test-arctwo.c: Likewise.
10771         * tests/test-argmatch.c: Likewise.
10772         * tests/test-argp-2.sh: Likewise.
10773         * tests/test-argp.c: Likewise.
10774         * tests/test-arpa_inet.c: Likewise.
10775         * tests/test-array_list.c: Likewise.
10776         * tests/test-array_oset.c: Likewise.
10777         * tests/test-atexit.c: Likewise.
10778         * tests/test-avltree_list.c: Likewise.
10779         * tests/test-avltree_oset.c: Likewise.
10780         * tests/test-avltreehash_list.c: Likewise.
10781         * tests/test-base64.c: Likewise.
10782         * tests/test-binary-io.c: Likewise.
10783         * tests/test-byteswap.c: Likewise.
10784         * tests/test-c-ctype.c: Likewise.
10785         * tests/test-c-strcasecmp.c: Likewise.
10786         * tests/test-c-strcasestr.c: Likewise.
10787         * tests/test-c-strncasecmp.c: Likewise.
10788         * tests/test-c-strstr.c: Likewise.
10789         * tests/test-canonicalize-lgpl.c: Likewise.
10790         * tests/test-canonicalize.c: Likewise.
10791         * tests/test-carray_list.c: Likewise.
10792         * tests/test-ceilf.c: Likewise.
10793         * tests/test-ceill.c: Likewise.
10794         * tests/test-count-one-bits.c: Likewise.
10795         * tests/test-crc.c: Likewise.
10796         * tests/test-dirname.c: Likewise.
10797         * tests/test-fbufmode.c: Likewise.
10798         * tests/test-fcntl.c: Likewise.
10799         * tests/test-fflush.c: Likewise.
10800         * tests/test-floorf.c: Likewise.
10801         * tests/test-floorl.c: Likewise.
10802         * tests/test-fopen.c: Likewise.
10803         * tests/test-fprintf-posix.c: Likewise.
10804         * tests/test-fprintf-posix.h: Likewise.
10805         * tests/test-fpurge.c: Likewise.
10806         * tests/test-freadable.c: Likewise.
10807         * tests/test-freadahead.c: Likewise.
10808         * tests/test-freading.c: Likewise.
10809         * tests/test-freopen.c: Likewise.
10810         * tests/test-frexp.c: Likewise.
10811         * tests/test-frexpl.c: Likewise.
10812         * tests/test-fseek.c: Likewise.
10813         * tests/test-fseeko.c: Likewise.
10814         * tests/test-fseterr.c: Likewise.
10815         * tests/test-fstrcmp.c: Likewise.
10816         * tests/test-ftell.c: Likewise.
10817         * tests/test-ftello.c: Likewise.
10818         * tests/test-fwritable.c: Likewise.
10819         * tests/test-fwriting.c: Likewise.
10820         * tests/test-getaddrinfo.c: Likewise.
10821         * tests/test-getpass.c: Likewise.
10822         * tests/test-gettimeofday.c: Likewise.
10823         * tests/test-hmac-md5.c: Likewise.
10824         * tests/test-hmac-sha1.c: Likewise.
10825         * tests/test-iconv.c: Likewise.
10826         * tests/test-iconvme.c: Likewise.
10827         * tests/test-inttypes.c: Likewise.
10828         * tests/test-isnan.c: Likewise.
10829         * tests/test-isnanf.c: Likewise.
10830         * tests/test-isnanl-nolibm.c: Likewise.
10831         * tests/test-isnanl.c: Likewise.
10832         * tests/test-isnanl.h: Likewise.
10833         * tests/test-ldexpl.c: Likewise.
10834         * tests/test-linked_list.c: Likewise.
10835         * tests/test-linkedhash_list.c: Likewise.
10836         * tests/test-locale.c: Likewise.
10837         * tests/test-localename.c: Likewise.
10838         * tests/test-lock.c: Likewise.
10839         * tests/test-lseek.c: Likewise.
10840         * tests/test-malloca.c: Likewise.
10841         * tests/test-math.c: Likewise.
10842         * tests/test-mbscasecmp.c: Likewise.
10843         * tests/test-mbscasestr1.c: Likewise.
10844         * tests/test-mbscasestr2.c: Likewise.
10845         * tests/test-mbscasestr3.c: Likewise.
10846         * tests/test-mbscasestr4.c: Likewise.
10847         * tests/test-mbschr.c: Likewise.
10848         * tests/test-mbscspn.c: Likewise.
10849         * tests/test-mbsncasecmp.c: Likewise.
10850         * tests/test-mbspbrk.c: Likewise.
10851         * tests/test-mbspcasecmp.c: Likewise.
10852         * tests/test-mbsrchr.c: Likewise.
10853         * tests/test-mbsspn.c: Likewise.
10854         * tests/test-mbsstr1.c: Likewise.
10855         * tests/test-mbsstr2.c: Likewise.
10856         * tests/test-mbsstr3.c: Likewise.
10857         * tests/test-md5.c: Likewise.
10858         * tests/test-memmem.c: Likewise.
10859         * tests/test-netinet_in.c: Likewise.
10860         * tests/test-open.c: Likewise.
10861         * tests/test-printf-frexp.c: Likewise.
10862         * tests/test-printf-frexpl.c: Likewise.
10863         * tests/test-printf-posix.c: Likewise.
10864         * tests/test-printf-posix.h: Likewise.
10865         * tests/test-rbtree_list.c: Likewise.
10866         * tests/test-rbtree_oset.c: Likewise.
10867         * tests/test-rbtreehash_list.c: Likewise.
10868         * tests/test-read-file.c: Likewise.
10869         * tests/test-rijndael.c: Likewise.
10870         * tests/test-search.c: Likewise.
10871         * tests/test-signbit.c: Likewise.
10872         * tests/test-sleep.c: Likewise.
10873         * tests/test-snprintf-posix.c: Likewise.
10874         * tests/test-snprintf-posix.h: Likewise.
10875         * tests/test-snprintf.c: Likewise.
10876         * tests/test-sprintf-posix.c: Likewise.
10877         * tests/test-sprintf-posix.h: Likewise.
10878         * tests/test-stat-time.c: Likewise.
10879         * tests/test-stdbool.c: Likewise.
10880         * tests/test-stdint.c: Likewise.
10881         * tests/test-stdio.c: Likewise.
10882         * tests/test-stdlib.c: Likewise.
10883         * tests/test-stpncpy.c: Likewise.
10884         * tests/test-strcasestr.c: Likewise.
10885         * tests/test-striconv.c: Likewise.
10886         * tests/test-striconveh.c: Likewise.
10887         * tests/test-striconveha.c: Likewise.
10888         * tests/test-string.c: Likewise.
10889         * tests/test-sys_select.c: Likewise.
10890         * tests/test-sys_socket.c: Likewise.
10891         * tests/test-sys_stat.c: Likewise.
10892         * tests/test-sys_time.c: Likewise.
10893         * tests/test-sysexits.c: Likewise.
10894         * tests/test-time.c: Likewise.
10895         * tests/test-tls.c: Likewise.
10896         * tests/test-trunc.c: Likewise.
10897         * tests/test-truncf.c: Likewise.
10898         * tests/test-truncl.c: Likewise.
10899         * tests/test-unistd.c: Likewise.
10900         * tests/test-vasnprintf-posix.c: Likewise.
10901         * tests/test-vasnprintf-posix2.c: Likewise.
10902         * tests/test-vasnprintf.c: Likewise.
10903         * tests/test-vasprintf-posix.c: Likewise.
10904         * tests/test-vasprintf.c: Likewise.
10905         * tests/test-verify.c: Likewise.
10906         * tests/test-vfprintf-posix.c: Likewise.
10907         * tests/test-vprintf-posix.c: Likewise.
10908         * tests/test-vsnprintf-posix.c: Likewise.
10909         * tests/test-vsnprintf.c: Likewise.
10910         * tests/test-vsprintf-posix.c: Likewise.
10911         * tests/test-wchar.c: Likewise.
10912         * tests/test-wctype.c: Likewise.
10913         * tests/test-wcwidth.c: Likewise.
10914         * tests/test-xstrtol.c: Likewise.
10915         * tests/test-xvasprintf.c: Likewise.
10916         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
10917         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
10918         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
10919         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
10920         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
10921         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
10922         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
10923         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
10924         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
10925         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
10926         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
10927         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
10928         * tests/uniname/test-uninames.c: Likewise.
10929         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
10930         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
10931         * tests/unistdio/test-u16-printf1.h: Likewise.
10932         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
10933         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
10934         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
10935         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
10936         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
10937         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
10938         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
10939         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
10940         * tests/unistdio/test-u32-printf1.h: Likewise.
10941         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
10942         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
10943         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
10944         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
10945         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
10946         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
10947         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
10948         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
10949         * tests/unistdio/test-u8-printf1.h: Likewise.
10950         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
10951         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
10952         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
10953         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
10954         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
10955         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
10956         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
10957         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
10958         * tests/unistdio/test-ulc-printf1.h: Likewise.
10959         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
10960         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
10961         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
10962         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
10963         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
10964         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
10965         * tests/uniwidth/test-u16-strwidth.c: Likewise.
10966         * tests/uniwidth/test-u16-width.c: Likewise.
10967         * tests/uniwidth/test-u32-strwidth.c: Likewise.
10968         * tests/uniwidth/test-u32-width.c: Likewise.
10969         * tests/uniwidth/test-u8-strwidth.c: Likewise.
10970         * tests/uniwidth/test-u8-width.c: Likewise.
10971         * tests/uniwidth/test-uc_width.c: Likewise.
10972         * config/srclist-update: Likewise.
10973         (fixlicense): Update to GPLv3+.
10974
10975         Change copyright notice from LGPLv2.1+ to LGPLv3+.
10976         * tests/test-tsearch.c: Change copyright notice.
10977
10978         Change copyright notice from LGPLv2.0+ to LGPLv3+.
10979         * lib/c-strcaseeq.h: Change copyright notice.
10980         * lib/streq.h: Likewise.
10981         * lib/uniconv.h: Likewise.
10982         * lib/uniconv/u-conv-from-enc.h: Likewise.
10983         * lib/uniconv/u-conv-to-enc.h: Likewise.
10984         * lib/uniconv/u-strconv-from-enc.h: Likewise.
10985         * lib/uniconv/u-strconv-to-enc.h: Likewise.
10986         * lib/uniconv/u16-conv-from-enc.c: Likewise.
10987         * lib/uniconv/u16-conv-to-enc.c: Likewise.
10988         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
10989         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
10990         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
10991         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
10992         * lib/uniconv/u32-conv-from-enc.c: Likewise.
10993         * lib/uniconv/u32-conv-to-enc.c: Likewise.
10994         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
10995         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
10996         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
10997         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
10998         * lib/uniconv/u8-conv-from-enc.c: Likewise.
10999         * lib/uniconv/u8-conv-to-enc.c: Likewise.
11000         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
11001         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
11002         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
11003         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
11004         * lib/uniname.h: Likewise.
11005         * lib/uniname/uniname.c: Likewise.
11006         * lib/unistdio.h: Likewise.
11007         * lib/unistdio/u-asnprintf.h: Likewise.
11008         * lib/unistdio/u-asprintf.h: Likewise.
11009         * lib/unistdio/u-printf-args.c: Likewise.
11010         * lib/unistdio/u-printf-args.h: Likewise.
11011         * lib/unistdio/u-printf-parse.h: Likewise.
11012         * lib/unistdio/u-snprintf.h: Likewise.
11013         * lib/unistdio/u-sprintf.h: Likewise.
11014         * lib/unistdio/u-vasprintf.h: Likewise.
11015         * lib/unistdio/u-vsnprintf.h: Likewise.
11016         * lib/unistdio/u-vsprintf.h: Likewise.
11017         * lib/unistdio/u16-asnprintf.c: Likewise.
11018         * lib/unistdio/u16-asprintf.c: Likewise.
11019         * lib/unistdio/u16-printf-parse.c: Likewise.
11020         * lib/unistdio/u16-snprintf.c: Likewise.
11021         * lib/unistdio/u16-sprintf.c: Likewise.
11022         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
11023         * lib/unistdio/u16-u16-asprintf.c: Likewise.
11024         * lib/unistdio/u16-u16-snprintf.c: Likewise.
11025         * lib/unistdio/u16-u16-sprintf.c: Likewise.
11026         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
11027         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
11028         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
11029         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
11030         * lib/unistdio/u16-vasnprintf.c: Likewise.
11031         * lib/unistdio/u16-vasprintf.c: Likewise.
11032         * lib/unistdio/u16-vsnprintf.c: Likewise.
11033         * lib/unistdio/u16-vsprintf.c: Likewise.
11034         * lib/unistdio/u32-asnprintf.c: Likewise.
11035         * lib/unistdio/u32-asprintf.c: Likewise.
11036         * lib/unistdio/u32-printf-parse.c: Likewise.
11037         * lib/unistdio/u32-snprintf.c: Likewise.
11038         * lib/unistdio/u32-sprintf.c: Likewise.
11039         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
11040         * lib/unistdio/u32-u32-asprintf.c: Likewise.
11041         * lib/unistdio/u32-u32-snprintf.c: Likewise.
11042         * lib/unistdio/u32-u32-sprintf.c: Likewise.
11043         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
11044         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
11045         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
11046         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
11047         * lib/unistdio/u32-vasnprintf.c: Likewise.
11048         * lib/unistdio/u32-vasprintf.c: Likewise.
11049         * lib/unistdio/u32-vsnprintf.c: Likewise.
11050         * lib/unistdio/u32-vsprintf.c: Likewise.
11051         * lib/unistdio/u8-asnprintf.c: Likewise.
11052         * lib/unistdio/u8-asprintf.c: Likewise.
11053         * lib/unistdio/u8-printf-parse.c: Likewise.
11054         * lib/unistdio/u8-snprintf.c: Likewise.
11055         * lib/unistdio/u8-sprintf.c: Likewise.
11056         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
11057         * lib/unistdio/u8-u8-asprintf.c: Likewise.
11058         * lib/unistdio/u8-u8-snprintf.c: Likewise.
11059         * lib/unistdio/u8-u8-sprintf.c: Likewise.
11060         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
11061         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
11062         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
11063         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
11064         * lib/unistdio/u8-vasnprintf.c: Likewise.
11065         * lib/unistdio/u8-vasprintf.c: Likewise.
11066         * lib/unistdio/u8-vsnprintf.c: Likewise.
11067         * lib/unistdio/u8-vsprintf.c: Likewise.
11068         * lib/unistdio/ulc-asnprintf.c: Likewise.
11069         * lib/unistdio/ulc-asprintf.c: Likewise.
11070         * lib/unistdio/ulc-printf-parse.c: Likewise.
11071         * lib/unistdio/ulc-snprintf.c: Likewise.
11072         * lib/unistdio/ulc-sprintf.c: Likewise.
11073         * lib/unistdio/ulc-vasnprintf.c: Likewise.
11074         * lib/unistdio/ulc-vasprintf.c: Likewise.
11075         * lib/unistdio/ulc-vsnprintf.c: Likewise.
11076         * lib/unistdio/ulc-vsprintf.c: Likewise.
11077         * lib/unistr.h: Likewise.
11078         * lib/unistr/u-cpy-alloc.h: Likewise.
11079         * lib/unistr/u-cpy.h: Likewise.
11080         * lib/unistr/u-endswith.h: Likewise.
11081         * lib/unistr/u-move.h: Likewise.
11082         * lib/unistr/u-set.h: Likewise.
11083         * lib/unistr/u-startswith.h: Likewise.
11084         * lib/unistr/u-stpcpy.h: Likewise.
11085         * lib/unistr/u-stpncpy.h: Likewise.
11086         * lib/unistr/u-strcat.h: Likewise.
11087         * lib/unistr/u-strcpy.h: Likewise.
11088         * lib/unistr/u-strcspn.h: Likewise.
11089         * lib/unistr/u-strdup.h: Likewise.
11090         * lib/unistr/u-strlen.h: Likewise.
11091         * lib/unistr/u-strncat.h: Likewise.
11092         * lib/unistr/u-strncpy.h: Likewise.
11093         * lib/unistr/u-strnlen.h: Likewise.
11094         * lib/unistr/u-strpbrk.h: Likewise.
11095         * lib/unistr/u-strspn.h: Likewise.
11096         * lib/unistr/u-strstr.h: Likewise.
11097         * lib/unistr/u-strtok.h: Likewise.
11098         * lib/unistr/u16-check.c: Likewise.
11099         * lib/unistr/u16-chr.c: Likewise.
11100         * lib/unistr/u16-cmp.c: Likewise.
11101         * lib/unistr/u16-cpy-alloc.c: Likewise.
11102         * lib/unistr/u16-cpy.c: Likewise.
11103         * lib/unistr/u16-endswith.c: Likewise.
11104         * lib/unistr/u16-mblen.c: Likewise.
11105         * lib/unistr/u16-mbsnlen.c: Likewise.
11106         * lib/unistr/u16-mbtouc-aux.c: Likewise.
11107         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
11108         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
11109         * lib/unistr/u16-mbtouc.c: Likewise.
11110         * lib/unistr/u16-mbtoucr.c: Likewise.
11111         * lib/unistr/u16-move.c: Likewise.
11112         * lib/unistr/u16-next.c: Likewise.
11113         * lib/unistr/u16-prev.c: Likewise.
11114         * lib/unistr/u16-set.c: Likewise.
11115         * lib/unistr/u16-startswith.c: Likewise.
11116         * lib/unistr/u16-stpcpy.c: Likewise.
11117         * lib/unistr/u16-stpncpy.c: Likewise.
11118         * lib/unistr/u16-strcat.c: Likewise.
11119         * lib/unistr/u16-strchr.c: Likewise.
11120         * lib/unistr/u16-strcmp.c: Likewise.
11121         * lib/unistr/u16-strcpy.c: Likewise.
11122         * lib/unistr/u16-strcspn.c: Likewise.
11123         * lib/unistr/u16-strdup.c: Likewise.
11124         * lib/unistr/u16-strlen.c: Likewise.
11125         * lib/unistr/u16-strmblen.c: Likewise.
11126         * lib/unistr/u16-strmbtouc.c: Likewise.
11127         * lib/unistr/u16-strncat.c: Likewise.
11128         * lib/unistr/u16-strncmp.c: Likewise.
11129         * lib/unistr/u16-strncpy.c: Likewise.
11130         * lib/unistr/u16-strnlen.c: Likewise.
11131         * lib/unistr/u16-strpbrk.c: Likewise.
11132         * lib/unistr/u16-strrchr.c: Likewise.
11133         * lib/unistr/u16-strspn.c: Likewise.
11134         * lib/unistr/u16-strstr.c: Likewise.
11135         * lib/unistr/u16-strtok.c: Likewise.
11136         * lib/unistr/u16-to-u32.c: Likewise.
11137         * lib/unistr/u16-to-u8.c: Likewise.
11138         * lib/unistr/u16-uctomb-aux.c: Likewise.
11139         * lib/unistr/u16-uctomb.c: Likewise.
11140         * lib/unistr/u32-check.c: Likewise.
11141         * lib/unistr/u32-chr.c: Likewise.
11142         * lib/unistr/u32-cmp.c: Likewise.
11143         * lib/unistr/u32-cpy-alloc.c: Likewise.
11144         * lib/unistr/u32-cpy.c: Likewise.
11145         * lib/unistr/u32-endswith.c: Likewise.
11146         * lib/unistr/u32-mblen.c: Likewise.
11147         * lib/unistr/u32-mbsnlen.c: Likewise.
11148         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
11149         * lib/unistr/u32-mbtouc.c: Likewise.
11150         * lib/unistr/u32-mbtoucr.c: Likewise.
11151         * lib/unistr/u32-move.c: Likewise.
11152         * lib/unistr/u32-next.c: Likewise.
11153         * lib/unistr/u32-prev.c: Likewise.
11154         * lib/unistr/u32-set.c: Likewise.
11155         * lib/unistr/u32-startswith.c: Likewise.
11156         * lib/unistr/u32-stpcpy.c: Likewise.
11157         * lib/unistr/u32-stpncpy.c: Likewise.
11158         * lib/unistr/u32-strcat.c: Likewise.
11159         * lib/unistr/u32-strchr.c: Likewise.
11160         * lib/unistr/u32-strcmp.c: Likewise.
11161         * lib/unistr/u32-strcpy.c: Likewise.
11162         * lib/unistr/u32-strcspn.c: Likewise.
11163         * lib/unistr/u32-strdup.c: Likewise.
11164         * lib/unistr/u32-strlen.c: Likewise.
11165         * lib/unistr/u32-strmblen.c: Likewise.
11166         * lib/unistr/u32-strmbtouc.c: Likewise.
11167         * lib/unistr/u32-strncat.c: Likewise.
11168         * lib/unistr/u32-strncmp.c: Likewise.
11169         * lib/unistr/u32-strncpy.c: Likewise.
11170         * lib/unistr/u32-strnlen.c: Likewise.
11171         * lib/unistr/u32-strpbrk.c: Likewise.
11172         * lib/unistr/u32-strrchr.c: Likewise.
11173         * lib/unistr/u32-strspn.c: Likewise.
11174         * lib/unistr/u32-strstr.c: Likewise.
11175         * lib/unistr/u32-strtok.c: Likewise.
11176         * lib/unistr/u32-to-u16.c: Likewise.
11177         * lib/unistr/u32-to-u8.c: Likewise.
11178         * lib/unistr/u32-uctomb.c: Likewise.
11179         * lib/unistr/u8-check.c: Likewise.
11180         * lib/unistr/u8-chr.c: Likewise.
11181         * lib/unistr/u8-cmp.c: Likewise.
11182         * lib/unistr/u8-cpy-alloc.c: Likewise.
11183         * lib/unistr/u8-cpy.c: Likewise.
11184         * lib/unistr/u8-endswith.c: Likewise.
11185         * lib/unistr/u8-mblen.c: Likewise.
11186         * lib/unistr/u8-mbsnlen.c: Likewise.
11187         * lib/unistr/u8-mbtouc-aux.c: Likewise.
11188         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
11189         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
11190         * lib/unistr/u8-mbtouc.c: Likewise.
11191         * lib/unistr/u8-mbtoucr.c: Likewise.
11192         * lib/unistr/u8-move.c: Likewise.
11193         * lib/unistr/u8-next.c: Likewise.
11194         * lib/unistr/u8-prev.c: Likewise.
11195         * lib/unistr/u8-set.c: Likewise.
11196         * lib/unistr/u8-startswith.c: Likewise.
11197         * lib/unistr/u8-stpcpy.c: Likewise.
11198         * lib/unistr/u8-stpncpy.c: Likewise.
11199         * lib/unistr/u8-strcat.c: Likewise.
11200         * lib/unistr/u8-strchr.c: Likewise.
11201         * lib/unistr/u8-strcmp.c: Likewise.
11202         * lib/unistr/u8-strcpy.c: Likewise.
11203         * lib/unistr/u8-strcspn.c: Likewise.
11204         * lib/unistr/u8-strdup.c: Likewise.
11205         * lib/unistr/u8-strlen.c: Likewise.
11206         * lib/unistr/u8-strmblen.c: Likewise.
11207         * lib/unistr/u8-strmbtouc.c: Likewise.
11208         * lib/unistr/u8-strncat.c: Likewise.
11209         * lib/unistr/u8-strncmp.c: Likewise.
11210         * lib/unistr/u8-strncpy.c: Likewise.
11211         * lib/unistr/u8-strnlen.c: Likewise.
11212         * lib/unistr/u8-strpbrk.c: Likewise.
11213         * lib/unistr/u8-strrchr.c: Likewise.
11214         * lib/unistr/u8-strspn.c: Likewise.
11215         * lib/unistr/u8-strstr.c: Likewise.
11216         * lib/unistr/u8-strtok.c: Likewise.
11217         * lib/unistr/u8-to-u16.c: Likewise.
11218         * lib/unistr/u8-to-u32.c: Likewise.
11219         * lib/unistr/u8-uctomb-aux.c: Likewise.
11220         * lib/unistr/u8-uctomb.c: Likewise.
11221         * lib/unitypes.h: Likewise.
11222         * lib/uniwidth.h: Likewise.
11223         * lib/uniwidth/cjk.h: Likewise.
11224         * lib/uniwidth/u16-strwidth.c: Likewise.
11225         * lib/uniwidth/u16-width.c: Likewise.
11226         * lib/uniwidth/u32-strwidth.c: Likewise.
11227         * lib/uniwidth/u32-width.c: Likewise.
11228         * lib/uniwidth/u8-strwidth.c: Likewise.
11229         * lib/uniwidth/u8-width.c: Likewise.
11230         * lib/uniwidth/width.c: Likewise.
11231
11232 2007-10-07  Bruno Haible  <bruno@clisp.org>
11233
11234         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
11235         The file is still under LGPL (see modules/inttypes).
11236
11237 2007-10-06  Bruno Haible  <bruno@clisp.org>
11238
11239         * modules/trunc (Dependencies): Add 'extensions'.
11240         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
11241         Reported by Ben Pfaff <blp@gnu.org>.
11242
11243 2007-10-06  Bruno Haible  <bruno@clisp.org>
11244
11245         * modules/freopen-tests: New file.
11246         * tests/test-freopen.c: New file.
11247
11248         * modules/fopen-tests: New file.
11249         * tests/test-fopen.c: New file.
11250
11251         * modules/fopen: New file.
11252         * lib/fopen.c: New file.
11253         * m4/fopen.m4: New file.
11254         * modules/freopen: New file.
11255         * lib/freopen.c: New file.
11256         * m4/freopen.m4: New file.
11257         * lib/stdio.in.h (fopen, freopen): New declarations.
11258         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
11259         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
11260         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
11261         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
11262         * doc/functions/fopen.texi: Mention the 'fopen' module.
11263         * doc/functions/freopen.texi: Mention the 'freopen' module.
11264
11265 2007-10-06  Bruno Haible  <bruno@clisp.org>
11266
11267         * modules/open-tests: New file.
11268         * tests/test-open.c: New file.
11269
11270         * modules/open: New file.
11271         * lib/open.c: New file.
11272         * m4/open.m4: New file.
11273         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
11274         lib/open.c does.
11275         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
11276         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
11277         macros.
11278         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
11279         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
11280         REPLACE_OPEN.
11281         * doc/functions/open.texi: Mention the 'open' module.
11282
11283 2007-10-04  Bruno Haible  <bruno@clisp.org>
11284
11285         * modules/ceill-tests: New file.
11286         * tests/test-ceill.c: New file.
11287
11288         * modules/ceill: New file.
11289         * lib/ceill.c: Replace entire file.
11290         * m4/ceill.m4: New file.
11291         * lib/math.in.h (ceill): Replace declaration.
11292         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
11293         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
11294         * doc/functions/ceill.texi: Mention the 'ceill' module.
11295         * modules/mathl (Files): Remove lib/ceill.c.
11296         (Depends-on): Add ceill.
11297
11298 2007-10-04  Bruno Haible  <bruno@clisp.org>
11299
11300         * modules/ceilf-tests: New file.
11301         * tests/test-ceilf.c: New file.
11302
11303         * modules/ceilf: New file.
11304         * lib/ceil.c: New file.
11305         * lib/ceilf.c: New file.
11306         * m4/ceilf.m4: New file.
11307         * lib/math.in.h (ceilf): New declaration.
11308         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
11309         HAVE_DECL_CEILF.
11310         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
11311         HAVE_DECL_CEILF.
11312         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
11313
11314 2007-10-04  Bruno Haible  <bruno@clisp.org>
11315
11316         * modules/floorl-tests: New file.
11317         * tests/test-floorl.c: New file.
11318
11319         * modules/floorl: New file.
11320         * lib/floorl.c: Replace entire file.
11321         * m4/floorl.m4: New file.
11322         * lib/math.in.h (floorl): Replace declaration.
11323         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
11324         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
11325         * doc/functions/floorl.texi: Mention the 'floorl' module.
11326         * modules/mathl (Files): Remove lib/floorl.c.
11327         (Depends-on): Add floorl.
11328
11329 2007-10-04  Bruno Haible  <bruno@clisp.org>
11330
11331         * modules/floorf-tests: New file.
11332         * tests/test-floorf.c: New file.
11333
11334         * modules/floorf: New file.
11335         * lib/floor.c: New file.
11336         * lib/floorf.c: New file.
11337         * m4/floorf.m4: New file.
11338         * lib/math.in.h (floorf): New declaration.
11339         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
11340         HAVE_DECL_FLOORF.
11341         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
11342         HAVE_DECL_FLOORF.
11343         * doc/functions/floorf.texi: Mention the 'floorf' module.
11344
11345 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
11346             Bruno Haible  <bruno@clisp.org>
11347
11348         Advertise for the Git server instead of the CVS server.
11349         * doc/gnulib-intro.texi (Steady Development): Mention the Git
11350         repository instead of the CVS one.
11351         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
11352         about all VCS systems generically.
11353         * doc/gnulib.texi (Introduction): Capitalize `Git'.
11354
11355 2007-10-04  Bruno Haible  <bruno@clisp.org>
11356
11357         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
11358         means.
11359         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
11360
11361 2007-10-04  Bruno Haible  <bruno@clisp.org>
11362
11363         * modules/truncl-tests: New file.
11364         * tests/test-truncl.c: New file.
11365
11366         * modules/truncl: New file.
11367         * lib/truncl.c: New file.
11368         * m4/truncl.m4: New file.
11369         * lib/math.in.h (truncl): New declaration.
11370         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
11371         HAVE_DECL_TRUNCL.
11372         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
11373         HAVE_DECL_TRUNCL.
11374         * doc/functions/truncl.texi: Mention the 'truncl' module.
11375
11376 2007-10-04  Bruno Haible  <bruno@clisp.org>
11377
11378         * modules/truncf-tests: New file.
11379         * tests/test-truncf.c: New file.
11380
11381         * modules/truncf: New file.
11382         * lib/trunc.c: Make paramerizable through USE_* macros.
11383         * lib/truncf.c: New file.
11384         * m4/truncf.m4: New file.
11385         * lib/math.in.h (truncf): New declaration.
11386         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
11387         HAVE_DECL_TRUNCF.
11388         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
11389         HAVE_DECL_TRUNCF.
11390         * doc/functions/truncf.texi: Mention the 'truncf' module.
11391
11392 2007-10-03  Bruno Haible  <bruno@clisp.org>
11393
11394         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
11395         augmentation also for tests modules.
11396         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
11397         * modules/atexit-tests (Makefile.am): Likewise.
11398         * modules/binary-io-tests (Makefile.am): Likewise.
11399         * modules/c-strcase-tests (Makefile.am): Likewise.
11400         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
11401         * modules/canonicalize-tests (Makefile.am): Likewise.
11402         * modules/closein-tests (Makefile.am): Likewise.
11403         * modules/fprintf-posix-tests (Makefile.am): Likewise.
11404         * modules/freadahead-tests (Makefile.am): Likewise.
11405         * modules/fseek-tests (Makefile.am): Likewise.
11406         * modules/fseeko-tests (Makefile.am): Likewise.
11407         * modules/ftell-tests (Makefile.am): Likewise.
11408         * modules/ftello-tests (Makefile.am): Likewise.
11409         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
11410         * modules/isnanl-tests (Makefile.am): Likewise.
11411         * modules/lseek-tests (Makefile.am): Likewise.
11412         * modules/mbscasecmp-tests (Makefile.am): Likewise.
11413         * modules/mbscasestr-tests (Makefile.am): Likewise.
11414         * modules/mbschr-tests (Makefile.am): Likewise.
11415         * modules/mbscspn-tests (Makefile.am): Likewise.
11416         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
11417         * modules/mbspbrk-tests (Makefile.am): Likewise.
11418         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
11419         * modules/mbsrchr-tests (Makefile.am): Likewise.
11420         * modules/mbsspn-tests (Makefile.am): Likewise.
11421         * modules/mbsstr-tests (Makefile.am): Likewise.
11422         * modules/printf-posix-tests (Makefile.am): Likewise.
11423         * modules/snprintf-posix-tests (Makefile.am): Likewise.
11424         * modules/sprintf-posix-tests (Makefile.am): Likewise.
11425         * modules/tsearch-tests (Makefile.am): Likewise.
11426         * modules/uniname/uniname-tests (Makefile.am): Likewise.
11427         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
11428         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
11429         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
11430         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
11431         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
11432         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
11433         * modules/vprintf-posix-tests (Makefile.am): Likewise.
11434         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
11435         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
11436         * modules/xstrtoimax-tests (Makefile.am): Likewise.
11437         * modules/xstrtol-tests (Makefile.am): Likewise.
11438         * modules/xstrtoumax-tests (Makefile.am): Likewise.
11439         * modules/yesno-tests (Makefile.am): Likewise.
11440
11441 2007-10-03  Bruno Haible  <bruno@clisp.org>
11442
11443         * modules/trunc-tests: New file.
11444         * tests/test-trunc.c: New file.
11445
11446         * modules/trunc: New file.
11447         * lib/trunc.c: New file.
11448         * m4/trunc.m4: New file.
11449         * lib/math.in.h (trunc): New declaration.
11450         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
11451         HAVE_DECL_TRUNC.
11452         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
11453         HAVE_DECL_TRUNC.
11454         * doc/functions/trunc.texi: Mention the 'trunc' module.
11455
11456 2007-10-03  Bruno Haible  <bruno@clisp.org>
11457
11458         * tests/test-fpending.c: New file, mostly copied
11459         from coreutils/lib/t-fpending.c.
11460         * modules/fpending-tests: New file.
11461
11462 2007-10-03  Bruno Haible  <bruno@clisp.org>
11463
11464         Port the stdio extensions to QNX (untested).
11465         * lib/fseterr.c (fseterr): Add support for QNX.
11466         * lib/fbufmode.c (fbufmode): Likewise.
11467         * lib/freadable.c (freadable): Likewise.
11468         * lib/fwritable.c (fwritable): Likewise.
11469         * lib/freading.c (freading): Likewise.
11470         * lib/fwriting.c (fwriting): Likewise.
11471         * lib/freadahead.c (freadahed): Likewise.
11472         * lib/fpurge.c (fpurge): Likewise.
11473         * lib/fseeko.c (rpl_fseeko): Likewise.
11474
11475 2007-10-03  Bruno Haible  <bruno@clisp.org>
11476             Jim Meyering  <jim@meyering.net>
11477             Eric Blake  <ebb9@byu.net>
11478
11479         * doc/relocatable.texi: Use @command instead of @program.
11480
11481 2007-10-02  Jim Meyering  <jim@meyering.net>
11482
11483         Perform one more "_.h" -> ".in.h" substitution.
11484         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
11485         instead of unistd_.h here, too.
11486
11487 2007-10-01  Bruno Haible  <bruno@clisp.org>
11488
11489         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
11490         Needed for the alloca-opt module.
11491
11492 2007-09-30  Bruno Haible  <bruno@clisp.org>
11493
11494         * lib/alloca.in.h: Renamed from lib/alloca_.h.
11495         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
11496         alloca_.h.
11497         * lib/argz.in.h: Renamed from lib/argz_.h.
11498         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
11499         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
11500         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
11501         byteswap_.h.
11502         * lib/dirent.in.h: Renamed from lib/dirent_.h.
11503         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
11504         dirent_.h.
11505         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
11506         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
11507         fcntl_.h.
11508         * lib/float.in.h: Renamed from lib/float_.h.
11509         * modules/float (Files, Makefile.am): Use float.in.h instead of
11510         float_.h.
11511         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
11512         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
11513         fnmatch_.h.
11514         * lib/getopt.in.h: Renamed from lib/getopt_.h.
11515         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
11516         getopt_.h.
11517         * lib/glob.in.h: Renamed from lib/glob_.h.
11518         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
11519         * lib/iconv.in.h: Renamed from lib/iconv_.h.
11520         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
11521         iconv_.h.
11522         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
11523         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
11524         inttypes_.h.
11525         * lib/locale.in.h: Renamed from lib/locale_.h.
11526         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
11527         locale_.h.
11528         * lib/math.in.h: Renamed from lib/math_.h.
11529         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
11530         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
11531         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
11532         of netinet_in_.h. Add dependency.
11533         * lib/poll.in.h: Renamed from lib/poll_.h.
11534         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
11535         * lib/search.in.h: Renamed from lib/search_.h.
11536         * modules/search (Files, Makefile.am): Use search.in.h instead of
11537         search_.h.
11538         * lib/signal.in.h: Renamed from lib/signal_.h.
11539         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
11540         _signal.h.
11541         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
11542         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
11543         stdbool_.h.
11544         * lib/stdint.in.h: Renamed from lib/stdint_.h.
11545         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
11546         stdint_.h.
11547         * lib/stdio.in.h: Renamed from lib/stdio_.h.
11548         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
11549         stdio_.h.
11550         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
11551         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
11552         stdlib_.h.
11553         * lib/string.in.h: Renamed from lib/string_.h.
11554         * modules/string (Files, Makefile.am): Use string.in.h instead of
11555         string_.h.
11556         * doc/gnulib-tool.texi (Initial import): Update.
11557         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
11558         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
11559         of sys_select_.h. Add dependency.
11560         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
11561         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
11562         of sys_socket_.h.
11563         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
11564         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
11565         sys_stat_.h.
11566         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
11567         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
11568         sys_time_.h.
11569         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
11570         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
11571         sysexits_.h.
11572         * lib/time.in.h: Renamed from lib/time_.h.
11573         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
11574         * lib/unistd.in.h: Renamed from lib/unistd_.h.
11575         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
11576         unistd_.h.
11577         * lib/wchar.in.h: Renamed from lib/wchar_.h.
11578         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
11579         wchar_.h.
11580         * lib/wctype.in.h: Renamed from lib/wctype_.h.
11581         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
11582         wctype_.h.
11583         * build-aux/bootstrap (slurp): Update.
11584         * lib/.cppi-disable: Update.
11585
11586 2007-09-30  Bruno Haible  <bruno@clisp.org>
11587
11588         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
11589         Needed on BeOS.
11590
11591 2007-09-30  Bruno Haible  <bruno@clisp.org>
11592
11593         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
11594
11595 2007-09-29  Bruno Haible  <bruno@clisp.org>
11596
11597         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
11598
11599 2007-09-29  Bruno Haible  <bruno@clisp.org>
11600
11601         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
11602         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
11603         * build-aux/install-reloc: Compile also areadlink.c.
11604         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
11605
11606 2007-09-29  Bruno Haible  <bruno@clisp.org>
11607
11608         * gnulib-tool (func_emit_initmacro_done): Indentation.
11609
11610 2007-09-29  Bruno Haible  <bruno@clisp.org>
11611
11612         * README: Add CVS checkout update instructions.
11613         Info from Bob Proulx <bob@proulx.com>.
11614
11615 2007-09-28  Eric Blake  <ebb9@byu.net>
11616
11617         Provide move-if-change.
11618         * build-aux/move-if-change: New file, based on best practice
11619         rather than any canonical upstream location.
11620
11621 2007-09-28  Jim Meyering  <jim@meyering.net>
11622
11623         Fix canonicalize loop-detection corner case.
11624         Do not attempt to stat the symlink values stored via seen_triple.
11625         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
11626         on linux-2.6.18, (but not 2.6.22).
11627         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
11628         triple_compare.  The former compares dev,ino,filename, while the latter
11629         would actually stat dirname(filename) when dev and ino were equal.
11630         * lib/hash-triple.c: Install <string.h>.
11631         (STREQ): Define.
11632         (triple_compare_ino_str): New function.
11633         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
11634
11635 2007-09-28  Eric Blake  <ebb9@byu.net>
11636
11637         Enforce that AC_REPLACE_FUNCS files exist.
11638         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
11639         override check for typos.
11640
11641         Fix test-closein on Solaris 10.
11642         * tests/test-closein.c (main): Don't assume stdin can be inherited
11643         closed on all systems.
11644         * tests/test-closein.sh: Likewise.
11645         Reported by Piotr Tarnowski.
11646
11647 2007-09-28  Jim Meyering  <jim@meyering.net>
11648
11649         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
11650
11651 2007-09-27  Jim Meyering  <jim@meyering.net>
11652
11653         canonicalize: Avoid a false-positive cycle failure.
11654         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
11655         Sort.  Remove cycle-check.
11656         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
11657         not cycle-check.h.
11658         (seen_triple): New function.
11659         (canonicalize_filename_mode): Use it instead of cycle-check.
11660         * tests/test-canonicalize.c: Add a test for this bug.
11661         * tests/test-canonicalize.sh: Set up and run the test.
11662
11663         New module, file-set, from coreutils.
11664         * modules/file-set: Define it.
11665         * lib/file-set.c, lib/file-set.h: Implement.
11666
11667         New module, hash-triple, from coreutils.
11668         * modules/hash-triple: Define it.
11669         * lib/hash-triple.c, lib/hash-triple.h: Implement.
11670
11671 2007-09-25  Eric Blake  <ebb9@byu.net>
11672
11673         Fix strerror on Interix.
11674         * lib/string_.h (strerror): Declare replacement.
11675         * doc/functions/strerror.texi (strerror): Document the Interix
11676         shortcoming.
11677         * modules/string (Makefile.am): Support new hooks.
11678         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
11679         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
11680         gl_FUNC_STRERROR_SEPARATE.
11681         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
11682         * lib/strerror.c (rpl_strerror): Provide replacement.
11683         * modules/strerror (Depends-on): Add string.
11684         (configure.ac): Detect use of module.
11685         * tests/test-strerror.c: New file.
11686         * modules/strerror-tests: New test module.
11687         * modules/argp (Depends-on): Add strerror.
11688         * modules/error (Depends-on): Likewise.
11689         Reported by Martin Koeppe.
11690
11691 2007-09-24  Bruno Haible  <bruno@clisp.org>
11692
11693         * README: Update git instructions.
11694
11695 2007-09-24  Eric Blake  <ebb9@byu.net>
11696
11697         Revert fpending breakage from 2007-09-08.
11698         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
11699         __fpending.c.
11700
11701 2007-09-24  Jim Meyering  <jim@meyering.net>
11702
11703         filenamecat.c: Add a test.
11704         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
11705         showing how the function works when DIR is the empty string.
11706
11707 2007-09-21  Simon Josefsson  <simon@josefsson.org>
11708
11709         * tests/test-canonicalize.sh: Turn on executable bit.
11710
11711 2007-09-19  Eric Blake  <ebb9@byu.net>
11712
11713         * README: Update CVS instructions.
11714
11715 2007-09-18  Bruno Haible  <bruno@clisp.org>
11716
11717         * modules/areadlink: New file.
11718         * lib/areadlink.h (areadlink): New declaration.
11719         * lib/areadlink.c: New file, based on lib/xreadlink.c.
11720
11721 2007-09-17  Jim Meyering  <jim@meyering.net>
11722
11723         * lib/savewd.c (ESTALE) [!defined]: Define.
11724         Reported to be required on Interix by Martin Koeppe.
11725
11726 2007-09-17  Bruno Haible  <bruno@clisp.org>
11727
11728         * gnulib-tool (func_version): Use $version.
11729
11730 2007-09-16  Bruno Haible  <bruno@clisp.org>
11731
11732         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
11733         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
11734         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
11735         Reported by Greg Schafer <gschafer@zip.com.au>.
11736
11737 2007-09-15  Bruno Haible  <bruno@clisp.org>
11738
11739         * gnulib-tool (sed): Try a little harder to make bash understand the
11740         alias.
11741         Reported by Bruce Korb <bruce.korb@gmail.com>.
11742
11743 2007-09-13  Eric Blake  <ebb9@byu.net>
11744
11745         * ChangeLog: Remove conflict markers.
11746
11747 2007-09-13  Simon Josefsson  <simon@josefsson.org>
11748
11749         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
11750         Reported by Bruno Haible <bruno@clisp.org>.
11751
11752 2007-09-12  Bruno Haible  <bruno@clisp.org>
11753
11754         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
11755         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
11756         is not defined.
11757
11758 2007-09-12  Eric Blake  <ebb9@byu.net>
11759
11760         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
11761         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
11762         Autoconf definition.
11763         * modules/euidaccess (Depends-on): Add extensions, for
11764         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
11765         * modules/fnmatch (Depends-on): Likewise.
11766         * modules/getaddrinfo (Depends-on): Likewise.
11767         * modules/getdelim (Depends-on): Likewise.
11768         * modules/getline (Depends-on): Likewise.
11769         * modules/getsubopt (Depends-on): Likewise.
11770         * modules/gettext (Depends-on): Likewise.
11771         * modules/group-member (Depends-on): Likewise.
11772         * modules/mbchar (Depends-on): Likewise.
11773         * modules/memmem (Depends-on): Likewise.
11774         * modules/mempcpy (Depends-on): Likewise.
11775         * modules/memrchr (Depends-on): Likewise.
11776         * modules/pagealign_alloc (Depends-on): Likewise.
11777         * modules/readutmp (Depends-on): Likewise.
11778         * modules/stpcpy (Depends-on): Likewise.
11779         * modules/stpncpy (Depends-on): Likewise.
11780         * modules/strchrnul (Depends-on): Likewise.
11781         * modules/strndup (Depends-on): Likewise.
11782         * modules/strsep (Depends-on): Likewise.
11783         * modules/strverscmp (Depends-on): Likewise.
11784         * modules/vasprintf (Depends-on): Likewise.
11785         * modules/wcwidth (Depends-on): Likewise.
11786         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
11787         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
11788         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
11789         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
11790         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
11791         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
11792         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
11793         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
11794         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
11795         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
11796         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
11797         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
11798         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
11799         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
11800         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
11801         * m4/readutmp.m4 (gl_READUTMP): Likewise.
11802         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
11803         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
11804         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
11805         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
11806         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
11807         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
11808         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
11809         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
11810         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
11811         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
11812         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
11813         so that lock.m4 can be used in gettext without extensions module.
11814
11815 2007-09-11  Bruno Haible  <bruno@clisp.org>
11816
11817         * m4/isc-posix.m4: Remove file.
11818         Suggested by Eric Blake.
11819
11820 2007-09-11  Eric Blake  <ebb9@byu.net>
11821
11822         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
11823
11824 2007-09-10  Bruno Haible  <bruno@clisp.org>
11825
11826         * posix-modules: Fix typo in error message.
11827         Reported by Matt <mkraai@beckman.com>.
11828
11829 2007-09-09  Bruno Haible  <bruno@clisp.org>
11830
11831         * doc/functions/getdelim.texi: Update list of platforms lacking the
11832         function.
11833         * doc/functions/getline.texi: Likewise.
11834
11835 2007-09-09  Jim Meyering  <jim@meyering.net>
11836
11837         * lib/hash.c (hash_initialize): Detect calloc failure.
11838         Reported by Bruno Haible.
11839
11840 2007-09-09  Bruno Haible  <bruno@clisp.org>
11841
11842         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
11843         malloc or realloc fails.
11844
11845 2007-09-09  Bruno Haible  <bruno@clisp.org>
11846
11847         * modules/getcwd (Depends-on): Add malloc-posix.
11848         * modules/glob (Depends-on): Likewise.
11849         * modules/putenv (Depends-on): Likewise.
11850         * modules/strdup (Depends-on): Likewise.
11851         * modules/getdelim (Depends-on): Add realloc-posix.
11852         * modules/read-file (Depends-on): Likewise.
11853
11854 2007-09-09  Bruno Haible  <bruno@clisp.org>
11855
11856         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
11857         (gl_FUNC_MALLOC_POSIX): Require it.
11858         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
11859         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
11860         * modules/realloc (Files): Add m4/malloc.m4.
11861         * modules/calloc (Files): Likewise.
11862
11863 2007-09-09  Bruno Haible  <bruno@clisp.org>
11864
11865         * modules/malloc-posix: New file.
11866         * modules/malloc (Depends-on): Add malloc-posix.
11867         * lib/malloc.c: Include errno.h.
11868         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
11869         and a POSIX-compatible malloc into a single function. Set ENOMEM
11870         when returning NULL.
11871         * m4/malloc.m4: New file.
11872         * doc/functions/malloc.texi: Mention the malloc-posix module.
11873         * lib/stdlib_.h (malloc): New declaration.
11874         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
11875         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
11876         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
11877         and HAVE_MALLOC_POSIX.
11878
11879 2007-09-09  Bruno Haible  <bruno@clisp.org>
11880
11881         * modules/realloc-posix: New file.
11882         * modules/realloc (Depends-on): Add realloc-posix.
11883         * lib/realloc.c: Include errno.h.
11884         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
11885         and a POSIX-compatible realloc into a single function. Set ENOMEM
11886         when returning NULL.
11887         * m4/realloc.m4: New file.
11888         * doc/functions/realloc.texi: Mention the realloc-posix module.
11889         * lib/stdlib_.h (realloc): New declaration.
11890         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
11891         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
11892         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
11893         and HAVE_REALLOC_POSIX.
11894
11895 2007-09-09  Bruno Haible  <bruno@clisp.org>
11896
11897         * modules/calloc-posix: New file.
11898         * modules/calloc (Depends-on): Add calloc-posix.
11899         * lib/calloc.c: Include errno.h.
11900         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
11901         and a POSIX-compatible calloc into a single function. Set ENOMEM
11902         when returning NULL.
11903         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
11904         * doc/functions/calloc.texi: Mention the calloc-posix module.
11905         * lib/stdlib_.h (calloc): New declaration.
11906         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
11907         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
11908         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
11909         and HAVE_CALLOC_POSIX.
11910
11911 2007-09-09  Bruno Haible  <bruno@clisp.org>
11912
11913         Allow for modules to show an arbitrary notice.
11914         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
11915         * gnulib-tool: New option --extract-notice.
11916         (func_usage): Document it.
11917         (sed_extract_prog): Update.
11918         (func_get_notice): New function.
11919         (func_modules_notice): New function.
11920         (func_import, func_create_testdir): Invoke it.
11921         Suggested by Jim Meyering.
11922
11923 2007-09-09  Bruno Haible  <bruno@clisp.org>
11924
11925         * gnulib-tool: New options --verbose, --quiet.
11926         (func_usage): Document them.
11927         (verbose): New variable.
11928         (func_execute_command): New function.
11929         (func_import): Don't show the module list and the file list if
11930         $verbose < 0.
11931         (func_create_testdir): Likewise. Use func_execute_command.
11932         (func_create_megatestdir): Use func_execute_command.
11933
11934 2007-09-08  Bruno Haible  <bruno@clisp.org>
11935
11936         * gnulib-tool (func_import): Prefer rsync over wget when available,
11937         for fetching the PO files.
11938
11939 2007-09-08  Bruno Haible  <bruno@clisp.org>
11940
11941         * posix-modules: New file. Portions copied from gnulib-tool.
11942         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
11943
11944 2007-09-08  Jim Meyering  <jim@meyering.net>
11945
11946         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
11947         * lib/fpending.h: Rename from __fpending.h.
11948         * lib/fpending.c: Rename from __fpending.c.
11949         Include "fpending.h", not "__fpending.h".
11950         * lib/__fpending.h, lib/__fpending.c: Remove files.
11951         * modules/fpending (Files): Reflect new file names.
11952         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
11953
11954 2007-09-08  Bruno Haible  <bruno@clisp.org>
11955
11956         * m4/inttypes-h.m4: Remove stub file.
11957
11958 2007-09-07  Simon Josefsson  <simon@josefsson.org>
11959
11960         * doc/headers/stdint.texi: Discuss #include_next issue.
11961
11962 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
11963
11964         * build-aux/bootstrap: Remove obsolete comment about wget --help.
11965
11966 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11967
11968         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
11969         in variable name.
11970
11971 2007-09-03  Jim Meyering  <jim@meyering.net>
11972
11973         New module: git-version-gen.
11974         * modules/git-version-gen: New file.
11975
11976         Import changes from coreutils for bootstrap script.
11977
11978         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
11979
11980         bootstrap: uses rsync to download the .po files
11981         * build-aux/bootstrap (po_download_command_format): New global.
11982         (download_po_files): Use rsync.
11983         (update_po_files): Don't remove .po files after download,
11984         so future rsync runs can take advantage of the copies.
11985
11986         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
11987
11988         Solve the unnecessary-.po-file-regeneration problem once and for all.
11989         * build-aux/bootstrap (download_po_files): New function, renamed from
11990         get_translations.  Now, downloads, but doesn't update LINGUAS.
11991         (update_po_files): New function.
11992
11993         bootstrap: Ignore more.
11994         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
11995         uniwidth to e.g., lib/.gitignore.
11996         (slurp): Handle the sys_stat_.h -> sys mapping, too.
11997
11998         * build-aux/bootstrap: New setting: vc_ignore.
11999         (insert_sorted_if_absent): Create $file if absent.
12000         Adapt to new, possibly empty, list: $vc_ignore.
12001
12002         bootstrap: generate more ignorable names
12003         * build-aux/bootstrap (slurp): When generating ignorable names,
12004         also map .sin to .sed, .gperf to .c, and .y to .c.
12005
12006 2007-09-03  Jim Meyering  <jim@meyering.net>
12007
12008         * build-aux/git-version-gen: New file, from coreutils.  For details, see
12009         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
12010
12011 2007-09-02  Bruno Haible  <bruno@clisp.org>
12012
12013         Fix mis-recognition of 'mcs' on QNX 6.
12014         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
12015         output contains the string "Mono".
12016         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
12017         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
12018
12019 2007-09-01  Bruno Haible  <bruno@clisp.org>
12020
12021         Fix collision between uniwidth/* and linebreak modules.
12022         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
12023         u32_width): Remove declarations.
12024         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
12025         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
12026         streq3, streq2, streq1, streq0): Remove functions.
12027         (STREQ): Remove macro.
12028         (is_cjk_encoding): Remove function.
12029         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
12030         (uc_width, u8_width, u16_width, u32_width): Remove functions.
12031         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
12032         * NEWS: Document the change.
12033
12034 2007-09-01  Bruno Haible  <bruno@clisp.org>
12035
12036         * lib/streq.h: Add double-inclusion guard.
12037
12038 2007-09-01  Karl Berry  <karl@gnu.org>
12039
12040         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
12041
12042 2007-08-28  Jim Meyering  <jim@meyering.net>
12043
12044         Rename mreadlink_with_size to areadlink_with_size.
12045         * NEWS: Document the change.
12046         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
12047         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
12048         * lib/mreadlink.h: Rename this to...
12049         * lib/areadlink.h: ...this.
12050         * modules/mreadlink-with-size: Rename this to...
12051         * modules/areadlink-with-size: ...this.
12052         * lib/canonicalize.c: Reflect the renaming.
12053         * modules/canonicalize: Likewise.
12054
12055 2007-08-26  Bruno Haible  <bruno@clisp.org>
12056
12057         * gnulib-tool (func_import): When deciding which files to remove,
12058         consider also dangling symbolic links.
12059         Reported by Eric Blake.
12060
12061 2007-08-26  Bruno Haible  <bruno@clisp.org>
12062
12063         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
12064
12065 2007-08-23  Simon Josefsson  <simon@josefsson.org>
12066
12067         * lib/readline.c: Don't include getline.h, the prototype is now
12068         found in stdio.h.
12069
12070 2007-08-23  Jim Meyering  <jim@meyering.net>
12071
12072         Getdelim touchup.
12073         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
12074         around the funlockfile call, since funlockfile never sets errno.
12075         Don't set errno upon failed realloc.
12076
12077 2007-08-22  Eric Blake  <ebb9@byu.net>
12078
12079         Getline touchups.
12080         * lib/getdelim.c (getdelim): Revert regression that required *n to
12081         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
12082         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
12083         getdelim, rather than whether implementation is missing.
12084         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
12085         * lib/stdio_.h (getline): Also declare if replacement is
12086         required.
12087         * doc/functions/getdelim.texi: New file.
12088         * doc/functions/getline.texi: Likewise.
12089         * doc/gnulib.texi (Function Substitutes): Add new files.
12090         Reported by Bruno Haible.
12091
12092 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
12093
12094         * users.txt: Add Guile.
12095
12096 2007-08-22  Eric Blake  <ebb9@byu.net>
12097
12098         * tests/test-getdelim.c (main): Use remove, not unlink.
12099         * tests/test-getline.c (main): Likewise.
12100
12101         Move getline and getdelim into stdio.h, per POSIX 200x.
12102         * modules/getline (Files): Remove getline.h.
12103         (Depends-on): Add stdio.
12104         (configure.ac): Add module indicator.
12105         * modules/getdelim (Files): Remove getdelim.h.
12106         (Depends-on): Add stdio.
12107         (configure.ac): Add module indicator.
12108         * modules/stdio (Makefile.am): Work with new indicators.
12109         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
12110         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
12111         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
12112         * lib/getdelim.h: Delete.
12113         * lib/getline.h: Delete.
12114         * lib/stdio_.h (getdelim, getline): Declare.
12115         * modules/getdelim-tests: New module.
12116         * modules/getline-tests: Likewise.
12117         * tests/test-getdelim.c: New file.
12118         * tests/test-getline.c: Likewise.
12119         * NEWS: Document the change.
12120         * lib/getline.c: Update choice of header.
12121         * lib/csharpcomp.c: Likewise.
12122         * lib/getpass.c: Likewise.
12123         * lib/javacomp.c: Likewise.
12124         * lib/javaversion.c: Likewise.
12125         * lib/yesno.c: Likewise.
12126         * lib/getdelim.c: Likewise.
12127         (getdelim): Set errno on failure, and avoid memory leak.
12128
12129 2007-08-19  Bruno Haible  <bruno@clisp.org>
12130
12131         * modules/closein (Depends-on): Add freadahead.
12132         * lib/closein.c: Include freadahead.h.
12133         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
12134         is zero.
12135
12136 2007-08-19  Bruno Haible  <bruno@clisp.org>
12137
12138         * modules/freadahead-tests: New file.
12139         * tests/test-freadahead.sh: New file.
12140         * tests/test-freadahead.c: New file.
12141
12142         * modules/freadahead: New file.
12143         * lib/freadahead.h: New file.
12144         * lib/freadahead.c: New file.
12145         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
12146         fbufmode, fpurge, freadable, fwritable.
12147
12148 2007-08-19  Eric Blake  <ebb9@byu.net>
12149
12150         Test yesno in combination with closein.
12151         * lib/yesno.c (yesno): Document use of stdin.
12152         * modules/yesno-tests (Files): New module.
12153         * tests/test-yesno.c (main): New file.
12154         * tests/test-yesno.sh: Likewise.
12155
12156 2007-08-19  Bruno Haible  <bruno@clisp.org>
12157
12158         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
12159         * lib/fseeko.c (rpl_fseeko): Likewise.
12160         * lib/fseterr.c (fseterr): Likewise.
12161
12162 2007-08-19  Bruno Haible  <bruno@clisp.org>
12163
12164         * tests/test-lseek.c (main): Disable a test for BeOS.
12165         * doc/functions/lseek.texi: Document the BeOS bug.
12166
12167 2007-08-19  Bruno Haible  <bruno@clisp.org>
12168             Eric Blake  <ebb9@byu.net>
12169
12170         * lib/lseek.c: Include <sys/stat.h>.
12171         (rpl_lseek): Add workaround code also for Unix platforms.
12172         Needed for BeOS.
12173         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
12174         * doc/functions/lseek.texi: Document BeOS definiency.
12175
12176 2007-08-18  Bruno Haible  <bruno@clisp.org>
12177
12178         * modules/fstrcmp-tests: New file.
12179         * tests/test-fstrcmp.c: New file.
12180
12181 2007-08-18  Bruno Haible  <bruno@clisp.org>
12182
12183         * modules/fstrcmp: New file, from GNU gettext with modifications.
12184         * lib/fstrcmp.h: New file, from GNU gettext.
12185         * lib/fstrcmp.c: New file, from GNU gettext.
12186         * MODULES.html.sh (String handling): Add fstrcmp.
12187
12188 2007-08-18  Bruno Haible  <bruno@clisp.org>
12189
12190         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
12191         'bool'.
12192         (diag, compareseq): Remove const from the ctxt argument.
12193         (USE_HEURISTIC): Undefine at the end.
12194
12195 2007-08-18  Jim Meyering  <jim@meyering.net>
12196
12197         New file: lib/idcache.h
12198         * NEWS: Mention the addition.
12199         * modules/idcache (Files): Add lib/idcache.h
12200         * lib/idcache.c: Include "idcache.h".
12201         Don't include <sys/types.h>.
12202         Add a FIXME comment.
12203         Move file-scoped "static" declarations to the top.
12204         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
12205
12206 2007-08-17  Bruno Haible  <bruno@clisp.org>
12207         and Paul Eggert  <eggert@cs.ucla.edu>
12208
12209         * MODULES.html.sh: Add diffseq.
12210         * modules/diffseq: New file.
12211         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
12212         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
12213
12214 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
12215
12216         Import changes from coreutils for bootstrap script.
12217
12218         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
12219
12220         * build-aux/bootstrap (slurp): Work even in environments where
12221         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
12222         current code does not slurp files whose names start with ".", and
12223         this looks like it might be a troublesome area.
12224
12225         2007-07-11  Jim Meyering  <jim@meyering.net>
12226
12227         If there's a GPL vN copyright comment, require that N == 3.
12228
12229         2007-07-08  Jim Meyering  <jim@meyering.net>
12230
12231         Run the coreutils-specific code only if tests/Makefile.am.in exists.
12232         * build-aux/bootstrap (mam_template): Move definition out of loop.
12233
12234         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
12235
12236         * build-aux/bootstrap (symlink_to_dir): Rename function from
12237         symlink_to_gnulib.  Add a directory parameter.  Update all
12238         callers.
12239         (cp_mark_as_generated): Also check for -- and link to -- files in
12240         gl/.
12241
12242         2007-07-08  Jim Meyering  <jim@meyering.net>
12243
12244         Adapt to deeper hierarchy in gnulib.
12245         * build-aux/bootstrap (symlink_to_dir): If the destination
12246         directory doesn't exist, create it. This is required at least for
12247         "lib/uniwidth/cjk.h".
12248
12249         2007-05-15  Jim Meyering  <jim@meyering.net>
12250
12251         * build-aux/bootstrap: Now that generated Makefile.am files
12252         are no longer under version control, they must be created at
12253         bootstrap time.
12254
12255 2007-08-14  Ben Pfaff  <blp@gnu.org>
12256
12257         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
12258
12259 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
12260
12261         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
12262         given the changes below.
12263         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
12264         even on hosts that have padding bits beyond the supported 64.
12265
12266 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
12267
12268         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
12269         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
12270         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
12271         depends on it.
12272         (xstrtol_error): Remove.
12273         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
12274         but with a different signature.
12275         (ATTRIBUTE_NORETURN, __attribute__): New macros.
12276         * lib/xstrtol-error.c: Include exitfail.h.
12277         (xstrtol_fatal): New function, with a different signature from the
12278         old xstrtol_error, so that the caller need not worry about passing
12279         in an exit status, or about storage management of the option argument.
12280         (xstrtol_error): Now a static function.  Redo signature to
12281         implement xstrtol_fatal.  Output the correct number of hyphens in
12282         front of the option so that the caller need not worry about
12283         storage management.
12284         (N_): New macro.
12285         (_): Remove; not used now.
12286         * modules/xstrtol: Depend on getopt.
12287         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
12288         of old STRTOL_FATAL_ERROR macro.
12289         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
12290         of test program.
12291         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
12292         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
12293
12294 2007-08-08  Eric Blake  <ebb9@byu.net>
12295
12296         * lib/xstrtol-error.c: Add missing include.
12297
12298         Move xstrtol messages into gnulib domain, when --pobase is used.
12299         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
12300         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
12301         * modules/xstrtol (Files): Distribute new file.
12302         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
12303         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
12304         * tests/test-xstrtol.c: ...into new file.
12305         * tests/test-xstrtoul.c: Also test xstrtoul.
12306         * tests/test-xstrtoimax.c: Also test xstrtoimax.
12307         * tests/test-xstrtoumax.c: Also test xstrtoumax.
12308         * tests/test-xstrtol.sh: Drive the tests.
12309         * tests/test-xstrtoimax.sh: Likewise.
12310         * tests/test-xstrtoumax.sh: Likewise.
12311         * modules/xstrtol-tests: New module.
12312         * modules/xstrtoimax-tests: Likewise.
12313         * modules/xstrtoumax-tests: Likewise.
12314
12315 2007-08-08  Jim Meyering  <jim@meyering.net>
12316
12317         New function: mfile_name_concat.
12318         * lib/filenamecat.c (mfile_name_concat): New function, just like
12319         file_name_concat, but return NULL upon failure rather than exiting
12320         with a diagnostic.
12321         * lib/filenamecat.h: Declare it.
12322
12323 2007-08-07  Bruno Haible  <bruno@clisp.org>
12324
12325         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
12326         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
12327         warning from gcc.
12328         Reported by Eric Blake.
12329
12330 2007-08-07  Simon Josefsson  <simon@josefsson.org>
12331
12332         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
12333         * modules/crypto/arcfour (License): Likewise.
12334         * modules/crypto/des-tests (License): Likewise.
12335         * modules/crypto/gc-arctwo-tests (License): Likewise.
12336         * modules/crypto/gc-des-tests (License): Likewise.
12337         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
12338         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
12339         * modules/crypto/gc-md2-tests (License): Likewise.
12340         * modules/crypto/gc-md4-tests (License): Likewise.
12341         * modules/crypto/gc-md5-tests (License): Likewise.
12342         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
12343         * modules/crypto/gc-rijndael-tests (License): Likewise.
12344         * modules/crypto/gc-sha1-tests (License): Likewise.
12345         * modules/crypto/gc-tests (License): Likewise.
12346         * modules/crypto/hmac-md5 (License): Likewise.
12347         * modules/crypto/hmac-sha1 (License): Likewise.
12348         * modules/crypto/md2-tests (License): Likewise.
12349         * modules/crypto/md4-tests (License): Likewise.
12350         * modules/crypto/md5 (License): Likewise.
12351         * modules/crypto/rijndael (License): Likewise.
12352         * modules/crypto/sha1 (License): Likewise.
12353         * modules/memxor (License): Likewise.
12354
12355 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
12356         and Bruno Haible  <bruno@clisp.org>
12357
12358         * NEWS: Describe interface changes to human, xstrtol.
12359         * lib/human.h: Include <xstrtol.h>.
12360         (human_options): Return enum strtol_error, not int.  Remove
12361         bool arg; take int * instead.
12362         * lib/human.c: Don't include "gettext.h".
12363         (_): Remove; no longer used.
12364         Don't include <xstrtol.h>, since human.h does it.
12365         (human_options): Adjust to abovementioned interface changes.
12366         Do not report error to stderr; that's now the caller's
12367         responsibility.
12368         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
12369         interface change.
12370         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
12371         Str, Argument_type_string.  All uses changed.  Put " argument"
12372         in diagnostics to make them clearer.  Change wording of suffix
12373         message for clarity.
12374         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
12375         Argument_type_string.
12376         (STRTOL_FATAL_WARN): Remove; no longer used.
12377         * modules/human (Depends-on): Remove gettext-h.
12378
12379 2007-08-06  Simon Josefsson  <simon@josefsson.org>
12380
12381         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
12382
12383 2007-07-31  Bruno Haible  <bruno@clisp.org>
12384
12385         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
12386         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
12387         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
12388
12389 2007-07-31  Bruno Haible  <bruno@clisp.org>
12390
12391         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
12392         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
12393
12394 2007-07-30  Bruno Haible  <bruno@clisp.org>
12395
12396         * modules/base64 (License): Use the synonymous term "LGPLv2+".
12397         * modules/c-ctype (License): Likewise.
12398         * modules/c-strcase (License): Likewise.
12399         * modules/check-version (License): Likewise.
12400         * modules/iconv (License): Likewise.
12401         * modules/iconv_open (License): Likewise.
12402         * modules/read-file (License): Likewise.
12403         * modules/striconv (License): Likewise.
12404         * modules/strverscmp (License): Likewise.
12405         * modules/vasprintf (License): Likewise.
12406         * modules/crypto/des (License): Likewise.
12407         * modules/crypto/gc (License): Likewise.
12408         * modules/crypto/gc-arcfour (License): Likewise.
12409         * modules/crypto/gc-arctwo (License): Likewise.
12410         * modules/crypto/gc-des (License): Likewise.
12411         * modules/crypto/gc-hmac-md5 (License): Likewise.
12412         * modules/crypto/gc-hmac-sha1 (License): Likewise.
12413         * modules/crypto/gc-md2 (License): Likewise.
12414         * modules/crypto/gc-md4 (License): Likewise.
12415         * modules/crypto/gc-md5 (License): Likewise.
12416         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
12417         * modules/crypto/gc-random (License): Likewise.
12418         * modules/crypto/gc-rijndael (License): Likewise.
12419         * modules/crypto/gc-sha1 (License): Likewise.
12420         * modules/crypto/md2 (License): Likewise.
12421         * modules/crypto/md4 (License): Likewise.
12422
12423 2007-07-30  Jim Meyering  <jim@meyering.net>
12424
12425         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
12426         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
12427         it has valid stat data.  This bug would cause du not to count the
12428         sizes of inaccessible directories.
12429         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
12430         in <http://bugzilla.redhat.com/250077>.
12431
12432 2007-07-25  Peter O'Gorman  <peter@pogma.com>
12433             Bruno Haible  <bruno@clisp.org>
12434
12435         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
12436         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
12437         #include_next, gives a diagnostic about it, but reports no error in
12438         the exit code.
12439         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
12440
12441 2007-07-24  Ben Pfaff  <blp@gnu.org>
12442
12443         Improve name: "count-one-bits" is better than "popcount".
12444         * MODULES.html.sh: Update name.
12445         * lib/popcount.h: Renamed lib/count-one-bits.h.
12446         (popcount): Renamed count_one_bits.
12447         (popcountl): Renamed count_one_bits_l.
12448         (popcountll): Renamed count_one_bits_ll.
12449         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
12450         * modules/popcount: Renamed module/count-one-bits.
12451         * modules/popcount-tests: Renamed module/count-one-bits-tests.
12452         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
12453
12454 2007-07-23  Ben Pfaff  <blp@gnu.org>
12455
12456         * lib/popcount.h (popcount32): Reduce size of constants, to allow
12457         better code generation, and add U to large constants to avoid
12458         warnings, in non-GCC case.
12459         Suggested by Bruno Haible.
12460
12461 2007-07-23  Ben Pfaff  <blp@gnu.org>
12462
12463         * lib/popcount.h: Use verify_true instead of if...abort.
12464         * modules/popcount: Depend on verify module.
12465         Suggested by Jim Meyering.
12466
12467 2007-07-23  Bruno Haible  <bruno@clisp.org>
12468
12469         * gnulib-tool (func_import): Create a .cvsignore file also when the
12470         directory is not yet in CVS but the toplevel directory is. When
12471         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
12472         Reported by Karl Berry.
12473
12474 2007-07-22  Ben Pfaff  <blp@gnu.org>
12475
12476         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
12477         case.
12478         Suggested by Eric Blake.
12479
12480 2007-07-22  Ben Pfaff  <blp@gnu.org>
12481
12482         New module: popcount.
12483         * MODULES.html.sh: Add popcount.
12484         * modules/popcount: New file.
12485         * modules/popcount-tests: New file.
12486         * tests/test-popcount.c: New file.
12487         * lib/popcount.h: New file.
12488         * m4/popcount.m4: New file.
12489
12490 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
12491
12492         * build-aux/announce-gen: Update to GPLv3.
12493
12494         * build-aux/config.guess: Update from config.
12495
12496 2007-07-21  Bruno Haible  <bruno@clisp.org>
12497
12498         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
12499         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
12500
12501 2007-07-20  Jim Meyering  <jim@meyering.net>
12502
12503         * check-module: Diagnose a self-dependency.
12504
12505 2007-07-19  Bruno Haible  <bruno@clisp.org>
12506
12507         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
12508         empty.
12509         Reported by Eric Blake.
12510
12511 2007-07-18  Bruno Haible  <bruno@clisp.org>
12512
12513         * gnulib-tool: New options --po-base, --po-domain.
12514         (func_usage): Document them.
12515         (pobase, po_domain): New variables.
12516         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
12517         DEFAULT_TEXT_DOMAIN.
12518         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
12519         (func_import): Consider pobase and po_domain. Create a po/ directory.
12520         (func_create_testdir): Set pobase and po_domain to empty.
12521         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
12522         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
12523
12524 2007-07-18  Bruno Haible  <bruno@clisp.org>
12525
12526         * gnulib-tool (func_get_automake_snippet): Synthesize also an
12527         EXTRA_DIST augmentation for files in build-aux/.
12528
12529 2007-07-16  Bruno Haible  <bruno@clisp.org>
12530
12531         * modules/lseek (License): Use the synonymous term "LGPLv2+".
12532         * modules/getdelim (License): Likewise.
12533
12534 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12535
12536         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
12537         * modules/d-type (License): Likewise.
12538         * modules/extensions (License): Likewise.
12539         * modules/fnmatch (License): Likewise.
12540         * modules/fseeko (License): Likewise.
12541         * modules/getaddrinfo (License): Likewise.
12542         * modules/getline (License): Likewise.
12543         * modules/getlogin_r (License): Likewise.
12544         * modules/getpass (License): Likewise.
12545         * modules/gettimeofday (License): Likewise.
12546         * modules/glob (License): Likewise.
12547         * modules/inet_ntop (License): Likewise.
12548         * modules/malloc (License): Likewise.
12549         * modules/malloca (License): Likewise.
12550         * modules/memmem (License): Likewise.
12551         * modules/mempcpy (License): Likewise.
12552         * modules/memset (License): Likewise.
12553         * modules/minmax (License): Likewise.
12554         * modules/mktime (License): Likewise.
12555         * modules/netinet_in (License): Likewise.
12556         * modules/pathmax (License): Likewise.
12557         * modules/poll (License): Likewise.
12558         * modules/regex (License): Likewise.
12559         * modules/snprintf (License): Likewise.
12560         * modules/stdbool (License): Likewise.
12561         * modules/stdint (License): Likewise.
12562         * modules/stdio (License): Likewise.
12563         * modules/strcase (License): Likewise.
12564         * modules/strcasestr (License): Likewise.
12565         * modules/strdup (License): Likewise.
12566         * modules/string (License): Likewise.
12567         * modules/strndup (License): Likewise.
12568         * modules/strnlen (License): Likewise.
12569         * modules/strpbrk (License): Likewise.
12570         * modules/strptime (License): Likewise.
12571         * modules/strsep (License): Likewise.
12572         * modules/sys_select (License): Likewise.
12573         * modules/sys_socket (License): Likewise.
12574         * modules/sys_stat (License): Likewise.
12575         * modules/sys_time (License): Likewise.
12576         * modules/time (License): Likewise.
12577         * modules/time_r (License): Likewise.
12578         * modules/timegm (License): Likewise.
12579         * modules/unistd (License): Likewise.
12580         * modules/vsnprintf (License): Likewise.
12581         * modules/wctype (License): Likewise.
12582
12583 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12584
12585         * modules/argz (License): LGPLv2+.
12586
12587 2007-07-15  Karl Berry  <karl@gnu.org>
12588
12589         * doc/gnulib.texi: revise node structure per new fdl.texi.
12590
12591 2007-07-14  Bruno Haible  <bruno@clisp.org>
12592
12593         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
12594         the output file.
12595         * lib/uniname/uninames.h: Regenerated.
12596
12597 2007-07-14  Karl Berry  <karl@gnu.org>
12598
12599         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
12600         omitting sectioning and index commands.
12601
12602 2007-07-13  Bruno Haible  <bruno@clisp.org>
12603
12604         New gnulib-tool option --more-symlinks.
12605         * gnulib-tool (func_usage): Document --more-symlinks.
12606         (do_copyrights): New variable.
12607         Recognize option --more-symlinks.
12608         (func_import): Don't add a copyright notice transform to
12609         sed_transform_lib_file if do_copyrights is empty.
12610
12611 2007-07-13  Bruno Haible  <bruno@clisp.org>
12612
12613         * lib/vasnprintf.c (decimal_point_char): Define also if
12614         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
12615         && !NEED_PRINTF_DIRECTIVE_A.
12616         Reported by Clemens Koller <clemens.koller@anagramm.de> via
12617         Gary V. Vaughan <gary@gnu.org>.
12618
12619 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
12620
12621         * lib/inttypes_.h: Undo previous change, since it was fixed
12622         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
12623
12624 2007-07-13  Bruno Haible  <bruno@clisp.org>
12625
12626         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
12627         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
12628
12629 2007-07-13  Jim Meyering  <jim@meyering.net>
12630
12631         df: Don't fail for Tru64's "file-on-file mount".
12632         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
12633         so we fall through and use statfs instead.  Details here:
12634         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
12635         Reported by Albert Chin.
12636
12637 2007-07-13  Bruno Haible  <bruno@clisp.org>
12638
12639         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
12640         * modules/configmake (License): Likewise.
12641         * modules/gettext (License): Likewise.
12642         * modules/gettext-h (License): Likewise.
12643         * modules/include_next (License): Likewise.
12644         * modules/link-warning (License): Likewise.
12645         * modules/localcharset (License): Likewise.
12646         * modules/localename (License): Likewise.
12647         * modules/lock (License): Likewise.
12648         * modules/relocatable-lib-lgpl (License): Likewise.
12649         * modules/size_max (License): Likewise.
12650         * modules/vasnprintf (License): Likewise.
12651         * modules/wchar (License): Likewise.
12652         * modules/xsize (License): Likewise.
12653
12654 2007-07-13  Bruno Haible  <bruno@clisp.org>
12655
12656         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
12657         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
12658
12659 2007-07-12  Bruno Haible  <bruno@clisp.org>
12660
12661         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
12662         in the modules files.
12663
12664 2007-07-11  Karl Berry  <karl@gnu.org>
12665
12666         * MODULES.html.sh (func_module): use
12667          sed -e '\|^'"${includefile}"'$|d'
12668          instead of /.../d, to avoid errors on $includefile's containing /.
12669
12670 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
12671
12672         * gnulib-tool (func_import): Avoid duplication of --avoid
12673         statements
12674         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
12675         names to `_' in variable names.
12676
12677 2007-07-10  Eric Blake  <ebb9@byu.net>
12678
12679         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
12680         * NEWS: Document this change.
12681
12682 2007-07-08  Bruno Haible  <bruno@clisp.org>
12683
12684         Update to Unicode 5.0.
12685         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
12686         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
12687         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
12688         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
12689         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
12690         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
12691         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
12692         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
12693         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
12694         U+10A3F, U+1D242..U+1D244.
12695         (nonspacing_table_ind): Update.
12696         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
12697         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
12698
12699 2007-07-08  Bruno Haible  <bruno@clisp.org>
12700
12701         Update to Unicode 5.0.
12702         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
12703         code transform. Extend the name index field of unicode_name_to_code and
12704         unicode_code_to_name from 16 to 24 bits.
12705         * lib/uniname/uniname.c (unicode_character_name,
12706         unicode_name_character): Add the range 0x12xxx to the code transform.
12707         * lib/uniname/uninames.h: Regenerated.
12708         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
12709
12710 2007-07-07  Bruno Haible  <bruno@clisp.org>
12711
12712         * modules/wcwidth-tests: New file.
12713         * tests/test-wcwidth.c: New file.
12714
12715         Work around MacOS X wcwidth() bug.
12716         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
12717         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
12718         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
12719         original wcwidth in non-UTF-8 locales.
12720         * modules/wcwidth (Depends-on): Add localcharset, streq,
12721         uniwidth/width.
12722         * doc/functions/wcwidth.texi: Update.
12723
12724 2007-07-07  Bruno Haible  <bruno@clisp.org>
12725
12726         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
12727         (wcwidth): New declaration.
12728         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
12729         macros.
12730         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
12731         here. Prepare for creating <wchar.h> unconditionally.
12732         * modules/wchar (Depends-on): Add link-warning.
12733         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
12734         REPLACE_WCWIDTH, and GL_LINK_WARNING.
12735         * lib/wcwidth.h: Remove file.
12736         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
12737         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
12738         * modules/wcwidth (Files): Remove lib/wcwidth.h.
12739         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
12740         (Include): Replace wcwidth.h with <wchar.h>.
12741         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
12742         * lib/mbchar.h: Don't include wcwidth.h.
12743         * lib/mbswidth.c: Likewise.
12744         * NEWS: Mention the change.
12745
12746 2007-07-07  Bruno Haible  <bruno@clisp.org>
12747
12748         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
12749         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
12750         definition with an external declaration.
12751         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
12752         defined as a function. Remove AC_C_INLINE requirement.
12753         * modules/wcwidth (Files): Add lib/wcwidth.c.
12754         (Makefile.am): Remove redundant statement.
12755
12756 2007-07-07  Bruno Haible  <bruno@clisp.org>
12757
12758         * MODULES.html.sh (Unicode string functions): Add the new modules.
12759
12760         * tests/uniwidth/test-u32-strwidth.c: New file.
12761         * modules/uniwidth/u32-strwidth-tests: New file.
12762
12763         * lib/uniwidth/u32-strwidth.c: New file.
12764         * modules/uniwidth/u32-strwidth: New file.
12765
12766         * tests/uniwidth/test-u16-strwidth.c: New file.
12767         * modules/uniwidth/u16-strwidth-tests: New file.
12768
12769         * lib/uniwidth/u16-strwidth.c: New file.
12770         * modules/uniwidth/u16-strwidth: New file.
12771
12772         * tests/uniwidth/test-u8-strwidth.c: New file.
12773         * modules/uniwidth/u8-strwidth-tests: New file.
12774
12775         * lib/uniwidth/u8-strwidth.c: New file.
12776         * modules/uniwidth/u8-strwidth: New file.
12777
12778         * tests/uniwidth/test-u32-width.c: New file.
12779         * modules/uniwidth/u32-width-tests: New file.
12780
12781         * lib/uniwidth/u32-width.c: New file.
12782         * modules/uniwidth/u32-width: New file.
12783
12784         * tests/uniwidth/test-u16-width.c: New file.
12785         * modules/uniwidth/u16-width-tests: New file.
12786
12787         * lib/uniwidth/u16-width.c: New file.
12788         * modules/uniwidth/u16-width: New file.
12789
12790         * tests/uniwidth/test-u8-width.c: New file.
12791         * modules/uniwidth/u8-width-tests: New file.
12792
12793         * lib/uniwidth/u8-width.c: New file.
12794         * modules/uniwidth/u8-width: New file.
12795
12796         * tests/uniwidth/test-uc_width.c: New file.
12797         * modules/uniwidth/width-tests: New file.
12798
12799         * lib/uniwidth/width.c: New file, from GNU libiconv.
12800         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
12801         * modules/uniwidth/width: New file.
12802
12803         * lib/uniwidth.h: New file, from GNU libiconv.
12804         * modules/uniwidth/base: New file.
12805
12806 2007-07-07  Bruno Haible  <bruno@clisp.org>
12807
12808         * lib/uniname.h: New file, from GNU gettext.
12809         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
12810         * lib/uniname/uninames.h: New file, from GNU gettext.
12811         * lib/uniname/uniname.c: New file, from GNU gettext.
12812         * tests/uniname/test-uninames.sh: New file.
12813         * tests/uniname/test-uninames.c: New file, from GNU gettext.
12814         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
12815         * modules/uniname/base: New file.
12816         * modules/uniname/uniname: New file.
12817         * modules/uniname/uniname-tests: New file.
12818         * MODULES.html.sh (Unicode string functions): Add the new modules.
12819
12820 2007-07-06  Bruno Haible  <bruno@clisp.org>
12821
12822         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
12823
12824 2007-07-06  Bruno Haible  <bruno@clisp.org>
12825
12826         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
12827         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
12828         includes <cygwin/sys_time.h> which includes <sys/select.h> which
12829         include <sys/time.h>.
12830         Reported by Eric Blake.
12831
12832 2007-07-06  Eric Blake  <ebb9@byu.net>
12833
12834         Fix testing canonicalize on cygwin.
12835         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
12836         Revert patch from 2007-06-19.
12837         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
12838         canonicalize module is also in use.
12839         * tests/test-canonicalize.c: New file.
12840         * tests/test-canonicalize.sh: Likewise.
12841         * modules/canonicalize-tests: Likewise.
12842
12843 2007-07-06  Jim Meyering  <jim@meyering.net>
12844
12845         * lib/getugroups.c (getugroups): Detect getgrent failure.
12846         Adjust comment to reflect reality: this function may return -1.
12847
12848 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
12849
12850         * build-aux/bootstrap (TP_URL,get_translations): Update to use
12851         the new TP address.
12852         (usage): Fix typo
12853         (gnulib_mk): New variable.
12854
12855 2007-07-05  Jim Meyering  <jim@meyering.net>
12856
12857         Don't let endgrent clobber errno, no matter how improbable.
12858         * lib/getugroups.c (getugroups): Save and restore errno around
12859         endgrent call.
12860
12861         Close the group DB even when failing with 2^31 or more members.
12862         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
12863
12864 2007-07-04  Jim Meyering  <jim@meyering.net>
12865
12866         * lib/getugroups.h: New file.
12867         * lib/getugroups.c: Include "getugroups.h".
12868         Remove uses of "register" keyword.
12869         Move local variable, "cp", down into scope where used.
12870         Give "username" parameter the "const" attribute.
12871         * modules/getugroups (Files): Add lib/getugroups.h
12872
12873 2007-07-04  Karl Berry  <karl@gnu.org>
12874
12875         * MODULES.html.sh (func_all_modules): Complete rename of
12876         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
12877
12878 2007-07-02  Bruno Haible  <bruno@clisp.org>
12879
12880         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
12881         mode, when inttypes.h comes from gnulib.
12882         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
12883
12884 2007-07-02  Simon Josefsson  <simon@josefsson.org>
12885
12886         * NEWS: Mention lgpl module name change.
12887
12888         * modules/lgpl-2.1: Renamed from lgpl.
12889
12890         * NEWS: Mention gpl module name change.
12891
12892         * modules/gpl-3.0: New file, based on gpl-2.0.
12893
12894         * modules/gpl-2.0: Renamed from gpl.
12895
12896         * modules/gpl: Fix filename, doc/gpl.texi is now found at
12897         doc/gpl-2.0.texi.
12898
12899 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
12900
12901         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
12902         #define __STDC_LIMIT_MACROS temporarily while including
12903         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
12904         Problem reported by Joel E. Denny in
12905         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
12906
12907 2007-07-01  Bruno Haible  <bruno@clisp.org>
12908
12909         * lib/unistdio.h: New file.
12910         * lib/unistdio/u-asnprintf.h: New file.
12911         * lib/unistdio/u-asprintf.h: New file.
12912         * lib/unistdio/u-printf-args.c: New file.
12913         * lib/unistdio/u-printf-args.h: New file.
12914         * lib/unistdio/u-printf-parse.h: New file.
12915         * lib/unistdio/u-snprintf.h: New file.
12916         * lib/unistdio/u-sprintf.h: New file.
12917         * lib/unistdio/u-vasprintf.h: New file.
12918         * lib/unistdio/u-vsnprintf.h: New file.
12919         * lib/unistdio/u-vsprintf.h: New file.
12920         * lib/unistdio/ulc-asnprintf.c: New file.
12921         * lib/unistdio/ulc-asprintf.c: New file.
12922         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
12923         * lib/unistdio/ulc-printf-parse.c: New file.
12924         * lib/unistdio/ulc-snprintf.c: New file.
12925         * lib/unistdio/ulc-sprintf.c: New file.
12926         * lib/unistdio/ulc-vasnprintf.c: New file.
12927         * lib/unistdio/ulc-vasprintf.c: New file.
12928         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
12929         * lib/unistdio/ulc-vsnprintf.c: New file.
12930         * lib/unistdio/ulc-vsprintf.c: New file.
12931         * lib/unistdio/u8-asnprintf.c: New file.
12932         * lib/unistdio/u8-asprintf.c: New file.
12933         * lib/unistdio/u8-printf-parse.c: New file.
12934         * lib/unistdio/u8-snprintf.c: New file.
12935         * lib/unistdio/u8-sprintf.c: New file.
12936         * lib/unistdio/u8-vasnprintf.c: New file.
12937         * lib/unistdio/u8-vasprintf.c: New file.
12938         * lib/unistdio/u8-vsnprintf.c: New file.
12939         * lib/unistdio/u8-vsprintf.c: New file.
12940         * lib/unistdio/u8-u8-asnprintf.c: New file.
12941         * lib/unistdio/u8-u8-asprintf.c: New file.
12942         * lib/unistdio/u8-u8-snprintf.c: New file.
12943         * lib/unistdio/u8-u8-sprintf.c: New file.
12944         * lib/unistdio/u8-u8-vasnprintf.c: New file.
12945         * lib/unistdio/u8-u8-vasprintf.c: New file.
12946         * lib/unistdio/u8-u8-vsnprintf.c: New file.
12947         * lib/unistdio/u8-u8-vsprintf.c: New file.
12948         * lib/unistdio/u16-asnprintf.c: New file.
12949         * lib/unistdio/u16-asprintf.c: New file.
12950         * lib/unistdio/u16-printf-parse.c: New file.
12951         * lib/unistdio/u16-snprintf.c: New file.
12952         * lib/unistdio/u16-sprintf.c: New file.
12953         * lib/unistdio/u16-vasnprintf.c: New file.
12954         * lib/unistdio/u16-vasprintf.c: New file.
12955         * lib/unistdio/u16-vsnprintf.c: New file.
12956         * lib/unistdio/u16-vsprintf.c: New file.
12957         * lib/unistdio/u16-u16-asnprintf.c: New file.
12958         * lib/unistdio/u16-u16-asprintf.c: New file.
12959         * lib/unistdio/u16-u16-snprintf.c: New file.
12960         * lib/unistdio/u16-u16-sprintf.c: New file.
12961         * lib/unistdio/u16-u16-vasnprintf.c: New file.
12962         * lib/unistdio/u16-u16-vasprintf.c: New file.
12963         * lib/unistdio/u16-u16-vsnprintf.c: New file.
12964         * lib/unistdio/u16-u16-vsprintf.c: New file.
12965         * lib/unistdio/u32-asnprintf.c: New file.
12966         * lib/unistdio/u32-asprintf.c: New file.
12967         * lib/unistdio/u32-printf-parse.c: New file.
12968         * lib/unistdio/u32-snprintf.c: New file.
12969         * lib/unistdio/u32-sprintf.c: New file.
12970         * lib/unistdio/u32-vasnprintf.c: New file.
12971         * lib/unistdio/u32-vasprintf.c: New file.
12972         * lib/unistdio/u32-vsnprintf.c: New file.
12973         * lib/unistdio/u32-vsprintf.c: New file.
12974         * lib/unistdio/u32-u32-asnprintf.c: New file.
12975         * lib/unistdio/u32-u32-asprintf.c: New file.
12976         * lib/unistdio/u32-u32-snprintf.c: New file.
12977         * lib/unistdio/u32-u32-sprintf.c: New file.
12978         * lib/unistdio/u32-u32-vasnprintf.c: New file.
12979         * lib/unistdio/u32-u32-vasprintf.c: New file.
12980         * lib/unistdio/u32-u32-vsnprintf.c: New file.
12981         * lib/unistdio/u32-u32-vsprintf.c: New file.
12982         * tests/unistdio/test-ulc-asnprintf1.c: New file.
12983         * tests/unistdio/test-ulc-asnprintf1.h: New file.
12984         * tests/unistdio/test-ulc-printf1.h: New file.
12985         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
12986         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
12987         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
12988         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
12989         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
12990         * tests/unistdio/test-ulc-vasprintf1.c: New file.
12991         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
12992         * tests/unistdio/test-ulc-vsprintf1.c: New file.
12993         * tests/unistdio/test-u8-asnprintf1.c: New file.
12994         * tests/unistdio/test-u8-asnprintf1.h: New file.
12995         * tests/unistdio/test-u8-printf1.h: New file.
12996         * tests/unistdio/test-u8-vasnprintf1.c: New file.
12997         * tests/unistdio/test-u8-vasnprintf2.c: New file.
12998         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
12999         * tests/unistdio/test-u8-vasnprintf3.c: New file.
13000         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
13001         * tests/unistdio/test-u8-vasprintf1.c: New file.
13002         * tests/unistdio/test-u8-vsnprintf1.c: New file.
13003         * tests/unistdio/test-u8-vsprintf1.c: New file.
13004         * tests/unistdio/test-u16-asnprintf1.c: New file.
13005         * tests/unistdio/test-u16-asnprintf1.h: New file.
13006         * tests/unistdio/test-u16-printf1.h: New file.
13007         * tests/unistdio/test-u16-vasnprintf1.c: New file.
13008         * tests/unistdio/test-u16-vasnprintf2.c: New file.
13009         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
13010         * tests/unistdio/test-u16-vasnprintf3.c: New file.
13011         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
13012         * tests/unistdio/test-u16-vasprintf1.c: New file.
13013         * tests/unistdio/test-u16-vsnprintf1.c: New file.
13014         * tests/unistdio/test-u16-vsprintf1.c: New file.
13015         * tests/unistdio/test-u32-asnprintf1.c: New file.
13016         * tests/unistdio/test-u32-asnprintf1.h: New file.
13017         * tests/unistdio/test-u32-printf1.h: New file.
13018         * tests/unistdio/test-u32-vasnprintf1.c: New file.
13019         * tests/unistdio/test-u32-vasnprintf2.c: New file.
13020         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
13021         * tests/unistdio/test-u32-vasnprintf3.c: New file.
13022         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
13023         * tests/unistdio/test-u32-vasprintf1.c: New file.
13024         * tests/unistdio/test-u32-vsnprintf1.c: New file.
13025         * tests/unistdio/test-u32-vsprintf1.c: New file.
13026         * modules/unistdio/base: New file.
13027         * modules/unistdio/u-printf-args: New file.
13028         * modules/unistdio/ulc-asnprintf: New file.
13029         * modules/unistdio/ulc-asprintf: New file.
13030         * modules/unistdio/ulc-fprintf: New file.
13031         * modules/unistdio/ulc-printf-parse: New file.
13032         * modules/unistdio/ulc-snprintf: New file.
13033         * modules/unistdio/ulc-sprintf: New file.
13034         * modules/unistdio/ulc-vasnprintf: New file.
13035         * modules/unistdio/ulc-vasprintf: New file.
13036         * modules/unistdio/ulc-vfprintf: New file.
13037         * modules/unistdio/ulc-vsnprintf: New file.
13038         * modules/unistdio/ulc-vsprintf: New file.
13039         * modules/unistdio/u8-asnprintf: New file.
13040         * modules/unistdio/u8-asprintf: New file.
13041         * modules/unistdio/u8-printf-parse: New file.
13042         * modules/unistdio/u8-snprintf: New file.
13043         * modules/unistdio/u8-sprintf: New file.
13044         * modules/unistdio/u8-vasnprintf: New file.
13045         * modules/unistdio/u8-vasprintf: New file.
13046         * modules/unistdio/u8-vsnprintf: New file.
13047         * modules/unistdio/u8-vsprintf: New file.
13048         * modules/unistdio/u8-u8-asnprintf: New file.
13049         * modules/unistdio/u8-u8-asprintf: New file.
13050         * modules/unistdio/u8-u8-snprintf: New file.
13051         * modules/unistdio/u8-u8-sprintf: New file.
13052         * modules/unistdio/u8-u8-vasnprintf: New file.
13053         * modules/unistdio/u8-u8-vasprintf: New file.
13054         * modules/unistdio/u8-u8-vsnprintf: New file.
13055         * modules/unistdio/u8-u8-vsprintf: New file.
13056         * modules/unistdio/u16-asnprintf: New file.
13057         * modules/unistdio/u16-asprintf: New file.
13058         * modules/unistdio/u16-printf-parse: New file.
13059         * modules/unistdio/u16-snprintf: New file.
13060         * modules/unistdio/u16-sprintf: New file.
13061         * modules/unistdio/u16-vasnprintf: New file.
13062         * modules/unistdio/u16-vasprintf: New file.
13063         * modules/unistdio/u16-vsnprintf: New file.
13064         * modules/unistdio/u16-vsprintf: New file.
13065         * modules/unistdio/u16-u16-asnprintf: New file.
13066         * modules/unistdio/u16-u16-asprintf: New file.
13067         * modules/unistdio/u16-u16-snprintf: New file.
13068         * modules/unistdio/u16-u16-sprintf: New file.
13069         * modules/unistdio/u16-u16-vasnprintf: New file.
13070         * modules/unistdio/u16-u16-vasprintf: New file.
13071         * modules/unistdio/u16-u16-vsnprintf: New file.
13072         * modules/unistdio/u16-u16-vsprintf: New file.
13073         * modules/unistdio/u32-asnprintf: New file.
13074         * modules/unistdio/u32-asprintf: New file.
13075         * modules/unistdio/u32-printf-parse: New file.
13076         * modules/unistdio/u32-snprintf: New file.
13077         * modules/unistdio/u32-sprintf: New file.
13078         * modules/unistdio/u32-vasnprintf: New file.
13079         * modules/unistdio/u32-vasprintf: New file.
13080         * modules/unistdio/u32-vsnprintf: New file.
13081         * modules/unistdio/u32-vsprintf: New file.
13082         * modules/unistdio/u32-u32-asnprintf: New file.
13083         * modules/unistdio/u32-u32-asprintf: New file.
13084         * modules/unistdio/u32-u32-snprintf: New file.
13085         * modules/unistdio/u32-u32-sprintf: New file.
13086         * modules/unistdio/u32-u32-vasnprintf: New file.
13087         * modules/unistdio/u32-u32-vasprintf: New file.
13088         * modules/unistdio/u32-u32-vsnprintf: New file.
13089         * modules/unistdio/u32-u32-vsprintf: New file.
13090         * modules/unistdio/ulc-asnprintf-tests: New file.
13091         * modules/unistdio/ulc-vasnprintf-tests: New file.
13092         * modules/unistdio/ulc-vasprintf-tests: New file.
13093         * modules/unistdio/ulc-vsnprintf-tests: New file.
13094         * modules/unistdio/ulc-vsprintf-tests: New file.
13095         * modules/unistdio/u8-asnprintf-tests: New file.
13096         * modules/unistdio/u8-vasnprintf-tests: New file.
13097         * modules/unistdio/u8-vasprintf-tests: New file.
13098         * modules/unistdio/u8-vsnprintf-tests: New file.
13099         * modules/unistdio/u8-vsprintf-tests: New file.
13100         * modules/unistdio/u16-asnprintf-tests: New file.
13101         * modules/unistdio/u16-vasnprintf-tests: New file.
13102         * modules/unistdio/u16-vasprintf-tests: New file.
13103         * modules/unistdio/u16-vsnprintf-tests: New file.
13104         * modules/unistdio/u16-vsprintf-tests: New file.
13105         * modules/unistdio/u32-asnprintf-tests: New file.
13106         * modules/unistdio/u32-vasnprintf-tests: New file.
13107         * modules/unistdio/u32-vasprintf-tests: New file.
13108         * modules/unistdio/u32-vsnprintf-tests: New file.
13109         * modules/unistdio/u32-vsprintf-tests: New file.
13110         * MODULES.html.sh (Unicode string functions): Add the new modules.
13111
13112 2007-07-01  Bruno Haible  <bruno@clisp.org>
13113
13114         * lib/sprintf.c (sprintf): Limit the available length estimation,
13115         to avoid address wraparound.
13116         * lib/vsprintf.c (vsprintf): Likewise.
13117         * modules/sprintf-posix (Dependencies): Add stdint.
13118         * modules/vsprintf-posix (Dependencies): Likewise.
13119
13120 2007-07-01  Bruno Haible  <bruno@clisp.org>
13121
13122         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
13123         Windows PATH as well. Conservative double-quoting. Comments.
13124
13125 2007-07-01  Bruno Haible  <bruno@clisp.org>
13126             Eric Blake  <ebb9@byu.net>
13127             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13128
13129         * gnulib-tool (self_abspathname): Fix algorithm to cope with
13130         empty components in $PATH, denoting '.'.
13131
13132 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13133
13134         * gnulib-tool: Fix indentation.
13135         (func_create_megatestdir): Likewise.
13136         Report by Bruno Haible.
13137
13138 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13139
13140         Sync from Automake.
13141         * build-aux/gnupload: Fix shell portability issues with for loops.
13142         Report by Karl Berry.
13143
13144 2007-06-29  Simon Josefsson  <simon@josefsson.org>
13145
13146         * build-aux/maint.mk (POURL): Use translationproject.org.
13147
13148 2007-06-27  Simon Josefsson  <simon@josefsson.org>
13149             Bruno Haible  <bruno@clisp.org>
13150
13151         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
13152         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
13153         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
13154         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
13155         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
13156
13157 2007-06-27  Bruno Haible  <bruno@clisp.org>
13158
13159         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
13160         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
13161
13162 2007-06-26  Karl Berry  <karl@gnu.org>
13163
13164         * MODULES.html.sh: remove xreadlink-with-size.
13165
13166 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
13167
13168         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
13169         method that I hope also handles the double-include problem noted
13170         by Bruno Haible in
13171         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
13172
13173 2007-06-23  Bruno Haible  <bruno@clisp.org>
13174
13175         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13176         Don't let the 'mostlyclean' target fail if the last subdirectory could
13177         not be removed.
13178         Reported by Karl Berry.
13179
13180 2007-06-23  Bruno Haible  <bruno@clisp.org>
13181
13182         * gnulib-tool (echo): Add a speedier workaround for ksh.
13183         * tests/test-echo.sh: Likewise.
13184
13185 2007-06-23  Bruno Haible  <bruno@clisp.org>
13186
13187         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
13188         * tests/test-echo.sh: Likewise.
13189
13190 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13191
13192         * gnulib-tool (IFS): Initialize early, so we don't set it to
13193         empty later.
13194         (self_abspathname): Rewrite algorithm to set it, reindent.
13195         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
13196         (func_create_megatestdir): Merge some sed scripts.
13197
13198 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
13199
13200         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
13201         exposed by Sun Studio 11 cc on Solaris 8.
13202
13203 2007-06-22  Bruno Haible  <bruno@clisp.org>
13204
13205         * gnulib-tool (echo): Ensure the echo primitive does not interpret
13206         backslashes.
13207         * tests/test-echo.sh: New file.
13208
13209 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13210
13211         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
13212         simplify `sed_replace_build_aux' scripts, they are portable but
13213         echoing them with `echo' is not.
13214         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
13215
13216 2007-06-21  Karl Berry  <karl@gnu.org>
13217
13218         * config/srclist.txt: guess we can't handle the licenses via
13219         srclist at the moment.
13220
13221 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
13222
13223         * MODULES.html.sh: Add include_next.
13224         * modules/include_next: New file.
13225
13226 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
13227
13228         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
13229         INCLUDE_NEXT.
13230         (gl_CHECK_NEXT_HEADERS): New macro.
13231         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
13232         the obsolescent gl_ABSOLUTE_HEADER.
13233         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
13234         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
13235         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
13236         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
13237         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
13238         * m4/math_h.m4 (gl_MATH_H): Likewise.
13239         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
13240         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
13241         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
13242         * m4/stdint.m4 (gl_STDINT_H): Likewise.
13243         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
13244         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
13245         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
13246         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
13247         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
13248         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
13249         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
13250         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
13251         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
13252         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
13253         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
13254         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
13255         * m4/inttypes.m4 (gl_INTTYPES_H): Define
13256         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
13257         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
13258         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
13259         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
13260         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
13261         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
13262         * lib/float_.h: Likewise.
13263         * lib/inttypes_.h: Likewise.
13264         * lib/math_.h: Likewise.
13265         * lib/search_.h: Likewise.
13266         * lib/signal_.h: Likewise.
13267         * lib/stdint_.h: Likewise.
13268         * lib/stdio_.h: Likewise.
13269         * lib/stdlib_.h: Likewise.
13270         * lib/string_.h: Likewise.
13271         * lib/sys_stat_.h: Likewise.
13272         * lib/sys_time_.h: Likewise.
13273         * lib/time_.h: Likewise.
13274         * lib/unistd_.h: Likewise.
13275         * lib/wchar_.h: Likewise.
13276         * lib/wctype_.h: Likewise.
13277         * lib/dirent_.h: Likewise.
13278         * lib/iconv_.h: Likewise.
13279         * lib/locale_.h: Likewise.
13280         * lib/netinet_in_.h: Likewise.
13281         * lib/sys_select_.h: Likewise.
13282         * lib/sys_socket_.h: Likewise.
13283         * lib/sysexits_.h: Likewise.
13284         * modules/fcntl (Depends-on): Depend on include_next, not
13285         absolute_header.
13286         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
13287         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
13288         * modules/fchdir: Likewise.
13289         * modules/float: Likewise.
13290         * modules/iconv_open: Likewise.
13291         * modules/inttypes: Likewise.
13292         * modules/locale: Likewise.
13293         * modules/math: Likewise.
13294         * modules/netinet_in: Likewise.
13295         * modules/search: Likewise.
13296         * modules/signal: Likewise.
13297         * modules/stdint: Likewise.
13298         * modules/stdio: Likewise.
13299         * modules/stdlib: Likewise.
13300         * modules/string: Likewise.
13301         * modules/sys_select: Likewise.
13302         * modules/sys_socket: Likewise.
13303         * modules/sys_stat: Likewise.
13304         * modules/sys_time: Likewise.
13305         * modules/sysexits: Likewise.
13306         * modules/time: Likewise.
13307         * modules/unistd: Likewise.
13308         * modules/wchar: Likewise.
13309         * modules/wctype: Likewise.
13310         * modules/sys_stat: Change maintainer to "all".
13311         * modules/unistd: Likewise.
13312
13313 2007-06-20  Karl Berry  <karl@gnu.org>
13314
13315         * config/srclist.txt: track www changes in license files.
13316
13317 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
13318
13319         * build-aux/bootstrap: Remove stray dot.
13320         Make sure build_aux settings are honored when linking
13321         gnulib_extra_files.
13322
13323 2007-06-19  Eric Blake  <ebb9@byu.net>
13324
13325         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
13326         Allow compilation on cygwin.
13327
13328 2007-06-19  Jim Meyering  <jim@meyering.net>
13329
13330         xreadlink-with-size: Remove module.  No longer used.
13331         Ex-callers now use xreadlink or mreadlink-with-size.
13332         * modules/xreadlink-with-size: Remove module.
13333         * lib/xreadlink-with-size.c: Remove file.
13334         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
13335         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
13336         just before the function definition *is* accurate.
13337
13338         Eliminate one way canonicalize_filename_mode could exit.
13339         * lib/canonicalize.c (canonicalize_filename_mode):
13340         Use mreadlink_with_size, not xreadlink_with_size.
13341
13342 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
13343
13344         Detect porting problems to FreeBSD/arm, which has time_t wider than
13345         long int.  Original problem reported for GNU diff by Xin Li in
13346         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
13347         * modules/getdate (Depends-on): Add intprops, verify.
13348         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
13349         is an integer type no wider than long int.
13350
13351 2007-06-18  Jim Meyering  <jim@meyering.net>
13352
13353         New module: mreadlink-with-size.
13354         * MODULES.html.sh: Add mreadlink-with-size.
13355         * modules/mreadlink-with-size: New module
13356         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
13357         not xreadlink-with-size.
13358         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
13359
13360 2007-06-16  Bruno Haible  <bruno@clisp.org>
13361
13362         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
13363         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
13364         Reported by Gary V. Vaughan <gary@gnu.org>.
13365
13366 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
13367
13368         Revamp lchown so that it lives in unistd.h where it belongs.
13369         * lib/lchown.h: Remove.
13370         * lib/dirchownmod.c: Don't include lib/lchown.h.
13371         * lib/fchownat.c: Likewise.
13372         * lib/openat.c: Likewise.
13373         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
13374         does not follow symlinks.
13375         (EOPNOTSUPP): Define if not defined.
13376         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
13377         is defined to 0.
13378         (lchown): New decl.
13379         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
13380         Do not check for lchown decl.
13381         Set REPLACE_LCHOWN.
13382         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
13383         REPLACE_LCHOWN.
13384         * modules/chown: Make it clear it follows symlinks.
13385         * modules/lchown: Make it clear it doesn't follow symlinks.
13386         (Files): Remove lib/lchown.h
13387         (Depends-on): Add unistd.
13388         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
13389         (Include): Include <unistd.h>, not "lchown.h".
13390         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
13391         REPLACE_LCHOWN.
13392
13393 2007-06-15  Jim Meyering  <jim@meyering.net>
13394
13395         Change license (GPL to LGPL) of fsusage and dependents.
13396         * modules/fsusage (License): Change to LGPL.
13397         * modules/full-read (License): Likewise.
13398         * modules/full-write (License): Likewise.
13399         * modules/safe-read (License): Likewise.
13400         * modules/safe-write (License): Likewise.
13401
13402 2007-06-14  Ben Pfaff  <blp@gnu.org>
13403
13404         Missing part of allocsa -> malloca transition.
13405         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
13406         gl_MALLOCA.
13407
13408 2007-06-12  Bruno Haible  <bruno@clisp.org>
13409
13410         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
13411         to ia64, x86_64, i386.
13412         Reported by Eric Blake.
13413
13414 2007-06-12  Bruno Haible  <bruno@clisp.org>
13415
13416         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
13417         cross-compiling to x86_64.
13418
13419 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
13420
13421         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
13422         glitch reported by Ralf Wildenhues in
13423         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
13424
13425         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
13426         Vin Shelton.
13427
13428 2007-06-11  Bruno Haible  <bruno@clisp.org>
13429
13430         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
13431         replacement string.
13432         Reported by Eric Blake.
13433
13434 2007-06-10  Bruno Haible  <bruno@clisp.org>
13435
13436         Prepare vasnprintf code for use with Unicode strings.
13437         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
13438         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
13439         TYPE_U32_STRING.
13440         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
13441         a_u32_string variants.
13442         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
13443         * lib/printf-args.c: Don't include config.h and the specification
13444         header if PRINTF_FETCHARGS is already defined.
13445         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
13446         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
13447         TYPE_U16_STRING, TYPE_U32_STRING.
13448         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
13449         u16_directive, u16_directives, u32_directive, u32_directives): New
13450         types.
13451         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
13452         New declarations.
13453         * lib/printf-parse.c: Don't include config.h and the specification
13454         header if PRINTF_PARSE is already defined. Eliminate the set of
13455         parameters for WIDE_CHAR_VERSION; the user of this file must provide
13456         them now. Include c-ctype.h.
13457         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
13458         directive and CHAR_T_ONLY_ASCII.
13459         * lib/vasnprintf.c: Don't include config.h and the specification header
13460         if VASNPRINTF is already defined.
13461         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
13462         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
13463         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
13464         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
13465         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
13466         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
13467         code accordingly.
13468         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
13469         pad_ourselves also in this case, with the 'c' and 's' directives, and
13470         with a different notion of "width".
13471         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
13472
13473 2007-06-10  Bruno Haible  <bruno@clisp.org>
13474
13475         * modules/unistr/u32-mbsnlen: New file.
13476         * lib/unistr/u32-mbsnlen.c: New file.
13477
13478         * modules/unistr/u16-mbsnlen: New file.
13479         * lib/unistr/u16-mbsnlen.c: New file.
13480
13481         * modules/unistr/u8-mbsnlen: New file.
13482         * lib/unistr/u8-mbsnlen.c: New file.
13483
13484         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
13485         declarations.
13486
13487 2007-06-10  Bruno Haible  <bruno@clisp.org>
13488
13489         * lib/string_.h (mbsnlen): New declaration.
13490         * lib/mbsnlen.c: New file.
13491         * m4/mbsnlen.m4: New file.
13492         * modules/mbsnlen: New file.
13493         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
13494         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
13495         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
13496
13497 2007-06-10  Bruno Haible  <bruno@clisp.org>
13498
13499         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
13500
13501 2007-06-10  Bruno Haible  <bruno@clisp.org>
13502
13503         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
13504         * lib/mbuiter.h: Likewise.
13505
13506 2007-06-10  Bruno Haible  <bruno@clisp.org>
13507
13508         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
13509         declaration.
13510
13511 2007-06-10  Karl Berry  <karl@gnu.org>
13512
13513         * config/srclist.txt: remove gettext entries, Bruno prefers
13514         to update individually.
13515
13516 2007-06-10  Bruno Haible  <bruno@clisp.org>
13517
13518         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
13519         'maxlen'. Ensure only length + width bytes are allocated, not
13520         length + 1 + width.
13521
13522 2007-06-09  Bruno Haible  <bruno@clisp.org>
13523
13524         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
13525         (CHAR_T): Remove macro.
13526         (VASNPRINTF): Update.
13527
13528 2007-06-09  Bruno Haible  <bruno@clisp.org>
13529
13530         * MODULES.html.sh (Unicode string functions): Add the new modules.
13531
13532         * modules/uniconv/u32-conv-to-enc: New file.
13533         * lib/uniconv/u32-conv-to-enc.c: New file.
13534         * modules/uniconv/u32-conv-to-enc-tests: New file.
13535         * tests/uniconv/test-u32-conv-to-enc.c: New file.
13536
13537         * modules/uniconv/u16-conv-to-enc: New file.
13538         * lib/uniconv/u16-conv-to-enc.c: New file.
13539         * lib/uniconv/u-conv-to-enc.h: New file.
13540         * modules/uniconv/u16-conv-to-enc-tests: New file.
13541         * tests/uniconv/test-u16-conv-to-enc.c: New file.
13542
13543         * modules/uniconv/u8-conv-to-enc: New file.
13544         * lib/uniconv/u8-conv-to-enc.c: New file.
13545         * modules/uniconv/u8-conv-to-enc-tests: New file.
13546         * tests/uniconv/test-u8-conv-to-enc.c: New file.
13547
13548         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
13549         u32_conv_to_encoding): New declarations.
13550
13551 2007-06-09  Bruno Haible  <bruno@clisp.org>
13552
13553         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
13554
13555 2007-06-09  Bruno Haible  <bruno@clisp.org>
13556
13557         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
13558         * modules/malloca: Renamed from modules/allocsa, updated.
13559         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
13560         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
13561         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
13562         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
13563         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
13564         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
13565         * modules/xmalloca: Renamed from modules/xallocsa, updated.
13566         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
13567         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
13568         * modules/c-strcasestr (Depends-on): Update.
13569         * lib/c-strcasestr.c: Update.
13570         * modules/c-strstr (Depends-on): Update.
13571         * lib/c-strstr.c: Update.
13572         * modules/canonicalize-lgpl (Depends-on): Update.
13573         * lib/canonicalize-lgpl.c: Update.
13574         * modules/clean-temp (Depends-on): Update.
13575         * lib/clean-temp.c: Update.
13576         * modules/csharpcomp (Depends-on): Update.
13577         * lib/csharpcomp.c: Update.
13578         * modules/csharpexec (Depends-on): Update.
13579         * lib/csharpexec.c: Update.
13580         * modules/javacomp (Depends-on): Update.
13581         * lib/javacomp.c: Update.
13582         * modules/javaexec (Depends-on): Update.
13583         * lib/javaexec.c: Update.
13584         * modules/mbscasestr (Depends-on): Update.
13585         * lib/mbscasestr.c: Update.
13586         * modules/mbsstr (Depends-on): Update.
13587         * lib/mbsstr.c: Update.
13588         * modules/setenv (Depends-on): Update.
13589         * lib/setenv.c: Update.
13590         * modules/strcasestr (Depends-on): Update.
13591         * lib/strcasestr.c: Update.
13592         * modules/striconveha (Depends-on): Update.
13593         * lib/striconveha.c: Update.
13594         * modules/relocatable-prog-wrapper (Files): Update.
13595         * lib/relocwrapper.c: Update.
13596         * build-aux/install-reloc: Update.
13597         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
13598
13599 2007-06-08  Bruno Haible  <bruno@clisp.org>
13600
13601         Port to uClibc.
13602         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
13603         * lib/fpurge.c (fpurge): Likewise.
13604         * lib/freading.c (freading): Likewise.
13605         * lib/fseeko.c (rpl_fseeko): Likewise.
13606         * lib/fseterr.c (fseterr): Likewise.
13607         * lib/fwriting.c (fwriting): Likewise.
13608         * tests/test-fflush.c (main): Avoid a failure on uClibc.
13609
13610 2007-06-08  Bruno Haible  <bruno@clisp.org>
13611
13612         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
13613         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
13614         * modules/gettext (Files): Add m4/intlmacosx.m4.
13615
13616 2007-06-07  Bruno Haible  <bruno@clisp.org>
13617
13618         * modules/localename-tests: New file.
13619         * tests/test-localename.c: New file.
13620
13621         New module 'localename'.
13622         * lib/localename.h: New file.
13623         * lib/localename.c: New file, from GNU gettext.
13624         * m4/localename.m4: New file.
13625         * modules/localename: New file.
13626
13627 2007-06-07  Bruno Haible  <bruno@clisp.org>
13628
13629         Work around the lack of <wchar.h> on some builds of uClibc.
13630         * doc/headers/wchar.texi: Update.
13631         * lib/wchar_.h: Include <wchar.h> only if it exists.
13632         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
13633         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
13634         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
13635         doesn't exist.
13636         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
13637         * modules/mbfile (Depends-on): Add wchar.
13638         * modules/mbiter (Depends-on): Likewise.
13639         * modules/mbuiter (Depends-on): Likewise.
13640         Reported by Simon Josefsson.
13641
13642 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
13643
13644         Work around problem reported by Steven M. Schweda in
13645         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
13646         Tru64 5.1B with the Compaq compiler environment installed declares
13647         an 'isblank' function but does not define it in the C library.
13648         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
13649         * lib/regex_internal.h (isblank): Likewise.
13650         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
13651         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
13652
13653 2007-06-05  Bruno Haible  <bruno@clisp.org>
13654
13655         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
13656         ia64.
13657         * modules/printf-safe: New file.
13658         * modules/fprintf-posix (Depends-on): Add printf-safe.
13659         * modules/printf-posix (Depends-on): Likewise.
13660         * modules/snprintf-posix (Depends-on): Likewise.
13661         * modules/sprintf-posix (Depends-on): Likewise.
13662         * modules/vasnprintf-posix (Depends-on): Likewise.
13663         * modules/vasprintf-posix (Depends-on): Likewise.
13664         * modules/vfprintf-posix (Depends-on): Likewise.
13665         * modules/vprintf-posix (Depends-on): Likewise.
13666         * modules/vsnprintf-posix (Depends-on): Likewise.
13667         * modules/vsprintf-posix (Depends-on): Likewise.
13668         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
13669         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
13670         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
13671         "no" on i386, x86_64, ia64.
13672         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
13673         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
13674         on i386, x86_64, ia64.
13675         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
13676         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
13677         on i386, x86_64, ia64.
13678         * tests/test-vasnprintf-posix.c: Include float.h.
13679         (LDBL80_WORDS): New macro.
13680         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
13681         on i386, x86_64, ia64.
13682         * tests/test-vasprintf-posix.c: Include float.h.
13683         (LDBL80_WORDS): New macro.
13684         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
13685         on i386, x86_64, ia64.
13686         * tests/test-snprintf-posix.c: Include float.h.
13687         * tests/test-sprintf-posix.c: Likewise.
13688         * tests/test-vsnprintf-posix.c: Likewise.
13689         * tests/test-vsprintf-posix.c: Likewise.
13690
13691 2007-06-05  Bruno Haible  <bruno@clisp.org>
13692
13693         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
13694         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
13695         non-IEEE numbers on i386, x86_64, ia64.
13696         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
13697         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
13698         * tests/test-isnanl.h: Include float.h.
13699         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
13700
13701 2007-06-05  Bruno Haible  <bruno@clisp.org>
13702
13703         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
13704         also the %a / %A. Handle the %a / %A code before this extra handling.
13705
13706 2007-06-05  Bruno Haible  <bruno@clisp.org>
13707
13708         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
13709         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
13710
13711 2007-06-05  Bruno Haible  <bruno@clisp.org>
13712
13713         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
13714         typo in variable name.
13715
13716 2007-06-05  Eric Blake  <ebb9@byu.net>
13717
13718         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
13719         Reported by Simon Josefsson.
13720
13721 2007-06-04  Bruno Haible  <bruno@clisp.org>
13722
13723         Avoid test failures on some PowerPC platforms.
13724         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
13725         Define differently for PowerPC.
13726         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
13727         Reported by Gary V. Vaughan <gary@gnu.org>.
13728
13729 2007-06-02  Bruno Haible  <bruno@clisp.org>
13730
13731         Fix test-stdint failure on FreeBSD/ia64.
13732         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
13733         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
13734         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
13735         * doc/headers/stdint.texi: Update.
13736
13737 2007-06-01  Bruno Haible  <bruno@clisp.org>
13738
13739         * tests/test-binary-io.c (main): Pass a third argument to open().
13740         Reported by Gary V. Vaughan <gary@gnu.org>.
13741
13742 2007-06-01  Bruno Haible  <bruno@clisp.org>
13743
13744         * doc/functions/frexpl.texi: Update for mingw.
13745
13746 2007-06-01  Bruno Haible  <bruno@clisp.org>
13747
13748         * tests/test-lseek.c (main): Disable test of errno for invalid third
13749         argument.
13750         * doc/functions/lseek.texi: Update.
13751         Reported by Gary V. Vaughan <gary@gnu.org>.
13752
13753 2007-05-28  Bruno Haible  <bruno@clisp.org>
13754
13755         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
13756
13757 2007-05-31  Eric Blake  <ebb9@byu.net>
13758
13759         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
13760         cross compiling.
13761
13762 2007-05-30  Eric Blake  <ebb9@byu.net>
13763         and Bruno Haible  <bruno@clisp.org>
13764
13765         Work around mingw test failures exposed by m4-1.4.9b.
13766         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
13767         * tests/test-unistd.c: Disable uid_t and git_t tests for the
13768         moment.
13769
13770 2007-05-30  Bruno Haible  <bruno@clisp.org>
13771
13772         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
13773         assuming that they are closed. Needed on HP-UX 11.
13774
13775 2007-05-29  Bruno Haible  <bruno@clisp.org>
13776
13777         Fix a problem with #include_next.
13778         * lib/dirent_.h: Split the double-inclusion guard.
13779         * lib/fcntl_.h: Likewise.
13780         * lib/float_.h: Likewise.
13781         * lib/iconv_.h: Likewise.
13782         * lib/inttypes_.h: Likewise.
13783         * lib/locale_.h: Likewise.
13784         * lib/math_.h: Likewise.
13785         * lib/netinet_in_.h: Likewise.
13786         * lib/search_.h: Likewise.
13787         * lib/signal_.h: Likewise.
13788         * lib/stdint_.h: Likewise.
13789         * lib/stdio_.h: Likewise.
13790         * lib/stdlib_.h: Likewise.
13791         * lib/string_.h: Likewise.
13792         * lib/sys_select_.h: Likewise.
13793         * lib/sys_socket_.h: Likewise.
13794         * lib/sys_stat_.h: Likewise.
13795         * lib/sys_time_.h: Likewise.
13796         * lib/sysexits_.h: Likewise.
13797         * lib/time_.h: Likewise.
13798         * lib/unistd_.h: Likewise.
13799         * lib/wchar_.h: Likewise.
13800         * lib/wctype_.h: Likewise.
13801
13802 2007-05-29  Bruno Haible  <bruno@clisp.org>
13803
13804         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
13805         for the moment.
13806
13807 2007-05-29  Bruno Haible  <bruno@clisp.org>
13808
13809         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
13810         invocation.
13811         Reported by Eric Blake.
13812
13813 2007-05-29  Bruno Haible  <bruno@clisp.org>
13814
13815         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
13816         compiling case.
13817
13818 2007-05-29  Eric Blake  <ebb9@byu.net>
13819             Bruno Haible  <bruno@clisp.org>
13820
13821         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
13822         cross compiles.
13823
13824 2007-05-28  Eric Blake  <ebb9@byu.net>
13825
13826         * modules/closein-tests (test_closein_LDADD): Support test on
13827         cygwin with libtool.
13828
13829 2007-05-28  Bruno Haible  <bruno@clisp.org>
13830
13831         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
13832         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
13833         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
13834         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
13835         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
13836         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
13837         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
13838         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
13839         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
13840
13841 2007-05-28  Eric Blake  <ebb9@byu.net>
13842
13843         Unconditionally include <config.h> in unit tests.
13844         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
13845         * tests/test-allocsa.c, tests/test-arcfour.c,
13846         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
13847         tests/test-array_list.c, tests/test-array_oset.c,
13848         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
13849         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
13850         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
13851         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
13852         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
13853         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
13854         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
13855         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
13856         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
13857         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
13858         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
13859         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
13860         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
13861         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
13862         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
13863         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
13864         test-md5.c, test-memmem.c, test-printf-posix.c,
13865         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
13866         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
13867         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
13868         test-strcasestr.c, test-striconv.c, test-striconveh.c,
13869         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
13870         test-vasnprintf-posix2.c, test-vasnprintf.c,
13871         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
13872         test-vfprintf-posix.c, test-vprintf-posix.c,
13873         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
13874         test-xvasprintf.c: Likewise.
13875
13876 2007-05-28  Bruno Haible  <bruno@clisp.org>
13877
13878         * gnulib-tool (func_import): Remember the --with-tests command-line
13879         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
13880         Reported by Eric Blake.
13881
13882 2007-05-28  Bruno Haible  <bruno@clisp.org>
13883
13884         * modules/ftell-tests: New file.
13885         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
13886         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
13887
13888         * lib/ftell.c: New file.
13889         * modules/ftell: New file.
13890         * m4/ftell.m4: New file.
13891         * doc/functions/ftell.texi: Update.
13892         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
13893         REPLACE_FTELL.
13894         * lib/stdio_.h (rpl_ftell): New declaration.
13895         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
13896         REPLACE_FTELL.
13897
13898 2007-05-28  Eric Blake  <ebb9@byu.net>
13899
13900         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
13901
13902 2007-05-28  Bruno Haible  <bruno@clisp.org>
13903
13904         * modules/fseek-tests: New file.
13905         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
13906         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
13907
13908         * lib/fseek.c: New file.
13909         * modules/fseek: New file.
13910         * m4/fseek.m4: New file.
13911         * doc/functions/fseek.texi: Update.
13912         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
13913         REPLACE_FSEEK.
13914         * lib/stdio_.h (rpl_fseek): New declaration.
13915         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
13916         REPLACE_FSEEK.
13917
13918 2007-05-28  Bruno Haible  <bruno@clisp.org>
13919
13920         * lib/stdio_.h (fflush): More comments.
13921
13922 2007-05-28  Bruno Haible  <bruno@clisp.org>
13923
13924         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
13925         runtime test.
13926
13927 2007-05-28  Eric Blake  <ebb9@byu.net>
13928
13929         Improve lseek module.
13930         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
13931         * lib/unistd_.h (lseek): Scale back link warning message.
13932         * tests/test-lseek.c: Beef up test.
13933         * tests/test-lseek.sh: Exercise more facets of lseek.
13934         Reported by Bruno Haible.
13935
13936 2007-05-28  Bruno Haible  <bruno@clisp.org>
13937
13938         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
13939         to define.
13940
13941 2007-05-27  Bruno Haible  <bruno@clisp.org>
13942
13943         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
13944
13945 2007-05-27  Bruno Haible  <bruno@clisp.org>
13946
13947         * modules/openmp: New file.
13948         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
13949         Noah Misch.
13950
13951 2007-05-26  Bruno Haible  <bruno@clisp.org>
13952
13953         * modules/chdir-long (Depends-on): Add fchdir.
13954         * modules/chdir-safer (Depends-on): Likewise.
13955         * modules/fts (Depends-on): Likewise.
13956         * modules/fts-lgpl (Depends-on): Likewise.
13957         * modules/openat (Depends-on): Likewise.
13958         * modules/savewd (Depends-on): Likewise.
13959
13960 2007-05-24  Eric Blake  <ebb9@byu.net>
13961
13962         Fix lseek on mingw.
13963         * modules/lseek: New module.
13964         * m4/lseek.m4: New file.
13965         * lib/lseek.c: New file.
13966         * modules/lseek-tests: New file.
13967         * tests/test-lseek.c: New file.
13968         * tests/test-lseek.sh: New file.
13969         * MODULES.html.sh: Document lseek module.
13970         * modules/fflush (Depends-on): Add lseek, fseeko.
13971         * modules/fseeko (Depends-on): Likewise.
13972         * modules/ftello (Depends-on): Likewise.
13973         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
13974         broken.
13975         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
13976         broken.
13977         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
13978         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
13979         * lib/ftello.c (rpl_ftello): Likewise.
13980         * tests/test-fseeko.c (main): Test this.
13981         * tests/test-fseeko.sh: Likewise.
13982         * tests/test-ftello.c (main): Likewise.
13983         * tests/test-ftello.sh: Likewise.
13984         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
13985         implies replacing fseek.
13986         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
13987         HAVE_FTELLO.
13988         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
13989         * modules/unistd (Makefile.am): Likewise.
13990         * lib/unistd_.h (lseek): Declare a replacement.
13991         * doc/functions/lseek.texi (lseek): Document this fix.
13992         * doc/functions/fseek.texi (fseek): Likewise.
13993         * doc/functions/ftell.texi (ftell): Likewise.
13994
13995 2007-05-24  Bruno Haible  <bruno@clisp.org>
13996
13997         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
13998         in the printed representation of a NaN.
13999         * tests/test-vasprintf-posix.c (test_function): Likewise.
14000         * tests/test-snprintf-posix.h (test_function): Likewise.
14001         * tests/test-sprintf-posix.h (test_function): Likewise.
14002         Reported by Eric Blake.
14003
14004 2007-05-23  Eric Blake  <ebb9@byu.net>
14005
14006         Fix fseeko/ftello on cygwin 1.5.24.
14007         * doc/functions/fseeko.texi (fseeko): Document the fix.
14008         * doc/functions/ftello.texi (ftello): Document the fix.
14009         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
14010         * doc/functions/stdout.text (stdout): New file.
14011         * doc/functions/stderr.text (stderr): New file.
14012         * doc/gnulib.texi (Function Substitutes): Use new files.
14013         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
14014         prior to 1.7.0.
14015         * tests/test-ftello.c (main): Likewise for ftello.
14016         * tests/test-fseeko.sh: New file.
14017         * tests/test-ftello.sh: New file.
14018         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
14019         with seekable stdin.
14020         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
14021         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
14022         (gl_REPLACE_FSEEKO): New macro.
14023         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
14024         * modules/fseeko (Files): Distribute fseeko.c.
14025         * modules/ftello (Files): Distribute ftello.c.
14026         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
14027         mode.
14028         * lib/ftello.c (rpl_ftello): New file.
14029         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
14030         fseeko, ftello.
14031         (gl_STDIN_LARGE_OFFSET): New macro.
14032         * modules/stdio (Makefile.am): Perform the replacement.
14033         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
14034
14035 2007-05-23  Bruno Haible  <bruno@clisp.org>
14036
14037         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
14038         GNULIB_POSIXCHECK is defined.
14039
14040 2007-05-21  Bruno Haible  <bruno@clisp.org>
14041
14042         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
14043         Check also the output for NaN arguments. When cross-compiling, guess
14044         no on IRIX.
14045         * lib/vasnprintf.c: Update comments.
14046         * tests/test-vasnprintf-posix.c (strisnan): New function.
14047         (test_function): Use it.
14048         * tests/test-vasprintf-posix.c (strisnan): New function.
14049         (test_function): Use it.
14050         * tests/test-snprintf-posix.h (strisnan): New function.
14051         (test_function): Use it.
14052         * tests/test-sprintf-posix.h (strisnan): New function.
14053         (test_function): Use it.
14054         Reported by Eric Blake.
14055
14056 2007-05-20  Bruno Haible  <bruno@clisp.org>
14057
14058         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
14059         numbers that fails on BeOS.
14060         * doc/functions/frexpl.texi: Update.
14061
14062 2007-05-20  Jim Meyering  <jim@meyering.net>
14063
14064         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
14065         forced upon us by glibc-2.6.
14066
14067 2007-05-20  Bruno Haible  <bruno@clisp.org>
14068
14069         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
14070         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
14071         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
14072         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
14073         NEED_PRINTF_INFINITE.
14074         (is_infinitel): New function.
14075         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
14076         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
14077         gl_PREREQ_VASNPRINTF_INFINITE.
14078         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
14079         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
14080         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
14081         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
14082         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
14083         gl_PREREQ_VASNPRINTF_INFINITE.
14084         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
14085         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14086         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14087         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14088         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
14089         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14090         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14091         * doc/functions/fprintf.texi: Update.
14092         * doc/functions/printf.texi: Update.
14093         * doc/functions/snprintf.texi: Update.
14094         * doc/functions/sprintf.texi: Update.
14095         * doc/functions/vfprintf.texi: Update.
14096         * doc/functions/vprintf.texi: Update.
14097         * doc/functions/vsnprintf.texi: Update.
14098         * doc/functions/vsprintf.texi: Update.
14099
14100 2007-05-20  Bruno Haible  <bruno@clisp.org>
14101
14102         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
14103         was not found in libc.
14104         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
14105
14106 2007-05-20  Bruno Haible  <bruno@clisp.org>
14107
14108         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
14109         printed as "-nan" instead of "nan".
14110         * tests/test-vasprintf-posix.c (test_function): Likewise.
14111         * tests/test-snprintf-posix.h (test_function): Likewise.
14112         * tests/test-sprintf-posix.h (test_function): Likewise.
14113         Needed for HP-UX 11.
14114
14115 2007-05-20  Jim Meyering  <jim@meyering.net>
14116
14117         Fix buggy test for the fchownat-deref bug.
14118         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
14119         symlink required for the run-test.  Without it, this test would
14120         always declare that fchownat doesn't work, and client code would
14121         unnecessarily use the replacement function with fixed libc.
14122         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
14123         Reported by Greg Schafer.
14124
14125 2007-05-19  Bruno Haible  <bruno@clisp.org>
14126
14127         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
14128         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
14129         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
14130         Needed for IRIX 6.5 and Solaris 2.5.1.
14131
14132 2007-05-19  Bruno Haible  <bruno@clisp.org>
14133
14134         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
14135         (test_function): Skip tests involving -0.0 on platforms where
14136         -0.0 = 0.0.
14137         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
14138         (test_function): Skip tests involving -0.0 on platforms where
14139         -0.0 = 0.0.
14140         * tests/test-snprintf-posix.h (have_minus_zero): New function.
14141         (test_function): Skip tests involving -0.0 on platforms where
14142         -0.0 = 0.0.
14143         * tests/test-sprintf-posix.h (have_minus_zero): New function.
14144         (test_function): Skip tests involving -0.0 on platforms where
14145         -0.0 = 0.0.
14146         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
14147         tests.
14148         * tests/test-printf-posix.h (test_function): Likewise.
14149         * tests/test-printf-posix.output: Remove all -0.0 related results.
14150         Needed for IRIX 6.5.
14151
14152 2007-05-19  Bruno Haible  <bruno@clisp.org>
14153
14154         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
14155         printed as "nan0x7fffffff" instead of "nan".
14156         * tests/test-vasprintf-posix.c (test_function): Likewise.
14157         * tests/test-snprintf-posix.h (test_function): Likewise.
14158         * tests/test-sprintf-posix.h (test_function): Likewise.
14159         * tests/test-fprintf-posix.h (NaN): Remove macro.
14160         (test_function): Remove all NaN related tests.
14161         * tests/test-printf-posix.h (NaN): Remove macro.
14162         (test_function): Remove all NaN related tests.
14163         * tests/test-printf-posix.output: Remove all NaN related results.
14164         Needed for IRIX 6.5.
14165
14166 2007-05-19  Bruno Haible  <bruno@clisp.org>
14167
14168         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
14169         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
14170
14171 2007-05-19  Bruno Haible  <bruno@clisp.org>
14172
14173         * lib/float_.h: New file.
14174         * m4/float_h.m4: New file.
14175         * modules/float: New file.
14176         * modules/isnanl (Dependencies): Add float.
14177         * modules/isnanl-nolibm (Dependencies): Likewise.
14178         * modules/mathl (Dependencies): Likewise.
14179         * modules/printf-frexpl (Dependencies): Likewise.
14180         * modules/signbit (Dependencies): Likewise.
14181         * modules/vasnprintf (Dependencies): Likewise.
14182         * doc/headers/float.texi: Update.
14183
14184 2007-05-19  Jim Meyering  <jim@meyering.net>
14185
14186         * lib/utimens.c (gl_futimens): Rename from futimens,
14187         now that glibc-2.6 declares futimens.
14188         * lib/utimens.h: Likewise.
14189
14190 2007-05-19  Bruno Haible  <bruno@clisp.org>
14191
14192         Avoid test failures on mingw.
14193         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
14194         * tests/test-printf-posix.sh: Likewise.
14195         * tests/test-vfprintf-posix.sh: Likewise.
14196         * tests/test-vprintf-posix.sh: Likewise.
14197
14198 2007-05-19  Bruno Haible  <bruno@clisp.org>
14199
14200         Fix *printf result for NaN, Inf, -0.0 on mingw.
14201         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
14202         * lib/vasnprintf.c: Include math.h and isnan.h.
14203         (is_infinite_or_zero): New function.
14204         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
14205         values in the %f, %F, %e, %E, %g, %G directives.
14206         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
14207         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
14208         gl_PRINTF_INFINITE and test its result. Invoke
14209         gl_PREREQ_VASNPRINTF_INFINITE.
14210         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
14211         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14212         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14213         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14214         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
14215         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14216         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14217         * doc/functions/fprintf.texi: Update.
14218         * doc/functions/printf.texi: Update.
14219         * doc/functions/snprintf.texi: Update.
14220         * doc/functions/sprintf.texi: Update.
14221         * doc/functions/vfprintf.texi: Update.
14222         * doc/functions/vprintf.texi: Update.
14223         * doc/functions/vsnprintf.texi: Update.
14224         * doc/functions/vsprintf.texi: Update.
14225
14226 2007-05-19  Bruno Haible  <bruno@clisp.org>
14227
14228         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
14229         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
14230         Instead of multiplying with 10^k, set extra_zeroes to k.
14231         (scale10_round_long_double): Remove function.
14232
14233 2007-05-18  Bruno Haible  <bruno@clisp.org>
14234
14235         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
14236         introduced on 2007-05-06.
14237
14238 2007-05-18  Bruno Haible  <bruno@clisp.org>
14239
14240         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
14241         %g directives.
14242         * tests/test-vasprintf-posix.c (test_function): Likewise.
14243         * tests/test-snprintf-posix.h (test_function): Likewise.
14244         * tests/test-sprintf-posix.h (test_function): Likewise.
14245
14246 2007-05-18  Bruno Haible  <bruno@clisp.org>
14247
14248         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
14249         (strmatch): New function.
14250         (test_function): Test the %f directive on numbers of various exponents.
14251         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
14252         (strmatch): New function.
14253         (test_function): Test the %f directive on numbers of various exponents.
14254         * tests/test-snprintf-posix.h (strmatch): New function.
14255         (test_function): Test the %f directive on numbers of various exponents.
14256         * tests/test-sprintf-posix.h (strmatch): New function.
14257         (test_function): Test the %f directive on numbers of various exponents.
14258         * tests/test-snprintf-posix.c (SIZEOF): New macro.
14259         * tests/test-sprintf-posix.c (SIZEOF): New macro.
14260         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
14261         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
14262
14263 2007-05-18  Bruno Haible  <bruno@clisp.org>
14264
14265         Add support for 'long double' number output.
14266         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
14267         * lib/vasnprintf.c: Include math.h and float+.h.
14268         (mp_limb_t): New type.
14269         (GMP_LIMB_BITS): New macro.
14270         (mp_twolimb_t): New type.
14271         (GMP_TWOLIMB_BITS): New macro.
14272         (mpn_t): New type.
14273         (multiply, divide, convert_to_decimal, decode_long_double,
14274         scale10_round_long_double, scale10_round_decimal_long_double,
14275         floorlog10l): New functions.
14276         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
14277         for the %f, %F, %e, %E, %g, %G directives.
14278         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
14279         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
14280         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
14281         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
14282         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
14283         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14284         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14285         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14286         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
14287         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14288         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14289         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
14290         * modules/snprintf-posix (Depends-on): Likewise.
14291         * modules/sprintf-posix (Depends-on): Likewise.
14292         * modules/vasnprintf-posix (Depends-on): Likewise.
14293         * modules/vasprintf-posix (Depends-on): Likewise.
14294         * modules/vfprintf-posix (Depends-on): Likewise.
14295         * modules/vsnprintf-posix (Depends-on): Likewise.
14296         * modules/vsprintf-posix (Depends-on): Likewise.
14297         * modules/vasnprintf (Files): Add lib/float+.h.
14298         * doc/functions/fprintf.texi: Update.
14299         * doc/functions/printf.texi: Update.
14300         * doc/functions/snprintf.texi: Update.
14301         * doc/functions/sprintf.texi: Update.
14302         * doc/functions/vfprintf.texi: Update.
14303         * doc/functions/vprintf.texi: Update.
14304         * doc/functions/vsnprintf.texi: Update.
14305         * doc/functions/vsprintf.texi: Update.
14306
14307 2007-05-18  Bruno Haible  <bruno@clisp.org>
14308
14309         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
14310
14311 2007-05-18  Bruno Haible  <bruno@clisp.org>
14312
14313         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
14314         for printing 64-bit integers. Needed for mingw.
14315
14316 2007-05-18  Bruno Haible  <bruno@clisp.org>
14317
14318         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
14319         gl_FUNC_FREXPL_WORKS.
14320         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
14321
14322 2007-05-18  Bruno Haible  <bruno@clisp.org>
14323
14324         * modules/frexpl-nolibm-tests: New file.
14325
14326         * modules/frexpl-nolibm: New file.
14327         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
14328
14329 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
14330
14331         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
14332         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
14333         GCC 4.2, which otherwise issues a lot of warnings.
14334         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
14335         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
14336         Likewise.
14337         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
14338         * modules/iconv_open (iconv.h): Likewise.
14339         * modules/locale (locale.h): Likewise.
14340         * modules/netinet_in (netinet/in.h): Likewise.
14341         * modules/sys_select (sys_select.h): Likewise.
14342         * modules/sys_socket (sys/socket.h): Likewise.
14343         * modules/sys_stat (sys/stat.h): Likewise.
14344         * modules/sysexits (sysexits.h): Likewise.
14345         * modules/unistd (unistd.h): Likewise.
14346
14347 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14348
14349         * modules/closein-tests (Makefile.am): Distribute
14350         `test-closein.sh'.
14351
14352 2007-05-17  Bruno Haible  <bruno@clisp.org>
14353
14354         * tests/test-printf-posix.output: Renamed from
14355         tests/test-fprintf-posix.out.
14356         * modules/fprintf-posix-tests: Update.
14357         * modules/printf-posix-tests: Update.
14358         * modules/vfprintf-posix-tests: Update.
14359         * modules/vprintf-posix-tests: Update.
14360         * tests/test-fprintf-posix.sh: Update.
14361         * tests/test-printf-posix.sh: Update.
14362         * tests/test-vfprintf-posix.sh: Update.
14363         * tests/test-vprintf-posix.sh: Update.
14364         Reported by Ralf Wildenhues.
14365
14366 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
14367
14368         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
14369         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
14370         GCC 4.2, which otherwise issues a lot of warnings.
14371         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
14372         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
14373         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
14374         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
14375         it should no longer be needed.
14376         * lib/string_.h: Likewise.
14377         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
14378         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
14379         * modules/inttypes (inttypes.h): Likewise.
14380         * modules/math (math.h): Likewise.
14381         * modules/search (search.h): Likewise.
14382         * modules/signal (signal.h): Likewise.
14383         * modules/stdint (stdint.h): Likewise.
14384         * modules/stdio (stdio.h): Likewise.
14385         * modules/stdlib (stdlib.h): Likewise.
14386         * modules/string (string.h): Likewise.
14387         * modules/sys_time (sys/time.h): Likewise.
14388         * modules/time (time.h): Likewise.
14389         * modules/wchar (wchar.h): Likewise.
14390         * modules/wctype (wtype.h): Likewise.
14391
14392 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
14393
14394         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
14395
14396 2007-05-13  Bruno Haible  <bruno@clisp.org>
14397
14398         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
14399         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
14400         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
14401         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
14402         (gl_PREREQ_STRTOK_R): Don't require it here.
14403
14404 2007-05-13  Bruno Haible  <bruno@clisp.org>
14405
14406         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
14407         when used in C++ mode.
14408
14409 2007-05-12  Bruno Haible  <bruno@clisp.org>
14410
14411         * lib/linebuffer.h: Tweak doc.
14412         * lib/linebuffer.c: Likewise.
14413
14414 2007-05-12  James Youngman  <jay@gnu.org>
14415
14416         * lib/linebuffer.c (readlinebuffer_delim): New function,
14417         like readlinebuffer, but use a caller-specified delimiter.
14418         (readlinebuffer): Just call readlinebuffer_delim with '\n'
14419         as the delimiter.
14420         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
14421
14422 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
14423
14424         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
14425         * modules/openat (Files): Remove openat-die.c.
14426         (Depends-on): Add openat-die.
14427         * modules/openat-die: New module.
14428
14429 2007-05-06  Bruno Haible  <bruno@clisp.org>
14430
14431         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
14432         Update with info about Cygwin.
14433         * doc/functions/fprintf.texi: Update.
14434         * doc/functions/printf.texi: Update.
14435         * doc/functions/snprintf.texi: Update.
14436         * doc/functions/sprintf.texi: Update.
14437         * doc/functions/vfprintf.texi: Update.
14438         * doc/functions/vprintf.texi: Update.
14439         * doc/functions/vsnprintf.texi: Update.
14440         * doc/functions/vsprintf.texi: Update.
14441         Reported by Eric Blake.
14442
14443 2007-05-06  Bruno Haible  <bruno@clisp.org>
14444
14445         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
14446         padding ourselves for the floating-point directives.
14447         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
14448         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
14449         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
14450         gl_PRINTF_FLAG_ZERO and test its result. Invoke
14451         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
14452         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14453         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
14454         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14455         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14456         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
14457         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14458         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14459         * tests/test-snprintf-posix.h (test_function): Also check the width
14460         and some flags in the %f directive.
14461         * tests/test-sprintf-posix.h (test_function): Likewise.
14462         * tests/test-vasnprintf-posix.c (test_function): Likewise.
14463         * tests/test-vasprintf-posix.c (test_function): Likewise.
14464         * doc/functions/fprintf.texi: Update.
14465         * doc/functions/printf.texi: Update.
14466         * doc/functions/snprintf.texi: Update.
14467         * doc/functions/sprintf.texi: Update.
14468         * doc/functions/vfprintf.texi: Update.
14469         * doc/functions/vprintf.texi: Update.
14470         * doc/functions/vsnprintf.texi: Update.
14471         * doc/functions/vsprintf.texi: Update.
14472
14473 2007-05-06  Bruno Haible  <bruno@clisp.org>
14474
14475         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
14476         pass the ' flag character to sprintf or snprintf.
14477         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
14478         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
14479         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
14480         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
14481         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
14482         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14483         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
14484         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14485         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14486         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
14487         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14488         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14489         * tests/test-snprintf-posix.h (test_function): Also check the grouping
14490         flag.
14491         * tests/test-sprintf-posix.h (test_function): Likewise.
14492         * tests/test-vasnprintf-posix.c (test_function): Likewise.
14493         * tests/test-vasprintf-posix.c (test_function): Likewise.
14494         * doc/functions/fprintf.texi: Update.
14495         * doc/functions/printf.texi: Update.
14496         * doc/functions/snprintf.texi: Update.
14497         * doc/functions/sprintf.texi: Update.
14498         * doc/functions/vfprintf.texi: Update.
14499         * doc/functions/vprintf.texi: Update.
14500         * doc/functions/vsnprintf.texi: Update.
14501         * doc/functions/vsprintf.texi: Update.
14502
14503 2007-05-01  Bruno Haible  <bruno@clisp.org>
14504
14505         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
14506
14507 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
14508
14509         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
14510         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
14511
14512 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
14513
14514         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
14515         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
14516         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
14517
14518 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
14519
14520         * lib/argp-help.c (struct hol_entry): New member `ord'.
14521         (HOL_ENTRY_PTRCMP): Use ord for comparison
14522         (hol_sort): Initialize ord.
14523
14524 2007-05-01  Bruno Haible  <bruno@clisp.org>
14525
14526         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
14527         Reported by Eric Blake.
14528         * doc/gnulib.texi (Function Substitutes): Update.
14529
14530 2007-05-01  Bruno Haible  <bruno@clisp.org>
14531
14532         * doc/functions.texi: Remove file, now redundant through
14533         doc/functions/*.texi.
14534
14535 2007-05-01  Bruno Haible  <bruno@clisp.org>
14536
14537         * modules/argp (Depends-on): Add sleep.
14538
14539 2007-05-01  Bruno Haible  <bruno@clisp.org>
14540
14541         * modules/sleep-tests: New file.
14542         * tests/test-sleep.c: New file.
14543
14544         * modules/sleep: New file.
14545         * lib/sleep.c: New file.
14546         * m4/sleep.m4: New file.
14547         * lib/unistd_.h (sleep): New declaration.
14548         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
14549         HAVE_SLEEP.
14550         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
14551         * doc/functions/sleep.texi: Document the sleep module.
14552
14553 2007-05-01  Bruno Haible  <bruno@clisp.org>
14554
14555         * lib/sigprocmask.h: Remove file.
14556         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
14557         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
14558         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
14559         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
14560         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
14561         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
14562         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
14563         HAVE_SIGSET_T as a shell variable.
14564         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
14565         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
14566         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
14567         (Depends-on): Add signal. Remove verify.
14568         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
14569         (Include): Mention <signal.h> instead of sigprocmask.h.
14570         * NEWS: Mention the change.
14571         * lib/fatal-signal.c: Don't include sigprocmask.h.
14572
14573 2007-05-01  Bruno Haible  <bruno@clisp.org>
14574
14575         * modules/signal: New file.
14576         * lib/signal_.h: New file.
14577         * m4/signal_h.m4: New file.
14578
14579 2007-05-01  Bruno Haible  <bruno@clisp.org>
14580
14581         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
14582         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
14583         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
14584         HAVE_WCTYPE_CTMP_BUG into wctype.h.
14585
14586 2007-05-01  Bruno Haible  <bruno@clisp.org>
14587
14588         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
14589         configure time.
14590         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
14591         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
14592         * modules/sys_stat (Makefile.am): Substitute their values into
14593         sys/stat.h.
14594
14595 2007-05-01  Bruno Haible  <bruno@clisp.org>
14596
14597         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
14598         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
14599         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
14600
14601 2007-05-01  Bruno Haible  <bruno@clisp.org>
14602
14603         * doc/header/assert.texi: Undo last change: don't mention the gnulib
14604         'assert' module here.
14605
14606 2007-05-01  Bruno Haible  <bruno@clisp.org>
14607
14608         * doc/functions/*.texi: New files.
14609         * doc/functions/google-ranking.txt: New file.
14610         * doc/gnulib.texi (Function Substitutes): New chapter.
14611         (ctime, inet_ntoa): Remove sections.
14612         * doc/ctime.texi: Remove file.
14613         * doc/inet_ntoa.texi: Remove file.
14614         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
14615         dependencies.
14616         (%.info): New rule, specifying a --reference-limit.
14617
14618 2007-05-01  Bruno Haible  <bruno@clisp.org>
14619
14620         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
14621
14622 2007-05-01  Bruno Haible  <bruno@clisp.org>
14623
14624         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
14625         the portability of 'mkdir' to mingw systems.
14626
14627 2007-05-01  Bruno Haible  <bruno@clisp.org>
14628
14629         * doc/headers/google-ranking.txt: New file.
14630
14631 2007-04-30  Eric Blake  <ebb9@byu.net>
14632
14633         Prefer fseeko to fseek.
14634         * modules/getpass (Depends-on): Add fseeko.
14635         * lib/getpass.c (getpass): Use fseeko, not fseek.
14636
14637 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
14638
14639         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
14640         assumes the sorting is stable, while most qsort implementations
14641         are not.  Use argument addresses to ensure they never compare as
14642         equal.
14643
14644         * tests/test-argp-2.sh (usage-indent test): Fix output
14645         (func_compare): Restore diff options
14646         * tests/test-argp.c: Restore #include "progname.h"
14647
14648 2007-04-29  Bruno Haible  <bruno@clisp.org>
14649
14650         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
14651         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
14652         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
14653         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14654         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
14655         (configure.ac): Define CHECK_SNPRINTF_POSIX.
14656         (TESTS, check_PROGRAMS): Add test-snprintf.
14657         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
14658         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
14659         (TESTS, check_PROGRAMS): Add test-vsnprintf.
14660         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
14661         assertions that fail on HP-UX, OSF/1, or IRIX.
14662         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
14663
14664 2007-04-29  Bruno Haible  <bruno@clisp.org>
14665
14666         * MODULES.html.sh (posix_functions): Remove 'contents'.
14667
14668 2007-04-29  Karl Berry  <karl@gnu.org>
14669
14670         * config/srclist.txt (gendocs_template_min): new entry.
14671
14672 2007-04-29  Bruno Haible  <bruno@clisp.org>
14673
14674         Work around fpurge bug on BSD systems.
14675         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
14676         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
14677         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
14678         fpurge to rpl_fpurge if the system already has this function.
14679         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
14680         the case where the system already has this function. Correct invariants
14681         on BSD systems.
14682         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
14683         BSD systems.
14684
14685 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
14686
14687         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
14688         proposed by Sven Verdoolaege.
14689
14690         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
14691         options.
14692         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
14693         (usage and help tests): Update
14694
14695 2007-04-29  Bruno Haible  <bruno@clisp.org>
14696
14697         * tests/test-fflush.c (main): Use a file of size 17, not 10.
14698         Print more information in case of failure. Disable a test on BeOS.
14699
14700 2007-04-29  Bruno Haible  <bruno@clisp.org>
14701
14702         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
14703         This helps debugging on systems on which no gdb is available.
14704
14705 2007-04-29  Bruno Haible  <bruno@clisp.org>
14706
14707         * lib/freading.h: Improve comments.
14708         * lib/fwriting.h: Likewise.
14709         * tests/test-freading.c (main): Don't check freading immediately after
14710         repositioning. Needed for glibc.
14711
14712 2007-04-29  Bruno Haible  <bruno@clisp.org>
14713
14714         * lib/freading.c (freading): Trivial simplification.
14715
14716 2007-04-28  Bruno Haible  <bruno@clisp.org>
14717
14718         * tests/test-fwriting.c (main): Also test the interaction between
14719         fflush and fwriting.
14720         * modules/fwriting-tests (Depends-on): Add fflush.
14721
14722         * tests/test-freading.c (main): Also test the interaction between
14723         fflush and freading.
14724         * modules/freading-tests (Depends-on): Add fflush.
14725
14726 2007-04-28  Bruno Haible  <bruno@clisp.org>
14727
14728         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
14729         fseeko and ftello.
14730         Suggested by Eric Blake.
14731
14732 2007-04-28  Jim Meyering  <jim@meyering.net>
14733
14734         Avoid false-negative in gl_STDINT_H's C99 conformance test.
14735         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
14736         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
14737
14738 2007-04-27  Eric Blake  <ebb9@byu.net>
14739
14740         * doc/headers/assert.texi (assert.h): Document assert module use.
14741
14742 2007-04-27  Bruno Haible  <bruno@clisp.org>
14743
14744         * doc/headers/*.texi: New files.
14745         * doc/gnulib.texi (Header File Substitutes): New chapter.
14746         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
14747         dependencies.
14748         (standards.info ,standards.html, standards.dvi): Update dependencies.
14749         (mostlyclean, clean): New targets.
14750
14751 2007-04-27  Bruno Haible  <bruno@clisp.org>
14752
14753         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
14754         * modules/sysexits (Files, Makefile.am): Update.
14755
14756         * lib/sys_socket_.h: Renamed from lib/socket_.h.
14757         * modules/sys_socket (Files, Makefile.am): Update.
14758
14759         * lib/sys_stat_.h: Renamed from lib/stat_.h.
14760         * modules/sys_stat (Files, Makefile.am): Update.
14761
14762 2007-04-27  Eric Blake  <ebb9@byu.net>
14763
14764         * lib/freading.h: Improve comments.
14765         * lib/fwriting.h: Likewise.
14766         * lib/fflush.c: Likewise.
14767
14768         Fix closein for mingw.
14769         * modules/closein-tests: Add tests for closein.
14770         * tests/test-closein.c: New file.
14771         * tests/test-closein.sh: Likewise.
14772         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
14773         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
14774
14775 2007-04-27  Bruno Haible  <bruno@clisp.org>
14776
14777         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
14778         version is < 6.
14779         * lib/math_.h [__DECC]: Likewise.
14780         * lib/stdio_.h [__DECC]: Likewise.
14781         * lib/stdlib_.h [__DECC]: Likewise.
14782         * lib/string_.h [__DECC]: Likewise.
14783         * lib/time_.h [__DECC]: Likewise.
14784         * lib/wchar_.h [__DECC]: Likewise.
14785         * lib/wctype_.h [__DECC]: Likewise.
14786
14787 2007-04-27  Bruno Haible  <bruno@clisp.org>
14788
14789         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
14790
14791 2007-04-27  Bruno Haible  <bruno@clisp.org>
14792
14793         * lib/fflush.c: Add comments.
14794         * modules/fpurge-tests (Depends-on): Add fflush.
14795         * modules/freadable-tests (Depends-on): Likewise.
14796         * modules/fwritable-tests (Depends-on): Likewise.
14797
14798 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
14799
14800         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
14801         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
14802         Report by Bruno Haible <bruno@clisp.org>.
14803
14804 2007-04-26  Eric Blake  <ebb9@byu.net>
14805
14806         Fix fflush on mingw.
14807         * modules/fflush (Depends-on): Add freading.
14808         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
14809         but unread data.
14810
14811 2007-04-26  Eric Blake  <ebb9@byu.net>
14812         and Bruno Haible  <bruno@clisp.org>
14813
14814         Implement freading and fwriting.
14815         * lib/freading.c: New file.
14816         * lib/freading.h: Likewise.
14817         * m4/freading.m4: Likewise.
14818         * modules/freading: Likewise.
14819         * modules/freading-tests: Likewise.
14820         * tests/test-freading.c: Likewise.
14821         * lib/fwriting.c: New file.
14822         * lib/fwriting.h: Likewise.
14823         * m4/fwriting.m4: Likewise.
14824         * modules/fwriting: Likewise.
14825         * modules/fwriting-tests: Likewise.
14826         * tests/test-fwriting.c: Likewise.
14827         * MODULES.html.sh (File stream based Input/Output): Mention them.
14828
14829 2007-04-26  Bruno Haible  <bruno@clisp.org>
14830
14831         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
14832         'long' when we assume it.
14833         Suggested by Eric Blake.
14834
14835 2007-04-26  Bruno Haible  <bruno@clisp.org>
14836
14837         Ensure fseeko, ftello are declared on glibc systems.
14838         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
14839         * modules/fseeko (configure.ac-early): Likewise.
14840         * modules/ftello (configure.ac-early): Likewise.
14841         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
14842         AC_FUNC_FSEEKO for this.
14843         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
14844         (gl_CHECK_FSEEKO): Remove macro.
14845
14846 2007-04-26  Bruno Haible  <bruno@clisp.org>
14847
14848         * tests/test-fflush.c (main): Also check the ftell result after
14849         fflush and fseek/fseeko.
14850         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
14851         file descriptor position cache in the stream.
14852         * lib/fseeko.c (rpl_fseeko): Likewise.
14853
14854 2007-04-26  Bruno Haible  <bruno@clisp.org>
14855
14856         * modules/fflush-tests (Depends-on): Add fseeko.
14857
14858 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
14859             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14860
14861         * lib/argz_.h: ensure error_t definition is obtained in same
14862         mechanism system argz.h would have.
14863         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
14864         argz facilities are known bad.  Err on the side of caution if
14865         cross-compiling.
14866
14867 2007-04-25  Eric Blake  <ebb9@byu.net>
14868
14869         * lib/fpurge.c (includes): Use stdlib.h for free.
14870         * tests/test-fflush.c (main): Also test fflush-fseeko.
14871
14872 2007-04-25  Bruno Haible  <bruno@clisp.org>
14873
14874         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
14875         * lib/fseeko.c: New file.
14876         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
14877         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
14878         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
14879         gl_FUNC_FSEEKO.
14880         (gl_FUNC_FSEEKO): Invoke it.
14881         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
14882         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
14883         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
14884
14885 2007-04-25  Bruno Haible  <bruno@clisp.org>
14886
14887         * modules/fflush (Depends-on): Add ftello.
14888
14889 2007-04-25  Bruno Haible  <bruno@clisp.org>
14890
14891         * modules/ftello-tests: New file.
14892         * tests/test-ftello.c: New file.
14893
14894         * modules/ftello: New file.
14895         * m4/ftello.m4: New file.
14896         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
14897         HAVE_FTELLO.
14898         * lib/stdio_.h (ftello): New declaration.
14899         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
14900         HAVE_FTELLO.
14901
14902 2007-04-25  Bruno Haible  <bruno@clisp.org>
14903
14904         * modules/fseeko-tests: New file.
14905         * tests/test-fseeko.c: New file.
14906
14907         * modules/fseeko: New file.
14908         * m4/fseeko.m4: New file.
14909         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
14910         HAVE_FSEEKO.
14911         * lib/stdio_.h (fseeko): New declaration.
14912         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
14913         HAVE_FSEEKO.
14914
14915 2007-04-25  Bruno Haible  <bruno@clisp.org>
14916
14917         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
14918
14919 2007-04-25  Bruno Haible  <bruno@clisp.org>
14920
14921         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
14922         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
14923         * tests/test-unistd.c: Likewise.
14924         * tests/test-fcntl.c: Likewise.
14925
14926 2007-04-23  Eric Blake  <ebb9@byu.net>
14927
14928         * lib/fflush.c: Fix missing include.
14929         Reported by Bruno Haible.
14930
14931 2007-04-23  Bruno Haible  <bruno@clisp.org>
14932
14933         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
14934         Reported by Eric Blake.
14935
14936 2007-04-23  Bruno Haible  <bruno@clisp.org>
14937
14938         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
14939
14940 2007-04-23  Bruno Haible  <bruno@clisp.org>
14941
14942         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
14943
14944 2007-04-23  Bruno Haible  <bruno@clisp.org>
14945
14946         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
14947         Needed on HP-UX 11.
14948
14949 2007-04-16  Eric Blake  <ebb9@byu.net>
14950
14951         Make fflush rely on fpurge.
14952         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
14953         open coding all variants.
14954         * modules/fflush (Depends-on): Add fpurge and unistd.
14955         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
14956         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
14957
14958         Fix --with-tests compilation on cygwin.
14959         * modules/argmatch-tests (Makefile.am): List gnulib library first
14960         in LDADD.
14961         * modules/argp-tests (Makefile.am): Likewise.
14962         * modules/array-list-tests (Makefile.am): Likewise.
14963         * modules/array-oset-tests (Makefile.am): Likewise.
14964         * modules/avltree-list-tests (Makefile.am): Likewise.
14965         * modules/avltree-oset-tests (Makefile.am): Likewise.
14966         * modules/avltreehash-list-tests (Makefile.am): Likewise.
14967         * modules/carray-list-tests (Makefile.am): Likewise.
14968         * modules/dirname-tests (Makefile.am): Likewise.
14969         * modules/frexp-tests (Makefile.am): Likewise.
14970         * modules/isnanl-tests (Makefile.am): Likewise.
14971         * modules/linked-list-tests (Makefile.am): Likewise.
14972         * modules/linkedhash-list-tests (Makefile.am): Likewise.
14973         * modules/lock-tests (Makefile.am): Likewise.
14974         * modules/rbtree-list-tests (Makefile.am): Likewise.
14975         * modules/rbtree-oset-tests (Makefile.am): Likewise.
14976         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
14977         * modules/tls-tests (Makefile.am): Likewise.
14978         * modules/tsearch-tests (Makefile.am): Likewise.
14979         * modules/xvasprintf-tests (Makefile.am): Likewise.
14980
14981         Fix fpurge for cygwin.
14982         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
14983         value.
14984         * modules/fpurge-tests (Depends-on): Clean up trash.
14985
14986 2007-04-16  Simon Josefsson  <simon@josefsson.org>
14987
14988         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
14989
14990         * m4/autobuild.m4: Re-indent.
14991
14992 2007-04-13  Bruno Haible  <bruno@clisp.org>
14993
14994         * modules/fpurge-tests: New file.
14995         * tests/test-fpurge.c: New file.
14996
14997         * modules/fpurge: New file.
14998         * lib/fpurge.h: New file.
14999         * lib/fpurge.c: New file.
15000         * m4/fpurge.m4: New file.
15001
15002 2007-04-13  Bruno Haible  <bruno@clisp.org>
15003
15004         * modules/fbufmode-tests: New file.
15005         * tests/test-fbufmode.c: New file.
15006
15007         * modules/fbufmode: New file.
15008         * lib/fbufmode.h: New file.
15009         * lib/fbufmode.c: New file.
15010         * m4/fbufmode.m4: New file.
15011
15012 2007-04-13  Bruno Haible  <bruno@clisp.org>
15013
15014         * modules/fwritable-tests: New file.
15015         * tests/test-fwritable.c: New file.
15016
15017         * modules/fwritable: New file.
15018         * lib/fwritable.h: New file.
15019         * lib/fwritable.c: New file.
15020         * m4/fwritable.m4: New file.
15021
15022 2007-04-13  Bruno Haible  <bruno@clisp.org>
15023
15024         * modules/freadable-tests: New file.
15025         * tests/test-freadable.c: New file.
15026
15027         * modules/freadable: New file.
15028         * lib/freadable.h: New file.
15029         * lib/freadable.c: New file.
15030         * m4/freadable.m4: New file.
15031
15032 2007-04-13  Bruno Haible  <bruno@clisp.org>
15033
15034         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
15035         MOSTLYCLEANFILES.
15036
15037 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
15038
15039         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
15040         gzip bootstrap.conf to avoid dragging in i18n machinery.
15041         (gnulib_tool_option): Use it.
15042
15043 2007-04-13  Bruno Haible  <bruno@clisp.org>
15044
15045         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
15046         %F directives.
15047         * tests/test-vasprintf-posix.c (test_function): Likewise.
15048         * tests/test-snprintf-posix.h (test_function): Likewise.
15049         * tests/test-sprintf-posix.h (test_function): Likewise.
15050         * tests/test-fprintf-posix.h (test_function): Likewise.
15051         * tests/test-printf-posix.h (test_function): Likewise.
15052         * tests/test-fprintf-posix.out: Likewise.
15053
15054 2007-04-13  Bruno Haible  <bruno@clisp.org>
15055
15056         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
15057         * modules/tls-tests (configure.ac): Likewise.
15058         Reported by Arto C. Nirkko <anirkko@insel.ch>.
15059
15060 2007-04-13  Bruno Haible  <bruno@clisp.org>
15061
15062         * lib/tls.c (glthread_tls_get): Fix return type.
15063         Patch by Arto C. Nirkko <anirkko@insel.ch>.
15064
15065 2007-04-12  Eric Blake  <ebb9@byu.net>
15066
15067         * modules/gettime (Depends-on): Remove gettime.
15068         Reported by Dmitry V. Levin.
15069
15070 2007-04-12  Bruno Haible  <bruno@clisp.org>
15071
15072         * modules/fflush (Include): Mention <stdio.h>.
15073         * modules/strtoimax (Include): Mention <inttypes.h>.
15074         * modules/strtoumax (Include): Likewise.
15075
15076 2007-04-12  Eric Blake  <ebb9@byu.net>
15077
15078         * .cvsignore: New file.
15079         * .gitignore: Likewise.
15080
15081 2007-04-12  Bruno Haible  <bruno@clisp.org>
15082
15083         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
15084         not before, since $(LDADD) often contains libgnu.a.
15085         * modules/striconv-tests (test_striconv_LDADD): Likewise.
15086         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
15087         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
15088         Needed on Cygwin.
15089
15090 2007-04-12  Eric Blake  <ebb9@byu.net>
15091
15092         Work around glibc's failure to flush stdin on fclose.
15093         * lib/closein.c (close_stdin): Flush stdin before closing.
15094
15095         Work around glibc's failure to reset seekable stdin on exit.
15096         * modules/closein: New module.
15097         * lib/closein.c: New file.
15098         * lib/closein.h: Likewise.
15099         * m4/closein.m4: Likewise.
15100         * MODULES.html.sh (File stream based Input/Output): Document it.
15101
15102 2007-04-12  Simon Josefsson  <simon@josefsson.org>
15103
15104         * gnulib-tool: Rename generated 'autobuild' script to
15105         'do-autobuild' in --create-megatestdir output.
15106
15107         * doc/gnulib.texi (Build robot for gnulib): Fix.
15108
15109 2007-04-12  Simon Josefsson  <simon@josefsson.org>
15110
15111         * modules/sysexits (Depends-on): Add absolute-header.
15112
15113 2007-04-12  Eric Blake  <ebb9@byu.net>
15114
15115         No need to preserve errno on success.
15116         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
15117         Reported by Bruno Haible.
15118
15119 2007-04-12  Simon Josefsson  <simon@josefsson.org>
15120
15121         * MODULES.html.sh (Support for maintaining and releasing
15122         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
15123
15124 2007-04-12  Simon Josefsson  <simon@josefsson.org>
15125
15126         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
15127
15128 2007-04-12  Simon Josefsson  <simon@josefsson.org>
15129
15130         * modules/autobuild: New module.
15131
15132         * m4/autobuild.m4: New file.
15133
15134 2007-04-11  Bruno Haible  <bruno@clisp.org>
15135
15136         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
15137         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
15138         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
15139         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
15140         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
15141         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
15142         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
15143         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
15144         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
15145         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
15146         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
15147         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
15148         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
15149         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
15150         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
15151         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
15152         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
15153         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
15154         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
15155         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
15156         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
15157         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
15158         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
15159         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
15160         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
15161         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
15162         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
15163         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
15164         Reported by Eric Blake.
15165
15166 2007-04-11  Bruno Haible  <bruno@clisp.org>
15167
15168         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
15169
15170 2007-04-10  Bruno Haible  <bruno@clisp.org>
15171
15172         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
15173         for NaN and Infinity. Needed on FreeBSD 6.1.
15174         * tests/test-vasnprintf-posix.c (test_function): Undo last change
15175         regarding results for "%010a" of Infinity and NaN.
15176         * tests/test-vasprintf-posix.c (test_function): Likewise.
15177         * tests/test-snprintf-posix.h (test_function): Likewise.
15178         * tests/test-sprintf-posix.h (test_function): Likewise.
15179         * tests/test-fprintf-posix.h (test_function): Likewise.
15180         * tests/test-printf-posix.h (test_function): Likewise.
15181         * tests/test-fprintf-posix.out: Likewise.
15182
15183 2007-04-10  Bruno Haible  <bruno@clisp.org>
15184
15185         * modules/locale-tests: New file.
15186         * tests/test-locale.c: New file.
15187
15188         * modules/locale: New file.
15189         * lib/locale_.h: New file.
15190         * m4/locale_h.m4: New file.
15191
15192 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
15193             Bruno Haible  <bruno@clisp.org>
15194
15195         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
15196         be determined, test for availability of the copysignf, copysign,
15197         copysignl functions.
15198         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
15199         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
15200         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
15201
15202 2007-04-09  Eric Blake  <ebb9@byu.net>
15203
15204         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
15205         * modules/stdio (Makefile.am): Support fflush.
15206         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
15207         * modules/fflush: New file.
15208         * lib/fflush.c: Likewise.
15209         * m4/fflush.m4: Likewise.
15210         * modules/fflush-tests: New test.
15211         * tests/test-fflush.c: Likewise.
15212         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
15213
15214 2007-04-06  Bruno Haible  <bruno@clisp.org>
15215
15216         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
15217         (VASNPRINTF): Use signbit for faster determination whether to print a
15218         minus sign.
15219         * modules/vasnprintf (Files): Remove lib/float+.h.
15220         * modules/fprintf-posix (Depends-on): Add signbit.
15221         * modules/snprintf-posix (Depends-on): Likewise.
15222         * modules/sprintf-posix (Depends-on): Likewise.
15223         * modules/vasnprintf-posix (Depends-on): Likewise.
15224         * modules/vasprintf-posix (Depends-on): Likewise.
15225         * modules/vfprintf-posix (Depends-on): Likewise.
15226         * modules/vsnprintf-posix (Depends-on): Likewise.
15227         * modules/vsprintf-posix (Depends-on): Likewise.
15228
15229 2007-04-06  Bruno Haible  <bruno@clisp.org>
15230
15231         * tests/test-frexp.c (main): Test also the sign bit of zero results.
15232         * tests/test-frexpl.c (main): Likewise.
15233         * tests/test-ldexpl.c (main): Likewise.
15234         * modules/frexp-tests (Depends-on): Add signbit.
15235         * modules/frexpl-tests (Depdends-on): Likewise.
15236         * modules/ldexpl-tests (Depdends-on): Likewise.
15237
15238 2007-04-06  Bruno Haible  <bruno@clisp.org>
15239
15240         * modules/signbit-tests: New file.
15241         * tests/test-signbit.c: New file.
15242
15243         * modules/signbit: New file.
15244         * lib/signbitf.c: New file.
15245         * lib/signbitd.c: New file.
15246         * lib/signbitl.c: New file.
15247         * m4/signbit.m4: New file.
15248         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
15249         (signbit): New macro.
15250         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
15251         REPLACE_SIGNBIT.
15252         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
15253         REPLACE_FREXPL into math.h.
15254
15255 2007-04-06  Bruno Haible  <bruno@clisp.org>
15256
15257         * modules/isnanf-nolibm-tests: New file.
15258         * tests/test-isnanf.c: New file.
15259
15260         * modules/isnanf-nolibm: New file.
15261         * lib/isnanf.h: New file.
15262         * lib/isnanf.c: New file.
15263         * lib/isnan.c: Consider the USE_FLOAT macro.
15264         * m4/isnanf.m4: New file.
15265
15266 2007-04-06  Bruno Haible  <bruno@clisp.org>
15267
15268         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
15269         (Link): New section.
15270
15271         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
15272
15273 2007-04-06  Bruno Haible  <bruno@clisp.org>
15274
15275         Assume the 'long double' type.
15276         * m4/longdouble.m4: Remove file.
15277         * config/srclist.txt: Don't mention longdouble.m4.
15278         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
15279         * lib/float+.h: Likewise.
15280         * lib/frexp.c: Likewise.
15281         * lib/printf-args.h: Likewise.
15282         * lib/printf-args.c: Likewise.
15283         * lib/printf-frexp.c: Likewise.
15284         * lib/printf-parse.c: Likewise.
15285         * lib/vasnprintf.c: Likewise.
15286         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
15287         * m4/intl.m4: Likewise.
15288         * m4/isnanl.m4: Likewise.
15289         * m4/printf.m4: Likewise.
15290         * m4/printf-frexpl.m4: Likewise.
15291         * m4/vasnprintf.m4: Likewise.
15292         * modules/allocsa (Files): Remove m4/longdouble.m4.
15293         * modules/gettext (Files): Likewise.
15294         * modules/relocatable-prog-wrapper (Files): Likewise.
15295         * modules/vasnprintf (Files): Likewise.
15296         * modules/isnanl (Files): Likewise.
15297         (Include): Simplify.
15298         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
15299         (Include): Simplify.
15300         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
15301         (Include): Simplify.
15302         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
15303         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
15304         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
15305         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
15306         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
15307         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
15308         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
15309         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
15310         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
15311         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
15312         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
15313         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
15314         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
15315         * tests/test-isnanl.c: Likewise.
15316         * tests/test-snprintf-posix.h: Likewise.
15317         * tests/test-sprintf-posix.h: Likewise.
15318         * tests/test-vasnprintf-posix.c: Likewise.
15319         * tests/test-vasnprintf-posix2.c: Likewise.
15320         * tests/test-vasprintf-posix.c: Likewise.
15321
15322 2007-04-06  Bruno Haible  <bruno@clisp.org>
15323
15324         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
15325         * lib/math_.h [__DECC]: Include the overridden include file through
15326         #include_next, outside the double-inclusion guard.
15327         * lib/stdio_.h [__DECC]: Likewise.
15328         * lib/stdlib_.h [__DECC]: Likewise.
15329         * lib/string_.h [__DECC]: Likewise.
15330         * lib/time_.h [__DECC]: Likewise.
15331         * lib/wchar_.h [__DECC]: Likewise.
15332         * lib/wctype_.h [__DECC]: Likewise.
15333         * lib/inttypes_.h [__DECC]: Likewise.
15334         Reported by Albert Chin <china@thewrittenword.com> in
15335         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
15336
15337 2007-04-04  Eric Blake  <ebb9@byu.net>
15338
15339         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
15340         1.5.x.
15341
15342 2007-04-04  Bruno Haible  <bruno@clisp.org>
15343
15344         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
15345         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
15346
15347 2007-04-04  Bruno Haible  <bruno@clisp.org>
15348
15349         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
15350         results for "%010a" of Infinity and NaN.
15351         * tests/test-vasprintf-posix.c (test_function): Likewise.
15352         * tests/test-snprintf-posix.h (test_function): Likewise.
15353         * tests/test-sprintf-posix.h (test_function): Likewise.
15354         * tests/test-fprintf-posix.h (test_function): Remove these tests.
15355         * tests/test-printf-posix.h (test_function): Likewise.
15356         * tests/test-fprintf-posix.out: Update.
15357         Needed for FreeBSD 6.1.
15358
15359 2007-04-04  Bruno Haible  <bruno@clisp.org>
15360
15361         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
15362         directly used by the gnulib modules nor by gnulib-tool.
15363
15364 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
15365
15366         * DEPENDENCIES: Give overall description of version dependency
15367         desirability.  Use more-typical names for apps.
15368         Add shell, coreutils, diffutils, grep, tar, gzip.
15369
15370 2007-04-04  Simon Josefsson  <simon@josefsson.org>
15371
15372         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
15373
15374 2007-04-04  Karl Berry  <karl@gnu.org>
15375
15376         * MODULES.html.sh (func_module): missing '.
15377
15378 2007-04-03  Bruno Haible  <bruno@clisp.org>
15379
15380         * modules/argmatch-tests (Makefile.am): New variable
15381         test_argmatch_LDADD.
15382         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
15383         * modules/array-list-tests (Makefile.am): New variable
15384         test_array_list_LDADD.
15385         * modules/array-oset-tests (Makefile.am): New variable
15386         test_array_oset_LDADD.
15387         * modules/avltree-list-tests (Makefile.am): New variable
15388         test_avltree_list_LDADD.
15389         * modules/avltree-oset-tests (Makefile.am): New variable
15390         test_avltree_oset_LDADD.
15391         * modules/avltreehash-list-tests (Makefile.am): New variable
15392         test_avltreehash_list_LDADD.
15393         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
15394         test_canonicalize_lgpl_LDADD.
15395         * modules/carray-list-tests (Makefile.am): New variable
15396         test_carray_list_LDADD.
15397         * modules/dirname-tests (Makefile.am): New variable
15398         test_dirname_LDADD.
15399         * modules/linked-list-tests (Makefile.am): New variable
15400         test_linked_list_LDADD.
15401         * modules/linkedhash-list-tests (Makefile.am): New variable
15402         test_linkedhash_list_LDADD.
15403         * modules/rbtree-list-tests (Makefile.am): New variable
15404         test_rbtree_list_LDADD.
15405         * modules/rbtree-oset-tests (Makefile.am): New variable
15406         test_rbtree_oset_LDADD.
15407         * modules/rbtreehash-list-tests (Makefile.am): New variable
15408         test_rbtreehash_list_LDADD.
15409         * modules/xvasprintf-tests (Makefile.am): New variable
15410         test_xvasprintf_LDADD.
15411         Reported by Eric Blake.
15412
15413 2007-04-03  Eric Blake  <ebb9@byu.net>
15414
15415         * DEPENDENCIES: Weaken m4 requirements.
15416
15417 2007-04-03  Bruno Haible  <bruno@clisp.org>
15418
15419         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
15420         * modules/isnanl-tests (configure.ac): Likewise.
15421
15422 2007-04-03  Ben Pfaff  <blp@gnu.org>
15423
15424         * modules/iconv_open: Add $(srcdir)/ to source directory
15425         references in Makefile fragments that call gperf, to fix VPATH
15426         builds.
15427
15428 2007-04-03  Bruno Haible  <bruno@clisp.org>
15429
15430         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
15431         * lib/ldexpl.c: Undo last change.
15432
15433 2007-04-03  Bruno Haible  <bruno@clisp.org>
15434
15435         * modules/printf-frexpl (Depends-on): Undo last change.
15436         (Files): Add m4/ldexpl.m4.
15437
15438 2007-04-03  Bruno Haible  <bruno@clisp.org>
15439
15440         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
15441         * modules/isnanl (Link): New section.
15442
15443         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
15444         * modules/frexp (Link): New section.
15445
15446         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
15447         * modules/frexpl (Link): New section.
15448
15449         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
15450         * modules/ldexpl (Link): New section.
15451
15452 2007-04-03  Bruno Haible  <bruno@clisp.org>
15453
15454         * modules/TEMPLATE-EXTENDED: New file.
15455         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
15456
15457 2007-04-03  Bruno Haible  <bruno@clisp.org>
15458
15459         * DEPENDENCIES: New file.
15460         Suggested by Simon Josefsson.
15461
15462 2007-04-03  Bruno Haible  <bruno@clisp.org>
15463
15464         * doc/gnulib.texi: Escape @.
15465
15466 2007-04-03  James Youngman  <jay@gnu.org>
15467         and Paul Eggert  <eggert@cs.ucla.edu>
15468
15469         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
15470         birthtime on all systems that have birthtime, not just those which
15471         use st_birthtimensec rather than st_birthtim.  Putting zero in
15472         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
15473         that the birth time is not available for files on an NFS mount.
15474
15475 2007-04-03  Simon Josefsson  <simon@josefsson.org>
15476
15477         * modules/memxor: Move back from crypto/, suggested by Bruno.
15478         * modules/crypto/hmac-sha1: Fix memxor dependency.
15479
15480         * modules/crypto/gc: Moved from ../.
15481
15482 2007-04-02  Eric Blake  <ebb9@byu.net>
15483
15484         * lib/ldexpl.c (includes): Avoid libm.
15485
15486         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
15487
15488 2007-04-02  Bruno Haible  <bruno@clisp.org>
15489
15490         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
15491         on IRIX.
15492
15493 2007-04-02  Bruno Haible  <bruno@clisp.org>
15494
15495         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
15496         x86 or x86_64 platforms running MacOS X.
15497         Reported by Ryan Schmidt <@ryandesign.com>.
15498
15499 2007-04-02  Bruno Haible  <bruno@clisp.org>
15500
15501         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
15502         i386.
15503
15504 2007-04-01  Simon Josefsson  <simon@josefsson.org>
15505
15506         * modules/crypto/arcfour: Moved from ../.
15507         * modules/crypto/arcfour-tests: Moved from ../.
15508         * modules/crypto/arctwo: Moved from ../.
15509         * modules/crypto/arctwo-tests: Moved from ../.
15510         * modules/crypto/des: Moved from ../.
15511         * modules/crypto/des-tests: Moved from ../.
15512         * modules/crypto/gc-arcfour: Moved from ../.
15513         * modules/crypto/gc-arcfour-tests: Moved from ../.
15514         * modules/crypto/gc-arctwo: Moved from ../.
15515         * modules/crypto/gc-arctwo-tests: Moved from ../.
15516         * modules/crypto/gc-des: Moved from ../.
15517         * modules/crypto/gc-des-tests: Moved from ../.
15518         * modules/crypto/gc-hmac-md5: Moved from ../.
15519         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
15520         * modules/crypto/gc-hmac-sha1: Moved from ../.
15521         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
15522         * modules/crypto/gc-md2: Moved from ../.
15523         * modules/crypto/gc-md2-tests: Moved from ../.
15524         * modules/crypto/gc-md4: Moved from ../.
15525         * modules/crypto/gc-md4-tests: Moved from ../.
15526         * modules/crypto/gc-md5: Moved from ../.
15527         * modules/crypto/gc-md5-tests: Moved from ../.
15528         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
15529         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
15530         * modules/crypto/gc-random: Moved from ../.
15531         * modules/crypto/gc-rijndael: Moved from ../.
15532         * modules/crypto/gc-rijndael-tests: Moved from ../.
15533         * modules/crypto/gc-sha1: Moved from ../.
15534         * modules/crypto/gc-sha1-tests: Moved from ../.
15535         * modules/crypto/gc-tests: Moved from ../.
15536         * modules/crypto/hmac-md5: Moved from ../.
15537         * modules/crypto/hmac-md5-tests: Moved from ../.
15538         * modules/crypto/hmac-sha1: Moved from ../.
15539         * modules/crypto/hmac-sha1-tests: Moved from ../.
15540         * modules/crypto/md2: Moved from ../.
15541         * modules/crypto/md2-tests: Moved from ../.
15542         * modules/crypto/md4: Moved from ../.
15543         * modules/crypto/md4-tests: Moved from ../.
15544         * modules/crypto/md5: Moved from ../.
15545         * modules/crypto/md5-tests: Moved from ../.
15546         * modules/crypto/memxor: Moved from ../.
15547         * modules/crypto/rijndael: Moved from ../.
15548         * modules/crypto/rijndael-tests: Moved from ../.
15549         * modules/crypto/sha1: Moved from ../.
15550
15551 2007-03-30  James Youngman  <jay@gnu.org>
15552
15553         * tests/test-stat-time.c (prepare_test): use chmod() rather than
15554         rename() to change the ctime of a file (because ctime is unaffected
15555         by rename on jfs2 on AIX 5.1).
15556         (main): Start by doing cleanup, in case a previous run failed leaving
15557         test files behind.
15558
15559 2007-03-31  Bruno Haible  <bruno@clisp.org>
15560
15561         Support old proprietary implementations of iconv.
15562         * modules/iconv_open: New file.
15563         * lib/iconv_.h: New file.
15564         * m4/iconv_h.m4: New file.
15565         * lib/iconv_open.c: New file.
15566         * lib/iconv_open-aix.gperf: New file.
15567         * lib/iconv_open-hpux.gperf: New file.
15568         * lib/iconv_open-irix.gperf: New file.
15569         * lib/iconv_open-osf.gperf: New file.
15570         * m4/iconv_open.m4: New file.
15571         * modules/linebreak (Depends-on): Add iconv_open.
15572         * modules/striconv (Depends-on): Likewise.
15573         * modules/striconveh (Depends-on): Likewise.
15574         * modules/unicodeio (Depends-on): Likewise.
15575         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
15576         (iconv_t)(-1).
15577         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
15578         conversion if cd is (iconv_t)(-1).
15579         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
15580         is not possible.
15581
15582 2007-03-31  Bruno Haible  <bruno@clisp.org>
15583
15584         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
15585         work on Solaris either. Protect also second use of "autodetect_jp".
15586
15587 2007-03-31  Bruno Haible  <bruno@clisp.org>
15588
15589         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
15590         the function is not present.
15591
15592 2007-03-31  Bruno Haible  <bruno@clisp.org>
15593
15594         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
15595         the function is not present.
15596
15597 2007-03-31  Bruno Haible  <bruno@clisp.org>
15598
15599         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
15600         a bug in HP-UX iconv_open().
15601
15602 2007-03-31  Bruno Haible  <bruno@clisp.org>
15603
15604         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
15605         (Mathematics <math.h>): New section, add fpieee.
15606         (Input/output <stdio.h>): Add fseterr.
15607         (Mathematics <math.h>): New section, add printf-frexp.
15608         (Container data structures): Add sublist.
15609         (Core language properties): Add fpucw, inline.
15610         (Functions for greatest-width integer types <inttypes.h>): Add
15611         imaxabs, imaxdiv, inttypes.
15612         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
15613         isnanl-nolibm, ldexp.
15614         (Mathematics <math.h>): New section, add printf-frexpl.
15615         (Support for systems lacking POSIX:2001): Add fprintf-posix,
15616         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
15617         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
15618         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
15619         (Unicode string functions): Add unistr/u*-mbtoucr.
15620         (Java): Add javacomp-script, javaexec-script.
15621         (C#): Add csharpcomp-script, csharpexec-script.
15622         (Support for building libraries and executables): Add havelib,
15623         relocatable-*.
15624         (Support for maintaining and releasing projects): Renamed from
15625         'Support for maintaining and release projects'. Add announce-gen.
15626
15627 2007-03-31  Bruno Haible  <bruno@clisp.org>
15628
15629         * README: Talk primarily about git.
15630         (git and CVS): Renamed from CVS.
15631         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
15632         gnulib is available through git.
15633         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
15634
15635 2007-03-30  Bruno Haible  <bruno@clisp.org>
15636
15637         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
15638         * lib/poll_.h: Likewise.
15639         * lib/stat_.h: Likewise.
15640         * lib/sys_time_.h: Likewise.
15641         * lib/sysexit_.h: Likewise.
15642         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
15643         * lib/stdbool_.h: Likewise.
15644         * lib/byteswap_.h: Add double-inclusion guard.
15645
15646 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
15647
15648         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
15649
15650 2007-03-30  Karl Berry  <karl@gnu.org>
15651
15652         * config/srclist-update: double space after USA in the license
15653         substitution, since that's how it's usually (?) written.
15654
15655 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
15656
15657         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
15658         reported by Bruno Haible.
15659
15660 2007-03-29  Bruno Haible  <bruno@clisp.org>
15661
15662         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
15663         a bug in AIX iconv().
15664
15665 2007-03-29  Bruno Haible  <bruno@clisp.org>
15666
15667         * modules/ldexpl-tests: New file.
15668         * tests/test-ldexpl.c: New file.
15669
15670 2007-03-29  Bruno Haible  <bruno@clisp.org>
15671
15672         * lib/ldexpl.c: Include fpucw.h.
15673         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
15674         multiplication.
15675         * modules/ldexpl (Depends-on): Add fpucw.
15676
15677 2007-03-29  Bruno Haible  <bruno@clisp.org>
15678
15679         * modules/ldexpl: New file.
15680         * m4/ldexpl.m4: New file.
15681         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
15682         set.
15683         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
15684         REPLACE_LDEXPL.
15685         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
15686         REPLACE_LDEXPL.
15687         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
15688         gl_FUNC_LDEXPL_WORKS.
15689         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
15690         * modules/mathl (Files): Remove lib/ldexpl.c.
15691         (Depends-on): Add ldexpl.
15692
15693 2007-03-29  Bruno Haible  <bruno@clisp.org>
15694
15695         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
15696
15697 2007-03-29  Bruno Haible  <bruno@clisp.org>
15698
15699         * tests/test-striconveh.c (main): Don't assume that a direct conversion
15700         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
15701         and possibly also HP-UX.
15702         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
15703         work on AIX, IRIX, HP-UX, OSF/1.
15704         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
15705         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
15706         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
15707         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
15708         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
15709         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
15710
15711 2007-03-29  Bruno Haible  <bruno@clisp.org>
15712
15713         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
15714
15715 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
15716
15717         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
15718         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
15719
15720 2007-03-29  Eric Blake  <ebb9@byu.net>
15721
15722         * lib/acl-internal.h: Remove redundant include.
15723         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
15724         Cygwin when a file is locked.
15725
15726 2007-03-29  Bruno Haible  <bruno@clisp.org>
15727
15728         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
15729         file.
15730         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
15731
15732 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
15733
15734         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
15735         try to remove a parent directory if the child couldn't be removed
15736         (except for the first rmdir, which could fail because the child
15737         doesn't exist).  Problem reported by Jeff Blaine in
15738         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
15739
15740 2007-03-28  Bruno Haible  <bruno@clisp.org>
15741
15742         * lib/striconveh.c (utf8conv_carefully): New function.
15743         (mem_cd_iconveh_internal): Invoke it.
15744
15745 2007-03-28  Bruno Haible  <bruno@clisp.org>
15746
15747         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
15748         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
15749         input.
15750         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
15751         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
15752         unistr/u8-uctomb.
15753
15754 2007-03-28  Bruno Haible  <bruno@clisp.org>
15755
15756         * modules/unistr/u8-mbtoucr: New file.
15757         * lib/unistr/u8-mbtoucr.c: New file.
15758         * modules/unistr/u16-mbtoucr: New file.
15759         * lib/unistr/u16-mbtoucr.c: New file.
15760         * modules/unistr/u16-mbtoucr: New file.
15761         * lib/unistr/u16-mbtoucr.c: New file.
15762         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
15763
15764 2007-03-27  Simon Josefsson  <simon@josefsson.org>
15765             Bruno Haible  <bruno@clisp.org>
15766
15767         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
15768         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
15769         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
15770
15771         * m4/stdio_h.m4: Add stubs for vasprintf too.
15772
15773         * modules/stdio: Support vasprintf in sed command.
15774
15775         * modules/vasprintf: Depend on stdio for prototypes.  Remove
15776         vasprintf.h.  Add stdio module indicator.
15777
15778         * lib/stdio_.h: Declare asprintf and vasprintf, based on
15779         vasprintf.h.
15780
15781         * lib/vasprintf.h: File removed.
15782
15783         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
15784         * lib/vasprintf.c: Ditto.
15785         * lib/xvasprintf.c: Ditto.
15786         * tests/test-vasprintf-posix.c: Ditto.
15787         * tests/test-vasprintf.c: Ditto.
15788
15789 2007-03-27  Bruno Haible  <bruno@clisp.org>
15790
15791         Make vasnprintf multithread-safe.
15792         * lib/vasnprintf.c (decimal_point_char): New function.
15793         (VASNPRINTF): Use it.
15794         Suggested by Simon Josefsson.
15795
15796 2007-03-27  Eric Blake  <ebb9@byu.net>
15797
15798         Support sub-second birthtime on cygwin.
15799         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
15800         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
15801         (get_stat_birthtime): Also work with st_birthtim.
15802
15803 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
15804
15805         * lib/stat-time.h (USE_BIRTHTIME): Remove.
15806         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
15807         (get_stat_birthtime_ns): Do not try to use "spare" fields.
15808         (get_stat_birthtime_ns): Simplify compile-time tests.
15809         (get_stat_birthtime): Change the API to look like
15810         get_stat_mtime etc., except return a negative tv_nsec on error.
15811         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
15812         Don't check for "spare" fields.
15813         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
15814         or for struct stat.st_birthtime, as these tests aren't used.
15815         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
15816
15817 2007-03-27  Bruno Haible  <bruno@clisp.org>
15818
15819         * lib/stat-time.h: Include <sys/stat.h>.
15820
15821 2007-03-27  James Youngman  <jay@gnu.org>
15822
15823         * lib/stat-time.h (get_stat_birthtime): New function for
15824           retrieving st_birthtime as provided by UFS2 (hence *BSD).
15825         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
15826           and its variants.
15827         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
15828         * modules/stat-time-test: New file.
15829         * tests/test-stat-time.c: New test, devised by Bruno Haible.
15830
15831 2007-03-26  Bruno Haible  <bruno@clisp.org>
15832
15833         Better support of signalling NaNs.
15834         * lib/atanl.c: Include isnanl.h.
15835         (atanl): Perform test for NaN at the beginning of the function and
15836         through a call to isnanl.
15837         * lib/cosl.c: Include isnanl.h.
15838         (cosl): Perform test for NaN at the beginning of the function and
15839         through a call to isnanl.
15840         * lib/ldexpl.c: Include isnanl.h.
15841         (ldexpl): Perform test for NaN through a call to isnanl.
15842         * lib/logl.c: Include isnanl.h.
15843         (logl): Perform test for NaN at the beginning of the function and
15844         through a call to isnanl.
15845         * lib/sinl.c: Include isnanl.h.
15846         (sinl): Perform test for NaN at the beginning of the function and
15847         through a call to isnanl.
15848         * lib/sqrtl.c: Include isnanl.h.
15849         (sqrtl): Perform test for NaN at the beginning of the function and
15850         through a call to isnanl.
15851         * lib/tanl.c: Include isnanl.h.
15852         (tanl): Perform test for NaN at the beginning of the function and
15853         through a call to isnanl.
15854         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
15855         * modules/mathl (Depends-on): Add isnanl.
15856
15857 2007-03-26  Eric Blake  <ebb9@byu.net>
15858
15859         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
15860         regression in logic sense of previous patch.
15861
15862 2007-03-26  Bruno Haible  <bruno@clisp.org>
15863
15864         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
15865         unportable shell command "if ! ...".
15866         Reported by Ralf Wildenhues.
15867
15868 2007-03-25  Bruno Haible  <bruno@clisp.org>
15869
15870         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
15871         <sysexits.h> file, and only add EX_CONFIG.
15872         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
15873         absolute file name and whether it is sufficient. Substitute also
15874         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
15875         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
15876         ABSOLUTE_SYSEXITS_H into sysexits.h.
15877
15878 2007-03-25  Bruno Haible  <bruno@clisp.org>
15879
15880         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
15881         hints is NULL.
15882
15883 2007-03-25  Bruno Haible  <bruno@clisp.org>
15884
15885         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
15886         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
15887
15888 2007-03-25  Bruno Haible  <bruno@clisp.org>
15889
15890         * lib/vasnprintf.c: Include langinfo.h.
15891         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
15892         multithread-safe.
15893         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
15894         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
15895         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
15896         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
15897         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
15898         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
15899         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
15900         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
15901         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
15902         Reported by Simon Josefsson.
15903
15904 2007-03-25  Bruno Haible  <bruno@clisp.org>
15905
15906         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
15907         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
15908         * modules/vasnprintf (Depends-on): Add stdint.
15909
15910 2007-03-25  Bruno Haible  <bruno@clisp.org>
15911
15912         * modules/fpieee: New file.
15913         * m4/fpieee.m4: New file.
15914         * modules/isnan-nolibm (Depends-on): Add fpieee.
15915         * modules/isnanl-nolibm (Depends-on): Add fpieee.
15916         * modules/isnanl (Depends-on): Add fpieee.
15917
15918 2007-03-25  Bruno Haible  <bruno@clisp.org>
15919
15920         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
15921
15922 2007-03-25  Bruno Haible  <bruno@clisp.org>
15923
15924         Avoid test failures on IRIX 6.5.
15925         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
15926         (main): Use it.
15927         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
15928         macros.
15929         (main): Use them.
15930
15931 2007-03-25  Bruno Haible  <bruno@clisp.org>
15932
15933         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
15934         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
15935         exists but doesn't work.
15936         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
15937         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
15938         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
15939         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
15940
15941 2007-03-25  Bruno Haible  <bruno@clisp.org>
15942
15943         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
15944         returns inf. Needed on IRIX 6.5.
15945
15946 2007-03-25  Bruno Haible  <bruno@clisp.org>
15947
15948         * tests/test-frexpl.c: Include isnanl-nolibm.h.
15949         (main): Use isnanl instead of x != x idiom.
15950         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
15951
15952         * tests/test-frexp.c: Include isnan.h.
15953         (main): Use isnan instead of x != x idiom.
15954         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
15955
15956 2007-03-25  Bruno Haible  <bruno@clisp.org>
15957
15958         * tests/test-frexp.c (NaN): New function/macro.
15959         (main): Use it instead of 0.0 / 0.0.
15960         * tests/test-isnan.c (NaN): New function/macro.
15961         (main): Use it instead of 0.0 / 0.0.
15962         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
15963         (test_function): Use it instead of 0.0 / 0.0.
15964         * tests/test-vasprintf-posix.c (NaN): New function/macro.
15965         (test_function): Use it instead of 0.0 / 0.0.
15966         * tests/test-snprintf-posix.h (NaN): New function/macro.
15967         (test_function): Use it instead of 0.0 / 0.0.
15968         * tests/test-sprintf-posix.h (NaN): New function/macro.
15969         (test_function): Use it instead of 0.0 / 0.0.
15970         * tests/test-fprintf-posix.h (NaN): New function/macro.
15971         (test_function): Use it instead of 0.0 / 0.0.
15972         * tests/test-printf-posix.h (NaN): New function/macro.
15973         (test_function): Use it instead of 0.0 / 0.0.
15974
15975         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
15976
15977 2007-03-25  Bruno Haible  <bruno@clisp.org>
15978
15979         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
15980
15981 2007-03-25  Bruno Haible  <bruno@clisp.org>
15982
15983         * lib/regexec.c (merge_state_with_log): Make static.
15984
15985 2007-03-25  Bruno Haible  <bruno@clisp.org>
15986
15987         * lib/trigl.c (kernel_rem_pio2): Make static.
15988
15989 2007-03-25  Bruno Haible  <bruno@clisp.org>
15990
15991         * lib/sincosl.c (sincosl_table): Make static.
15992
15993 2007-03-25  Bruno Haible  <bruno@clisp.org>
15994
15995         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
15996         if the compiler does not support C99.
15997
15998 2007-03-25  Bruno Haible  <bruno@clisp.org>
15999
16000         * modules/time (Makefile.am): Ensure all rule action lines start with a
16001         tab.
16002
16003 2007-03-24  Bruno Haible  <bruno@clisp.org>
16004
16005         * modules/tsearch-tests: New file.
16006         * tests/test-tsearch.sh: New file.
16007         * tests/test-tsearch.c: New file, mostly copied from glibc.
16008
16009         * modules/search-tests: New file.
16010         * tests/test-search.c: New file.
16011
16012         * modules/search: New file.
16013         * lib/search_.h: New file, incorporating lib/tsearch.h.
16014         * m4/search_h.m4: New file.
16015         * lib/tsearch.h: Remove file.
16016         * lib/tsearch.c: Include search.h instead of tsearch.h.
16017         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
16018         HAVE_TSEARCH.
16019         * modules/tsearch (Files): Remove lib/tsearch.h.
16020         (Depends-on): Add search.
16021         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
16022         (Include): Change tsearch.h into search.h.
16023
16024 2007-03-24  Bruno Haible  <bruno@clisp.org>
16025
16026         * modules/fpucw: New file.
16027         * lib/fpucw.h: New file.
16028         * lib/frexp.c: Include fpucw.h.
16029         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
16030         (FUNC): Use them.
16031         * lib/printf-frexp.c: Include fpucw.h.
16032         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
16033         (FUNC): Use them.
16034         * lib/vasnprintf.c: Include fpucw.h.
16035         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
16036         'long double' calculations.
16037         * tests/test-frexpl.c: Include fpucw.h.
16038         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
16039         * tests/test-printf-frexpl.c: Include fpucw.h.
16040         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
16041         * modules/frexpl (Depends-on): Add fpucw.
16042         * modules/printf-frexpl (Depends-on): Likewise.
16043         * modules/fprintf-posix (Depends-on): Likewise.
16044         * modules/snprintf-posix (Depends-on): Likewise.
16045         * modules/sprintf-posix (Depends-on): Likewise.
16046         * modules/vasnprintf-posix (Depends-on): Likewise.
16047         * modules/vasprintf-posix (Depends-on): Likewise.
16048         * modules/vfprintf-posix (Depends-on): Likewise.
16049         * modules/vsnprintf-posix (Depends-on): Likewise.
16050         * modules/vsprintf-posix (Depends-on): Likewise.
16051         * modules/frexpl-tests (Depends-on): Likewise.
16052         * modules/printf-frexpl-tests (Depends-on): Likewise.
16053
16054 2007-03-24  Bruno Haible  <bruno@clisp.org>
16055
16056         * lib/float+.h: New file.
16057         * lib/isnan.c: Include float+.h.
16058         (SIZE): New macro.
16059         (FUNC): Compare only SIZE bytes of the value.
16060         * lib/vasnprintf.c: Include float+.h.
16061         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
16062         SIZEOF_LDBL or SIZEOF_DBL bytes.
16063         * modules/isnan-nolibm (Files): Add lib/float+.h.
16064         * modules/isnanl-nolibm (Files): Add lib/float+.h.
16065         * modules/isnanl (Files): Add lib/float+.h.
16066         * modules/vasnprintf (Files): Add lib/float+.h.
16067
16068 2007-03-24  Bruno Haible  <bruno@clisp.org>
16069
16070         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
16071         include isnanl-nolibm.h.
16072
16073 2007-03-24  Bruno Haible  <bruno@clisp.org>
16074
16075         * tests/test-read-file.c (main): Don't produce spurious output for
16076         expected situations. Make the test fail if it encountered unexpected
16077         results.
16078
16079 2007-03-24  Bruno Haible  <bruno@clisp.org>
16080
16081         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
16082         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
16083
16084 2007-03-24  Bruno Haible  <bruno@clisp.org>
16085
16086         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
16087
16088 2007-03-24  Bruno Haible  <bruno@clisp.org>
16089
16090         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
16091         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
16092
16093         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
16094         * modules/utf8-ucs4: Turn into a symbolic link to module
16095         unistr/u8-mbtouc.
16096
16097         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
16098         utf8-ucs4-unsafe.
16099         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
16100         unistr/u8-mbtouc-unsafe.
16101
16102         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
16103         * modules/utf16-ucs4: Turn into a symbolic link to module
16104         unistr/u16-mbtouc.
16105
16106         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
16107         utf16-ucs4-unsafe.
16108         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
16109         unistr/u16-mbtouc-unsafe.
16110
16111         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
16112         * modules/ucs4-utf8: Turn into a symbolic link to module
16113         unistr/u8-ubtomb.
16114
16115         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
16116         * modules/ucs4-utf16: Turn into a symbolic link to module
16117         unistr/u16-ubtomb.
16118
16119 2007-03-24  Bruno Haible  <bruno@clisp.org>
16120
16121         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
16122         Enable the function only if HAVE_INLINE.
16123         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
16124         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
16125         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
16126         Enable the function only if HAVE_INLINE.
16127         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
16128         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
16129         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
16130         Enable the function only if HAVE_INLINE.
16131         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
16132         Enable the function only if HAVE_INLINE.
16133         * modules/utf8-ucs4: Update.
16134         * modules/utf8-ucs4-unsafe: Update.
16135         * modules/utf16-ucs4: Update.
16136         * modules/utf16-ucs4-unsafe: Update.
16137         * modules/ucs4-utf8: Update.
16138         * modules/ucs4-utf16: Update.
16139
16140 2007-03-24  Bruno Haible  <bruno@clisp.org>
16141
16142         * lib/utf8-ucs4.h: Remove file.
16143         * lib/utf8-ucs4-unsafe.h: Remove file.
16144         * lib/utf16-ucs4.h: Remove file.
16145         * lib/utf16-ucs4-unsafe.h: Remove file.
16146         * lib/ucs4-utf8.h: Remove file.
16147         * lib/ucs4-utf16.h: Remove file.
16148         * lib/unistr.h: Include their previous contents.
16149         * m4/utf-ucs4.m4: Remove file.
16150         * m4/ucs4-utf.m4: Remove file.
16151         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
16152         (Depends-on): Add unistr/base.
16153         (configure.ac): Remove gl_UTF_UCS4.
16154         (Makefile.am): Update.
16155         (Include): Change to unistr.h.
16156         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
16157         (Depends-on): Add unistr/base.
16158         (configure.ac): Remove gl_UTF_UCS4.
16159         (Makefile.am): Update.
16160         (Include): Change to unistr.h.
16161         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
16162         (Depends-on): Add unistr/base.
16163         (configure.ac): Remove gl_UTF_UCS4.
16164         (Makefile.am): Update.
16165         (Include): Change to unistr.h.
16166         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
16167         (Depends-on): Add unistr/base.
16168         (configure.ac): Remove gl_UTF_UCS4.
16169         (Makefile.am): Update.
16170         (Include): Change to unistr.h.
16171         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
16172         (Depends-on): Add unistr/base.
16173         (configure.ac): Remove gl_UCS4_UTF.
16174         (Makefile.am): Update.
16175         (Include): Change to unistr.h.
16176         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
16177         (Depends-on): Add unistr/base.
16178         (configure.ac): Remove gl_UCS4_UTF.
16179         (Makefile.am): Update.
16180         (Include): Change to unistr.h.
16181         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
16182         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
16183         utf8-ucs4-unsafe.h.
16184         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
16185         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
16186         utf16-ucs4-unsafe.h.
16187         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
16188         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
16189         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
16190         * lib/unistr/u8-strchr.c: Likewise.
16191         * lib/unistr/u8-strrchr.c: Likewise.
16192         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
16193         * lib/unistr/u16-strchr.c: Likewise.
16194         * lib/unistr/u16-strrchr.c: Likewise.
16195         * lib/striconveh.c: Update.
16196         * lib/linebreak.c: Update.
16197
16198 2007-03-24  Bruno Haible  <bruno@clisp.org>
16199
16200         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
16201         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
16202
16203 2007-03-22  Bruno Haible  <bruno@clisp.org>
16204
16205         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
16206
16207 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
16208
16209         * MODULES.html.sh (File system functions): New module write-any-file.
16210         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
16211         * m4/write-any-file.m4: New files.
16212
16213 2007-03-23  Eric Blake  <ebb9@byu.net>
16214
16215         * gnulib-tool: Rearrange space-tab sequences, since some editors
16216         like to eat them.
16217
16218 2007-03-23  Eric Blake  <ebb9@byu.net>
16219
16220         * lib/version-etc.c (version_etc_va): Update license wording to
16221         be more concise.  Recommended by Richard Stallman.
16222
16223 2007-03-22  Bruno Haible  <bruno@clisp.org>
16224
16225         * lib/poll.c (MSG_PEEK): New fallback definition.
16226
16227 2007-03-22  Bruno Haible  <bruno@clisp.org>
16228
16229         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
16230         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
16231         (main): Update.
16232         Fixes a compilation error on BeOS.
16233
16234 2007-03-22  Bruno Haible  <bruno@clisp.org>
16235
16236         * modules/frexpl-tests: New file.
16237         * tests/test-frexpl.c: New file.
16238
16239         * modules/frexpl: New file.
16240         * m4/frexpl.m4: New file.
16241         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
16242         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
16243         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
16244         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
16245         (Depends-on): Add frexpl. Remove isnanl-nolibm.
16246         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
16247
16248 2007-03-22  Bruno Haible  <bruno@clisp.org>
16249
16250         * lib/frexpl.c: Share code with lib/frexp.c.
16251         * modules/mathl (Files): Add lib/frexp.c.
16252         (Depends-on): Add isnanl-nolibm.
16253
16254 2007-03-22  Bruno Haible  <bruno@clisp.org>
16255
16256         * modules/printf-frexp (Files): Add m4/frexp.m4.
16257         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
16258         only if the found frexp function actually works.
16259
16260 2007-03-22  Bruno Haible  <bruno@clisp.org>
16261
16262         * lib/frexp.c: Remove older implementation that uses divisions.
16263
16264 2007-03-21  Bruno Haible  <bruno@clisp.org>
16265
16266         * modules/frexp-tests: New file.
16267         * tests/test-frexp.c: New file.
16268
16269         * modules/frexp: New file.
16270         * lib/frexp.c: New file.
16271         * m4/frexp.m4: New file.
16272         * lib/math_.h (frexp): New declaration.
16273         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
16274         REPLACE_FREXP.
16275         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
16276
16277 2007-03-21  Bruno Haible  <bruno@clisp.org>
16278
16279         * modules/isnanl-tests: New file.
16280         * tests/test-isnanl.c: New file.
16281
16282         * modules/isnanl: New file.
16283         * lib/isnanl.h: New file.
16284         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
16285         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
16286         gl_FUNC_ISNANL_WORKS.
16287         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
16288         New macros.
16289
16290 2007-03-21  Bruno Haible  <bruno@clisp.org>
16291
16292         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
16293         lib/isnanl.h.
16294         (Include): Update.
16295         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
16296         * lib/vasnprintf.c: Update.
16297         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
16298         tests/test-isnanl.h, remove tests/test-isnanl.c.
16299         (Makefile.am): Update.
16300         * tests/test-isnanl-nolibm.c: New file.
16301         * tests/test-isnanl.h: New file.
16302         * tests/test-isnanl.c: Remove file.
16303
16304 2007-03-21  Jim Meyering  <jim@meyering.net>
16305
16306         When trying to open ".", treat ESTALE like EACCES.
16307         * lib/savewd.c (savewd_save): Resort to forking not just upon
16308         failure with EACCES, but also when errno is ESTALE.
16309
16310 2007-03-20  Bruno Haible  <bruno@clisp.org>
16311
16312         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
16313         Needed on AIX 5.1. Reported by Matthew Woehlke.
16314
16315 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
16316
16317         Suggestions by Bruno Haible:
16318         * lib/acl-internal.h: Include "gettext.h" rather than rolling
16319         our own.
16320         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
16321         * modules/acl (Depends-on): Add gettext.
16322
16323 2007-03-19  Bruno Haible  <bruno@clisp.org>
16324
16325         * modules/iconvme: Remove file.
16326         * lib/iconvme.h: Remove file.
16327         * lib/iconvme.c: Remove file.
16328         * m4/iconvme.m4: Remove file.
16329
16330 2007-03-19  Bruno Haible  <bruno@clisp.org>
16331
16332         * doc/relocatable-maint.texi: Break long shell script line.
16333         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
16334
16335 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
16336
16337         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
16338         handle file_has_acl.
16339         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
16340         * lib/acl.c: Move header inclusions and related macro defns into
16341         lib/acl-internal.h.
16342         (S_ISLNK): Remove defn, since that's now done for us.
16343         (file_has_acl): Move to lib/file-has-acl.c.
16344         Call acl_trivial if available.  This is the crucial part of the fix.
16345         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
16346         shared within the library.  Rewrite a bit, partly to make it compatible
16347         with the GNU coding style.
16348         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
16349         Remove unnecessary double-quotes.
16350         Don't test for acl_to_text; the build will catch that.
16351         Replace acl_entries if it doesn't exist and it is needed.
16352         Check for -lsec and acl_trivial (as used on Solaris 10).
16353         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
16354         lib/file-has-acl.c.
16355         (Depends-on): Add sys_stat, for S_ISLNK.
16356
16357 2007-03-19  Ben Pfaff  <blp@gnu.org>
16358
16359         * doc/gnulib.texi: Fix typos.
16360         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
16361
16362 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
16363
16364         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
16365         If size is zero here, buf must be zero.
16366
16367 2007-03-19  Simon Josefsson  <simon@josefsson.org>
16368
16369         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
16370         <bruno@clisp.org>.
16371
16372 2007-03-18  Bruno Haible  <bruno@clisp.org>
16373
16374         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
16375         Suggested by Eric Blake.
16376
16377 2007-03-18  Ben Pfaff  <blp@gnu.org>
16378
16379         * doc/relocatable.texi: Recommend using as prefix a directory
16380         that does not exist and will never be created.  Based on
16381         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
16382         and others.
16383
16384 2007-03-17  Bruno Haible  <bruno@clisp.org>
16385
16386         * lib/fchownat.c: Include lchown.h.
16387
16388 2007-03-17  Bruno Haible  <bruno@clisp.org>
16389
16390         Fix endless loop when the given allocated size was > INT_MAX.
16391         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
16392         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
16393         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
16394         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
16395         * lib/sprintf.c (sprintf): Likewise.
16396
16397 2007-03-17  Bruno Haible  <bruno@clisp.org>
16398
16399         * tests/test-argp-2.sh (func_compare): Output a context diff.
16400
16401 2007-03-17  Bruno Haible  <bruno@clisp.org>
16402
16403         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
16404         locale's decimal-point character.
16405
16406 2007-03-17  Bruno Haible  <bruno@clisp.org>
16407
16408         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
16409         before comparing it. Needed because on some platforms (e.g. x86) a
16410         'long double' occupies less bytes than sizeof (long double).
16411
16412 2007-03-17  Bruno Haible  <bruno@clisp.org>
16413
16414         * tests/test-crc.c (main): Make printf statements 64-bit clean.
16415         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
16416         * tests/test-getaddrinfo.c (simple): Likewise.
16417         * tests/test-read-file.c (main): Likewise.
16418
16419 2007-03-17  Bruno Haible  <bruno@clisp.org>
16420
16421         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
16422
16423 2007-03-17  Bruno Haible  <bruno@clisp.org>
16424
16425         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
16426         unused variable.
16427
16428 2007-03-17  Bruno Haible  <bruno@clisp.org>
16429
16430         * tests/test-c-strcasecmp.c: Include c-strcase.h.
16431         * tests/test-c-strncasecmp.c: Likewise.
16432
16433 2007-03-17  Bruno Haible  <bruno@clisp.org>
16434
16435         * modules/stdlib (Depends-on): Add unistd.
16436         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
16437         Needed for MacOS X 10.3.
16438
16439 2007-03-17  Bruno Haible  <bruno@clisp.org>
16440
16441         * lib/unistr/u-strdup.h: Include <stdlib.h>.
16442
16443 2007-03-17  Bruno Haible  <bruno@clisp.org>
16444
16445         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
16446
16447 2007-03-17  Bruno Haible  <bruno@clisp.org>
16448
16449         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
16450         to reflect files copied from gnulib (with or without modifications).
16451         Suggested by Jim Meyering.
16452
16453 2007-03-17  Eric Blake  <ebb9@byu.net>
16454
16455         * NEWS: Document stdlib change from 2007-02-18.
16456
16457 2007-03-17  Jim Meyering  <jim@meyering.net>
16458
16459         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
16460         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
16461         someone uses a name containing shell meta-characters.
16462         Reported by Alfred M. Szmidt.
16463
16464         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
16465
16466 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
16467
16468         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
16469         and copy gettext configuration files only if configure.ac contains
16470         a use of AM_GNU_GETTEXT_VERSION.
16471
16472 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
16473
16474         * build-aux/bootstrap (gnulib_name): New variable.
16475         (gnulib_tool_options): Use it.
16476
16477 2007-03-13  Simon Josefsson  <simon@josefsson.org>
16478
16479         * tests/test-des.c: Use new namespace.
16480
16481 2007-03-15  Bruno Haible  <bruno@clisp.org>
16482
16483         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
16484         Reported by James Youngman <jay@gnu.org>.
16485
16486 2007-03-15  Bruno Haible  <bruno@clisp.org>
16487
16488         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
16489         declared prototype. Needed with cc on OSF/1 5.1.
16490
16491 2007-03-15  Bruno Haible  <bruno@clisp.org>
16492
16493         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
16494         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
16495         (struct gl_list_implementation): Add dispose_fn argument to the
16496         'create_empty', 'create' methods.
16497         (struct gl_list_impl_base): Add field 'dispose_fn'.
16498         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
16499         argument.
16500         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
16501         dispose_fn argument.
16502         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
16503         dispose_fn on the dropped values.
16504         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
16505         dispose_fn argument.
16506         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
16507         dropped values.
16508         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
16509         (gl_tree_remove_node): Call dispose_fn on the dropped value.
16510         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
16511         (gl_tree_remove_node): Call dispose_fn on the dropped value.
16512         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
16513         argument.
16514         (gl_tree_list_free): Call dispose_fn on the dropped values.
16515         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
16516         the dropped values.
16517         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
16518         Add dispose_fn argument.
16519         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
16520         Call dispose_fn on the dropped values.
16521         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
16522         Add dispose_fn argument.
16523         (gl_sublist_create): Initialize the 'dispose_fn' field.
16524         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
16525         * tests/test-array_list.c (main): Update.
16526         * tests/test-carray_list.c (main): Update.
16527         * tests/test-avltree_list.c (main): Update.
16528         * tests/test-rbtree_list.c (main): Update.
16529         * tests/test-avltreehash_list.c (main): Update.
16530         * tests/test-rbtreehash_list.c (main): Update.
16531         * tests/test-linked_list.c (main): Update.
16532         * tests/test-linkedhash_list.c (main): Update.
16533         * tests/test-array_oset.c (main): Update.
16534
16535 2007-03-15  Bruno Haible  <bruno@clisp.org>
16536
16537         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
16538         (gl_oset_create_empty): Add dispose_fn argument.
16539         (struct gl_oset_implementation): Add dispose_fn argument to
16540         'create_empty' method.
16541         (struct gl_oset_impl_base): Add dispose_fn field.
16542         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
16543         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
16544         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
16545         values.
16546         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
16547         (gl_tree_oset_free): Call dispose_fn on the dropped values.
16548         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
16549         dropped value.
16550         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
16551         dropped value.
16552         * tests/test-array_oset.c (main): Update.
16553         * tests/test-avltree_oset.c (main): Update.
16554         * tests/test-rbtree_oset.c (main): Update.
16555         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
16556
16557 2007-03-13  Bruno Haible  <bruno@clisp.org>
16558
16559         * tests/test-stdbool.c (i): Update after last patch.
16560
16561 2007-03-12  Bruno Haible  <bruno@clisp.org>
16562
16563         * lib/quotearg.c: Include <wctype.h> early, before the definition of
16564         the iswprint macro. Needed on Solaris 2.5.1.
16565
16566 2007-03-12  Bruno Haible  <bruno@clisp.org>
16567
16568         * tests/test-printf-frexp.c (main): Declare x as volatile.
16569
16570 2007-03-12  Simon Josefsson  <simon@josefsson.org>
16571
16572         * doc/gnulib.texi (Build robot for gnulib): New section.
16573
16574 2007-03-12  Jim Meyering  <jim@meyering.net>
16575
16576         * build-aux/bootstrap: New file.
16577         * build-aux/bootstrap.conf: New file, from coreutils.
16578
16579 2007-03-11  Bruno Haible  <bruno@clisp.org>
16580
16581         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
16582
16583 2007-03-12  Simon Josefsson  <simon@josefsson.org>
16584
16585         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
16586         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
16587         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
16588
16589 2007-03-11  Bruno Haible  <bruno@clisp.org>
16590
16591         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
16592         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
16593
16594 2007-03-11  Bruno Haible  <bruno@clisp.org>
16595
16596         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
16597         formula. Needed for SunPRO C 5.0.
16598
16599 2007-03-11  Bruno Haible  <bruno@clisp.org>
16600
16601         * modules/long-options (Depends-on): Add getopt.
16602
16603 2007-03-11  Bruno Haible  <bruno@clisp.org>
16604
16605         * modules/modechange (Depends-on): Add stdbool.
16606
16607 2007-03-11  Bruno Haible  <bruno@clisp.org>
16608
16609         * modules/i-ring (Depends-on): Add stdbool.
16610
16611 2007-03-11  Bruno Haible  <bruno@clisp.org>
16612
16613         * modules/gc-des (Depends-on): Add stdbool.
16614
16615 2007-03-11  Bruno Haible  <bruno@clisp.org>
16616
16617         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
16618
16619 2007-03-11  Bruno Haible  <bruno@clisp.org>
16620
16621         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
16622
16623 2007-03-11  Bruno Haible  <bruno@clisp.org>
16624
16625         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
16626
16627 2007-03-11  Bruno Haible  <bruno@clisp.org>
16628
16629         * lib/vasnprintf.c (sprintf): Undefine.
16630
16631 2007-03-11  Bruno Haible  <bruno@clisp.org>
16632
16633         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
16634         initializers in SunPRO C and Compaq C compilers.
16635
16636 2007-03-11  Bruno Haible  <bruno@clisp.org>
16637
16638         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
16639         decrementing code ANSI C compliant.
16640
16641 2007-03-11  Bruno Haible  <bruno@clisp.org>
16642
16643         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
16644         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
16645
16646 2007-03-11  Bruno Haible  <bruno@clisp.org>
16647
16648         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
16649         <stdbool.h> substitute doesn't pass.
16650
16651 2007-03-11  Bruno Haible  <bruno@clisp.org>
16652
16653         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
16654
16655 2007-03-11  Bruno Haible  <bruno@clisp.org>
16656
16657         * gnulib-tool (func_create_megatestdir): Create also an autobuild
16658         script, for submission to autobuild.josefsson.org.
16659
16660 2007-03-10  Bruno Haible  <bruno@clisp.org>
16661
16662         * modules/canonicalize-lgpl-tests: New file.
16663         * tests/test-canonicalize-lgpl.sh: New file.
16664         * tests/test-canonicalize-lgpl.c: New file.
16665
16666         * modules/c-strcase-tests: New file.
16667         * tests/test-c-strcase.sh: New file.
16668         * tests/test-c-strcasecmp.c: New file.
16669         * tests/test-c-strncasecmp.c: New file.
16670
16671         * modules/atexit-tests: New file.
16672         * tests/test-atexit.sh: New file.
16673         * tests/test-atexit.c: New file.
16674
16675 2007-03-10  Bruno Haible  <bruno@clisp.org>
16676
16677         * tests/test-binary-io.sh: Use temporary filenames that are not so
16678         likely to clash with those of other tests (in a parallel make).
16679         * tests/test-binary-io.c: Likewise.
16680
16681 2007-03-10  Bruno Haible  <bruno@clisp.org>
16682
16683         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
16684         fallback; use #error instead.
16685         Suggested by Simon Josefsson.
16686
16687 2007-03-10  Bruno Haible  <bruno@clisp.org>
16688
16689         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
16690         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
16691         first and the last.
16692
16693 2007-03-10  Bruno Haible  <bruno@clisp.org>
16694
16695         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
16696
16697 2007-03-10  Bruno Haible  <bruno@clisp.org>
16698
16699         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
16700         "make distcheck".
16701         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
16702         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
16703         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
16704
16705 2007-03-10  Bruno Haible  <bruno@clisp.org>
16706
16707         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
16708         variable.
16709         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
16710         variable.
16711
16712 2007-03-09  Eric Blake  <ebb9@byu.net>
16713         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
16714
16715         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
16716         types are not being provided by gnulib.
16717         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
16718         types are supported.
16719
16720 2007-03-10  Bruno Haible  <bruno@clisp.org>
16721
16722         * lib/stdio_.h (__attribute__): New macro.
16723         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
16724         vsprintf): Specify __attribute__ __format__ for GCC.
16725         Suggested by Eric Blake.
16726
16727 2007-03-09  Bruno Haible  <bruno@clisp.org>
16728
16729         * modules/printf-posix-tests: New file.
16730         * tests/test-printf-posix.sh: New file.
16731         * tests/test-printf-posix.c: New file.
16732
16733         * modules/printf-posix: New file.
16734         * lib/printf.c: New file.
16735         * m4/printf-posix-rpl.m4: New file.
16736         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
16737         REPLACE_PRINTF.
16738         * lib/stdio_.h (printf): New declaration.
16739         (format, __format__, ____printf____, ____scanf____, ____strftime____,
16740         ____strfmon____): New macros.
16741         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
16742         REPLACE_PRINTF.
16743
16744 2007-03-09  Bruno Haible  <bruno@clisp.org>
16745
16746         * tests/test-vasnprintf-posix2.sh: New file.
16747         * tests/test-vasnprintf-posix2.c: New file.
16748         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
16749         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
16750         (Makefile.am): Activate test-vasnprintf-posix2.sh.
16751
16752         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
16753         a locale dependent decimal point, rather than always '.'.
16754
16755 2007-03-09  Eric Blake  <ebb9@byu.net>
16756
16757         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
16758         spite of platforms like Tandem/NSK that define it to -1.
16759
16760 2007-03-08  Bruno Haible  <bruno@clisp.org>
16761
16762         * modules/vprintf-posix-tests: New file.
16763         * tests/test-vprintf-posix.sh: New file.
16764         * tests/test-vprintf-posix.c: New file.
16765         * tests/test-printf-posix.h: New file.
16766
16767         * modules/vprintf-posix: New file.
16768         * lib/vprintf.c: New file.
16769         * m4/vprintf-posix.m4: New file.
16770         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
16771         REPLACE_VPRINTF.
16772         * lib/stdio_.h (vprintf): New declaration.
16773         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
16774         REPLACE_VPRINTF.
16775
16776 2007-03-08  Bruno Haible  <bruno@clisp.org>
16777
16778         * modules/fprintf-posix-tests: New file.
16779         * tests/test-fprintf-posix.sh: New file.
16780         * tests/test-fprintf-posix.c: New file.
16781
16782         * modules/fprintf-posix: New file.
16783         * lib/fprintf.c: New file.
16784         * m4/fprintf-posix.m4: New file.
16785         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
16786         REPLACE_FPRINTF.
16787         * lib/stdio_.h (fprintf): New declaration.
16788         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
16789         REPLACE_FPRINTF.
16790
16791 2007-03-08  Bruno Haible  <bruno@clisp.org>
16792
16793         * modules/vfprintf-posix-tests: New file.
16794         * tests/test-vfprintf-posix.sh: New file.
16795         * tests/test-vfprintf-posix.c: New file.
16796         * tests/test-fprintf-posix.h: New file.
16797         * tests/test-fprintf-posix.out: New file.
16798
16799         * modules/vfprintf-posix: New file.
16800         * lib/vfprintf.c: New file.
16801         * m4/vfprintf-posix.m4: New file.
16802         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
16803         REPLACE_VFPRINTF.
16804         * lib/stdio_.h (vfprintf): New declaration.
16805         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
16806         REPLACE_VFPRINTF.
16807
16808 2007-03-08  Bruno Haible  <bruno@clisp.org>
16809
16810         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
16811
16812 2007-03-08  Bruno Haible  <bruno@clisp.org>
16813
16814         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
16815         instead of 'expr' invocations.
16816         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
16817         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
16818         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
16819         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
16820         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
16821         Suggested by Paul Eggert.
16822
16823 2007-03-08  Bruno Haible  <bruno@clisp.org>
16824
16825         * modules/fseterr-tests: New file.
16826         * tests/test-fseterr.c: New file.
16827
16828         * modules/fseterr: New file.
16829         * lib/fseterr.h: New file.
16830         * lib/fseterr.c: New file.
16831
16832 2007-03-08  Bruno Haible  <bruno@clisp.org>
16833
16834         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
16835         * lib/getopt_.h: Likewise.
16836         * lib/mbswidth.h: Likewise.
16837         * lib/setenv.h: Likewise.
16838         * lib/vasnprintf.h: Likewise.
16839         * lib/vasprintf.h: Likewise.
16840         * lib/verror.h: Likewise.
16841         * lib/xsetenv.h: Likewise.
16842         * lib/xvasprintf.h: Likewise.
16843
16844 2007-03-08  Jim Meyering  <jim@meyering.net>
16845
16846         * users.txt: Add parted.
16847
16848         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
16849
16850 2007-03-07  Bruno Haible  <bruno@clisp.org>
16851
16852         * m4/printf.m4: Make the shell script snippets copy&pastable.
16853
16854 2007-03-02  Bruno Haible  <bruno@clisp.org>
16855
16856         * lib/netinet_in_.h: New file.
16857         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
16858         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
16859         * modules/netinet_in (Files): Add lib/netinet_in_.h.
16860         (Depends-on): Add absolute-header.
16861         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
16862         into netinet/in.h.
16863
16864 2007-03-03  Bruno Haible  <bruno@clisp.org>
16865
16866         * lib/sys_select_.h: New file.
16867         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
16868         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
16869         * modules/sys_select (Files): Add lib/sys_select_.h.
16870         (Depends-on): Add absolute-header.
16871         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
16872         into sys/select.h.
16873
16874 2007-03-02  Bruno Haible  <bruno@clisp.org>
16875
16876         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
16877         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
16878         values.
16879         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
16880         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
16881         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
16882         * modules/sys_socket (Depends-on): Add absolute-header.
16883         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
16884         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
16885         (Include): Remove requirement of inclusion of <sys/types.h>.
16886
16887 2007-03-02  Bruno Haible  <bruno@clisp.org>
16888
16889         * lib/byteswap_.h (bswap_32): Fix formula.
16890
16891 2007-03-06  Bruno Haible  <bruno@clisp.org>
16892
16893         * modules/sprintf-posix-tests: New file.
16894         * tests/test-sprintf-posix.c: New file.
16895
16896         * modules/sprintf-posix: New file.
16897         * lib/sprintf.c: New file.
16898         * m4/sprintf-posix.m4: New file.
16899         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
16900         REPLACE_SPRINTF.
16901         * lib/stdio_.h (sprintf): New declaration.
16902         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
16903         REPLACE_SPRINTF.
16904
16905 2007-03-06  Bruno Haible  <bruno@clisp.org>
16906
16907         * modules/vsprintf-posix-tests: New file.
16908         * tests/test-vsprintf-posix.c: New file.
16909         * tests/test-sprintf-posix.h: New file.
16910
16911         * modules/vsprintf-posix: New file.
16912         * lib/vsprintf.c: New file.
16913         * m4/vsprintf-posix.m4: New file.
16914         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
16915         REPLACE_VSPRINTF.
16916         * lib/stdio_.h (vsprintf): New declaration.
16917         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
16918         REPLACE_VSPRINTF.
16919
16920 2007-03-06  Bruno Haible  <bruno@clisp.org>
16921
16922         * modules/vsnprintf (Depend-on): Remove minmax.
16923
16924 2007-03-06  Bruno Haible  <bruno@clisp.org>
16925
16926         * modules/snprintf-posix-tests: New file.
16927         * tests/test-snprintf-posix.c: New file.
16928
16929         * modules/snprintf-posix: New file.
16930         * m4/snprintf-posix.m4: New file.
16931         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
16932         gl_FUNC_SNPRINTF.
16933         (gl_FUNC_SNPRINTF): Invoke it.
16934         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
16935         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
16936         is set.
16937         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
16938
16939 2007-03-06  Bruno Haible  <bruno@clisp.org>
16940
16941         * modules/vsnprintf-posix-tests: New file.
16942         * tests/test-vsnprintf-posix.c: New file.
16943         * tests/test-snprintf-posix.h: New file.
16944
16945         * modules/vsnprintf-posix: New file.
16946         * m4/vsnprintf-posix.m4: New file.
16947         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
16948         gl_FUNC_VSNPRINTF.
16949         (gl_FUNC_VSNPRINTF): Invoke it.
16950         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
16951         * lib/stdio_.h (vsnprintf): Define as a replacement if
16952         REPLACE_VSNPRINTF is set.
16953         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
16954
16955 2007-03-06  Bruno Haible  <bruno@clisp.org>
16956
16957         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
16958         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
16959
16960 2007-03-06  Bruno Haible  <bruno@clisp.org>
16961
16962         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
16963         (asinl): Declare also if HAVE_DECL_ASINL is set.
16964         (atanl): Declare also if HAVE_DECL_ATANL is set.
16965         (ceill): Declare also if HAVE_DECL_CEILL is set.
16966         (cosl): Declare also if HAVE_DECL_COSL is set.
16967         (expl): Declare also if HAVE_DECL_EXPL is set.
16968         (floorl): Declare also if HAVE_DECL_FLOORL is set.
16969         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
16970         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
16971         (logl): Declare also if HAVE_DECL_LOGL is set.
16972         (sinl): Declare also if HAVE_DECL_SINL is set.
16973         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
16974         (tanl): Declare also if HAVE_DECL_TANL is set.
16975         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
16976         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
16977         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
16978         declaration of frexpl, ldexpl.
16979         * modules/printf-frexpl (Depends-on): Add math.
16980         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
16981
16982 2007-03-05  Bruno Haible  <bruno@clisp.org>
16983
16984         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
16985         frexpl and ldexpl are declared.
16986         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
16987
16988 2007-03-05  Bruno Haible  <bruno@clisp.org>
16989
16990         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
16991         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
16992
16993 2007-03-05  Bruno Haible  <bruno@clisp.org>
16994
16995         * lib/stdio_.h: Include <stddef.h>.
16996
16997 2007-03-05  Bruno Haible  <bruno@clisp.org>
16998
16999         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
17000
17001 2007-03-05  Bruno Haible  <bruno@clisp.org>
17002
17003         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
17004         NetBSD 4, from Ralf Wildenhues.
17005
17006 2007-03-04  Bruno Haible  <bruno@clisp.org>
17007
17008         * lib/vasprintf.h: Update #if logic for the case when the functions
17009         exist but are overridden.
17010
17011 2007-03-04  Bruno Haible  <bruno@clisp.org>
17012
17013         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
17014         implementations: glibc-2.4 and MacOS X 10.3.
17015         * tests/test-vasnprintf-posix.c (test_function): Test also the case
17016         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
17017         * tests/test-vasprintf-posix.c (test_function): Likewise.
17018
17019 2007-03-04  Bruno Haible  <bruno@clisp.org>
17020
17021         * modules/vasprintf-posix-tests: New file.
17022         * tests/test-vasprintf-posix.c: New file.
17023
17024         * modules/vasprintf-posix: New file.
17025         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
17026         defined.
17027         * m4/vasprintf-posix.m4: New file.
17028         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
17029         gl_FUNC_VASPRINTF.
17030         (gl_FUNC_VASPRINTF): Invoke it.
17031         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
17032         here.
17033         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
17034
17035 2007-03-04  Bruno Haible  <bruno@clisp.org>
17036
17037         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
17038         REPLACE_GETTIMEOFDAY.
17039         * modules/sys_time (Makefile.am): Likewise.
17040         * m4/sys_time_h.m4: Likewise.
17041         * m4/gettimeofday.m4: Likewise.
17042
17043 2007-03-04  Bruno Haible  <bruno@clisp.org>
17044
17045         * modules/vasnprintf-posix-tests: New file.
17046         * tests/test-vasnprintf-posix.c: New file.
17047
17048         * modules/vasnprintf-posix: New file.
17049         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
17050         printf-frexpl.h.
17051         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
17052         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
17053         REPLACE_VASNPRINTF is defined.
17054         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
17055         gl_FUNC_VASNPRINTF.
17056         (gl_FUNC_VASNPRINTF): Invoke it.
17057         * m4/vasnprintf-posix.m4: New file.
17058         * m4/printf.m4: New file.
17059
17060 2007-03-04  Bruno Haible  <bruno@clisp.org>
17061
17062         Compile progreloc.c only if --enable-relocatable is specified.
17063         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
17064         if --enable-relocatable was specified.
17065         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
17066         lib_SOURCES.
17067
17068 2007-03-04  Jim Meyering  <jim@meyering.net>
17069
17070         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
17071         Use it consistently, rather than enumerating errno constants.
17072
17073 2007-03-04  Bruno Haible  <bruno@clisp.org>
17074
17075         * modules/xvasprintf-tests: New file.
17076         * tests/test-xvasprintf.c: New file.
17077
17078         * modules/vasprintf-tests: New file.
17079         * tests/test-vasprintf.c: New file.
17080
17081         * modules/vasnprintf-tests: New file.
17082         * tests/test-vasnprintf.c: New file.
17083
17084         * modules/vsnprintf-tests: New file.
17085         * tests/test-vsnprintf.c: New file.
17086
17087         * modules/snprintf-tests: New file.
17088         * tests/test-snprintf.c: New file.
17089
17090 2007-03-04  Bruno Haible  <bruno@clisp.org>
17091
17092         Compile relocatable.c only if --enable-relocatable is specified.
17093         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
17094         gl_RELOCATABLE_LIBRARY.
17095         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
17096         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
17097         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
17098         gl_RELOCATABLE_LIBRARY.
17099         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
17100         (Makefile.am): Remove lib_SOURCES.
17101         * modules/relocatable-lib-lgpl (configure.ac): Invoke
17102         gl_RELOCATABLE_LIBRARY.
17103         (Makefile.am): Remove lib_SOURCES.
17104         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
17105         always.
17106         * modules/relocatable-prog-wrapper (configure.ac): Invoke
17107         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
17108
17109 2007-03-04  Bruno Haible  <bruno@clisp.org>
17110
17111         * modules/argmatch-tests: New file.
17112         * tests/test-argmatch.c: New file.
17113
17114         * tests/test-allocsa.c (main): Halve the number of loop runs.
17115
17116         * modules/alloca-opt-tests: New file.
17117         * tests/test-alloca-opt.c: New file.
17118
17119 2007-03-04  Jim Meyering  <jim@meyering.net>
17120
17121         Work around difference between Linux ACLs and Solaris 10 ZFS.
17122         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
17123         for EINVAL.
17124
17125 2007-03-03  Bruno Haible  <bruno@clisp.org>
17126
17127         * modules/relocatable-prog (Depends-on): Add back progreloc's
17128         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
17129
17130 2007-03-03  Bruno Haible  <bruno@clisp.org>
17131
17132         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
17133         * modules/relocatable-lib: New file.
17134
17135 2007-03-03  Bruno Haible  <bruno@clisp.org>
17136
17137         * modules/relocatable-prog: Renamed from modules/relocatable.
17138         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
17139
17140 2007-03-03  Bruno Haible  <bruno@clisp.org>
17141
17142         * modules/relocatable-script (Files): Add doc/relocatable.texi,
17143         m4/relocatable-lib.m4.
17144         (Depends-on): Remove 'relocatable'.
17145         (configure.ac): Add gl_RELOCATABLE_NOP.
17146
17147 2007-03-03  Bruno Haible  <bruno@clisp.org>
17148
17149         * modules/relocatable-prog-wrapper: New file.
17150         * modules/relocatable (Depends-on): Add it. Remove all other
17151         dependencies except progname.
17152         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
17153
17154         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
17155         (gl_FUNC_STRERROR): Nop.
17156         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
17157
17158         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
17159         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
17160
17161         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
17162         (gl_FUNC_READLINK): Update.
17163
17164         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
17165
17166 2007-03-03  Bruno Haible  <bruno@clisp.org>
17167
17168         * lib/xreadlink.c: Include <unistd.h> unconditionally.
17169         * modules/xreadlink (Depends-on): Add unistd.
17170         * modules/xreadlink-with-size (Depends-on): Likewise.
17171
17172 2007-03-03  Bruno Haible  <bruno@clisp.org>
17173
17174         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
17175         extracted from gt_FUNC_SETENV.
17176         (gt_FUNC_SETENV): Remove macro.
17177         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
17178         remove gt_FUNC_SETENV.
17179
17180 2007-03-03  Bruno Haible  <bruno@clisp.org>
17181
17182         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
17183         ENABLE_RELOCATABLE here.
17184         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
17185
17186 2007-03-03  Bruno Haible  <bruno@clisp.org>
17187
17188         * modules/rbtreehash-list-tests (Depends-on): Add progname.
17189         * tests/test-rbtreehash_list.c: Include progname.h.
17190         (main): Call set_program_name.
17191
17192         * modules/rbtree-oset-tests (Depends-on): Add progname.
17193         * tests/test-rbtree_oset.c: Include progname.h.
17194         (main): Call set_program_name.
17195
17196         * modules/rbtree-list-tests (Depends-on): Add progname.
17197         * tests/test-rbtree_list.c: Include progname.h.
17198         (main): Call set_program_name.
17199
17200         * modules/linked-list-tests (Depends-on): Add progname.
17201         * tests/test-linked_list.c: Include progname.h.
17202         (main): Call set_program_name.
17203
17204 2007-03-03  Bruno Haible  <bruno@clisp.org>
17205
17206         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
17207         All uses of __restrict changed to _Restrict_.
17208         * lib/glob_.h (__restrict): Remove macro.
17209
17210 2007-03-02  Bruno Haible  <bruno@clisp.org>
17211
17212         * modules/gettext (configure.ac): Require gettext infrastructure
17213         from version 0.16.1.
17214
17215 2007-03-02  Bruno Haible  <bruno@clisp.org>
17216
17217         * modules/linkedhash-list-tests (Depends-on): Add progname.
17218         * tests/test-linkedhash_list.c: Include progname.h.
17219         (main): Call set_program_name.
17220
17221         * modules/carray-list-tests (Depends-on): Add progname.
17222         * tests/test-carray_list.c: Include progname.h.
17223         (main): Call set_program_name.
17224
17225         * modules/avltreehash-list-tests (Depends-on): Add progname.
17226         * tests/test-avltreehash_list.c: Include progname.h.
17227         (main): Call set_program_name.
17228
17229         * modules/avltree-oset-tests (Depends-on): Add progname.
17230         * tests/test-avltree_oset.c: Include progname.h.
17231         (main): Call set_program_name.
17232
17233         * modules/avltree-list-tests (Depends-on): Add progname.
17234         * tests/test-avltree_list.c: Include progname.h.
17235         (main): Call set_program_name.
17236
17237         * modules/array-oset-tests (Depends-on): Add progname.
17238         * tests/test-array_oset.c: Include progname.h.
17239         (main): Call set_program_name.
17240
17241         * modules/array-list-tests (Depends-on): Add progname.
17242         * tests/test-array_list.c: Include progname.h.
17243         (main): Call set_program_name.
17244
17245         * modules/argp-tests (Depends-on): Add progname.
17246         * tests/test-argp.c: Include argp.h first. Include progname.h.
17247         (main): Call set_program_name.
17248
17249 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
17250
17251         * doc/gnulib-tool.texi (Initial import): Reword description of
17252         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
17253         limited effect even if defined after the first system include.
17254
17255 2007-03-01  Bruno Haible  <bruno@clisp.org>
17256
17257         * build-aux/config.libpath: Update to libtool-1.5.22.
17258         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
17259
17260 2007-03-01  Bruno Haible  <bruno@clisp.org>
17261
17262         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
17263         foo_CFLAGS.
17264         Reported by Ralf Wildenhues.
17265
17266 2007-03-01  Bruno Haible  <bruno@clisp.org>
17267
17268         * build-aux/install-reloc: Remove object files left over by some
17269         compilers.
17270         Reported by Ralf Wildenhues.
17271
17272 2007-03-01  Bruno Haible  <bruno@clisp.org>
17273
17274         * build-aux/install-reloc: Break long lines.
17275
17276 2007-03-01  Bruno Haible  <bruno@clisp.org>
17277
17278         * doc/relocatable.texi: Document that it may not work on OpenBSD.
17279         Reported by Ralf Wildenhues.
17280
17281 2007-03-01  Bruno Haible  <bruno@clisp.org>
17282
17283         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
17284         include ordering constraints.
17285
17286 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
17287
17288         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
17289         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
17290         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
17291         as another example.
17292         * lib/time_.h: Fix misspelling.
17293         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
17294         Require gl_HEADER_TIME_H_DEFAULTS.
17295         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
17296         * m4/time_r.m4 (gl_TIME_R): Likewise.
17297         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
17298
17299 2007-03-01  Bruno Haible  <bruno@clisp.org>
17300
17301         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
17302         * m4/utimens.m4 (gl_UTIMENS): Likewise.
17303
17304 2007-03-01  Jim Meyering  <jim@meyering.net>
17305
17306         * modules/xreadlink (Maintainer): Add my name.
17307         * modules/xreadlink-with-size (Depends-on): Alphabetize.
17308
17309 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
17310             Bruno Haible  <bruno@clisp.org>
17311
17312         * build-aux/install-reloc: Compile also c-ctype.c.
17313         * build-aux/relocatable.sh.in: New file.
17314         * doc/relocatable.texi: New file.
17315         * doc/relocatable-maint.texi: New file.
17316         * doc/gnulib.texi: Include relocatable-maint.texi.
17317         * lib/progreloc.c: Include unistd.h unconditionally.
17318         * lib/relocwrapper.c: Include unistd.h unconditionally.
17319         Include c-ctype.h.
17320         (add_dotbin): Use c_tolower.
17321         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
17322         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
17323         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
17324         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
17325         to m4/relocatable-lib.m4.
17326         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
17327         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
17328         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
17329         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
17330         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
17331         * modules/relocatable: New file.
17332         * modules/relocatable-lib: New file.
17333         * modules/relocatable-script: New file.
17334
17335 2007-02-28  Bruno Haible  <bruno@clisp.org>
17336
17337         Import --enable-relocatable infrastructure.
17338         * build-aux/config.libpath: New file, from GNU gettext.
17339         * build-aux/install-reloc: New file, from GNU gettext.
17340         * build-aux/reloc-ldflags: New file, from GNU gettext.
17341         * lib/relocatable.h: New file, from GNU gettext.
17342         * lib/relocatable.c: New file, from GNU gettext.
17343         * lib/relocwrapper.c: New file, from GNU gettext.
17344         * m4/relocatable.m4: New file, from GNU gettext.
17345
17346 2007-02-28  Bruno Haible  <bruno@clisp.org>
17347
17348         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
17349
17350         * modules/xreadlink: New file, from GNU gettext with modifications.
17351         * lib/xreadlink.c: New file, from GNU gettext.
17352         * lib/xreadlink.h: Add comments.
17353         (xreadlink): New declaration.
17354
17355         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
17356         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
17357         lib/xreadlink-with-size.c.
17358         (configure.ac): Remove gl_XREADLINK invocation.
17359         (Makefile.am): Augment lib_SOURCES.
17360         * m4/xreadlink.m4: Remove file.
17361         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
17362         (xreadlink_with_size): Renamed from xreadink.
17363         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
17364         * modules/canonicalize (Depends-on): Replace xreadlink with
17365         xreadlink-with-size.
17366         * lib/canonicalize.c (canonicalize_filename_mode): Update.
17367
17368 2007-02-25  Jim Meyering  <jim@meyering.net>
17369
17370         * build-aux/announce-gen: When complaining about excess arguments,
17371         list them.
17372
17373 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
17374
17375         * README: Document signed integer overflow situation more
17376         accurately.
17377
17378 2007-02-25  Bruno Haible  <bruno@clisp.org>
17379
17380         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
17381         'a' or 'A' conversion.
17382
17383 2007-02-25  Bruno Haible  <bruno@clisp.org>
17384
17385         * modules/filename: Renamed from modules/pathname.
17386         (Files): Replace lib/pathname.h with lib/filename.h. Replace
17387         lib/concatpath.c with lib/concat-filename.c.
17388         (Makefile.am): Update.
17389         (Include): Replace pathname.h with filename.h.
17390         * lib/filename.h: Renamed from lib/pathname.h.
17391         (concatenated_filename): Renamed from concatenated_pathname.
17392         * lib/concat-filename.c: Renamed from lib/concatpath.c.
17393         (concatenated_filename): Renamed from concatenated_pathname.
17394         * lib/findprog.c: Include filename.h instead of pathname.h.
17395         (find_in_path): Update.
17396         * lib/javacomp.c: Include filename.h instead of pathname.h.
17397         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
17398         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
17399         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
17400         is_oldgcj_14_13_usable, is_javac_usable): Update.
17401         * lib/javaexec.c: Include filename.h instead of pathname.h.
17402         (execute_java_class): Update.
17403         * modules/findprog: Update.
17404         * modules/javacomp: Update.
17405         * modules/javaexec: Update.
17406         * MODULES.html.sh (File system functions): Add 'filename', remove
17407         'pathname'.
17408
17409 2007-02-25  Bruno Haible  <bruno@clisp.org>
17410
17411         * modules/printf-frexpl-tests: New file.
17412         * tests/test-printf-frexpl.c: New file.
17413
17414         * modules/printf-frexpl: New file.
17415         * lib/printf-frexpl.h: New file.
17416         * lib/printf-frexpl.c: New file.
17417         * m4/printf-frexpl.m4: New file.
17418
17419 2007-02-25  Bruno Haible  <bruno@clisp.org>
17420
17421         * modules/printf-frexp-tests: New file.
17422         * tests/test-printf-frexp.c: New file.
17423
17424         * modules/printf-frexp: New file.
17425         * lib/printf-frexp.h: New file.
17426         * lib/printf-frexp.c: New file.
17427         * m4/printf-frexp.m4: New file.
17428
17429 2007-02-25  Bruno Haible  <bruno@clisp.org>
17430
17431         Assume automake >= 1.10 for the tests.
17432         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
17433         * modules/arctwo-tests: Likewise.
17434         * modules/argp-tests: Likewise.
17435         * modules/avltree-list-tests: Likewise.
17436         * modules/avltree-oset-tests: Likewise.
17437         * modules/avltreehash-list-tests: Likewise.
17438         * modules/carray-list-tests: Likewise.
17439         * modules/crc-tests: Likewise.
17440         * modules/des-tests: Likewise.
17441         * modules/gc-arcfour-tests: Likewise.
17442         * modules/gc-arctwo-tests: Likewise.
17443         * modules/gc-des-tests: Likewise.
17444         * modules/gc-hmac-md5-tests: Likewise.
17445         * modules/gc-hmac-sha1-tests: Likewise.
17446         * modules/gc-md2-tests: Likewise.
17447         * modules/gc-md4-tests: Likewise.
17448         * modules/gc-md5-tests: Likewise.
17449         * modules/gc-pbkdf2-sha1-tests: Likewise.
17450         * modules/gc-rijndael-tests: Likewise.
17451         * modules/gc-sha1-tests: Likewise.
17452         * modules/gc-tests: Likewise.
17453         * modules/getaddrinfo-tests: Likewise.
17454         * modules/hmac-md5-tests: Likewise.
17455         * modules/hmac-sha1-tests: Likewise.
17456         * modules/linked-list-tests: Likewise.
17457         * modules/linkedhash-list-tests: Likewise.
17458         * modules/lock-tests: Likewise.
17459         * modules/md2-tests: Likewise.
17460         * modules/md4-tests: Likewise.
17461         * modules/md5-tests: Likewise.
17462         * modules/rbtree-list-tests: Likewise.
17463         * modules/rbtree-oset-tests: Likewise.
17464         * modules/rbtreehash-list-tests: Likewise.
17465         * modules/read-file-tests: Likewise.
17466         * modules/rijndael-tests: Likewise.
17467         * modules/stdint-tests: Likewise.
17468         * modules/tls-tests: Likewise.
17469
17470 2007-02-24  Bruno Haible  <bruno@clisp.org>
17471
17472         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
17473         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
17474         function; instead check whether isnan with a double argument links.
17475         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
17476         function; instead check whether isnan with a 'long double' argument
17477         links.
17478         Reported by Eric Blake <ebb9@byu.net>.
17479
17480 2007-02-24  Bruno Haible  <bruno@clisp.org>
17481
17482         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
17483         defined.
17484         * lib/isnanl.c: Remove all code. Just include isnan.c.
17485         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
17486
17487 2007-02-25  Jim Meyering  <jim@meyering.net>
17488
17489         Avoid conflicting types for 'unsetenv' on FreeBSD.
17490         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
17491         conflicting with FreeBSD's (5.0 and 6.1) function declaration
17492         in stdlib.h.
17493
17494 2007-02-24  Bruno Haible  <bruno@clisp.org>
17495
17496         * modules/isnanl-nolibm-tests: New file.
17497         * tests/test-isnanl.c: New file.
17498
17499         * modules/isnanl-nolibm: New file.
17500         * lib/isnanl.h: New file.
17501         * lib/isnanl.c: New file.
17502         * m4/isnanl.m4: New file.
17503
17504 2007-02-24  Bruno Haible  <bruno@clisp.org>
17505
17506         * modules/isnan-nolibm-tests: New file.
17507         * tests/test-isnan.c: New file.
17508
17509         * modules/isnan-nolibm: New file.
17510         * lib/isnan.h: New file.
17511         * lib/isnan.c: New file.
17512         * m4/isnan.m4: New file.
17513
17514 2007-02-24  Bruno Haible  <bruno@clisp.org>
17515
17516         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
17517         assume that an exponent fits in 20 bits.
17518
17519 2007-02-24  Jim Meyering  <jim@meyering.net>
17520
17521         * m4/regex.m4: Update the description of the configure-time option,
17522         --without-included-regex, to state accurately what the defaults are,
17523         and perhaps to give people an idea why using this option is risky.
17524
17525 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
17526
17527         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
17528         loops on small arguments.  This attempts to avoid the problem
17529         Bruno Haible reported for AIX 4.3.2 in
17530         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
17531
17532 2007-02-23  Bruno Haible  <bruno@clisp.org>
17533
17534         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
17535         Needed for help2man.
17536
17537 2007-02-23  Karl Berry  <karl@gnu.org>
17538
17539         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
17540         exists, foo.h should be cvs-ignored, not committed.
17541
17542 2007-02-23  Eric Blake  <ebb9@byu.net>
17543
17544         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
17545         * lib/stat-time.h (includes): Likewise.
17546         * lib/utimecmp.c (includes): Likewise.
17547         * lib/utimens.h (includes): Likewise.
17548         * lib/getdate.y (includes): Also include "timespec.h" for use
17549         internal to the module.
17550         * modules/utimens (Depends-on): Revert yesterday's patch.
17551         * modules/nanosleep (Depends-on): Add missing dependency.
17552
17553 2007-02-22  Bruno Haible  <bruno@clisp.org>
17554
17555         * lib/glob.c: Don't include getlogin_r.h.
17556
17557 2007-02-22  Jim Meyering  <jim@meyering.net>
17558
17559         * modules/utimens (Depends-on): Add timespec, required for
17560         utimens.h's inclusion of timespec.h.
17561
17562 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
17563
17564         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
17565         long unreadable paths in GNU/Linux.  Problem reported by Andreas
17566         Schwab in
17567         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
17568         I'll try to think of a better way to fix the Solaris problem.
17569
17570         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
17571         like glibc; on Solaris 10, it fails with errno == EINVAL.
17572         POSIX says the behavior is unspecified if the first argument is NULL,
17573         so play it safe and never pass NULL to the system getcwd.
17574
17575 2007-02-21  Jim Meyering  <jim@meyering.net>
17576
17577         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
17578         of gettimeofday.  It would conflict with the one now always
17579         provided via sys_time_.h.  Reported by Matthew Woehlke, as
17580         an IRIX 6.5 build failure.
17581
17582 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
17583
17584         Minor fixups to port to Solaris 10 with Sun C 5.8.
17585         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
17586         * modules/getcwd (Depends-on): Add dirfd.
17587         * lib/putenv.c (putenv): #undef it.
17588         (rpl_putenv): New decl.
17589         (malloc, free): Include <stdlib.h> rather than prototyping separately.
17590
17591 2007-02-20  Bruno Haible  <bruno@clisp.org>
17592
17593         * modules/stdio-tests: New file.
17594         * tests/test-stdio.c: New file.
17595
17596         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
17597         (Depends-on): Add stdio.
17598         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
17599         (Include): Use <stdio.h> instead of vsnprintf.h.
17600         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
17601         HAVE_DECL_VSNPRINTF.
17602         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
17603
17604         * modules/snprintf (Files): Remove lib/snprintf.h.
17605         (Depends-on): Add stdio.
17606         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
17607         (Include): Use <stdio.h> instead of snprintf.h.
17608         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
17609         HAVE_DECL_SNPRINTF.
17610         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
17611         * lib/getaddrinfo.c: Likewise.
17612
17613         * modules/stdio: New file.
17614         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
17615         * lib/snprintf.h: Remove file.
17616         * lib/vsnprintf.h: Remove file.
17617         * lib/.cppi-disable: Remove snprintf.h.
17618         * m4/stdio_h.m4: New file.
17619         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
17620
17621 2007-02-20  Jim Meyering  <jim@meyering.net>
17622
17623         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
17624         used by e.g., mingw.  From Bruno Haible.
17625
17626 2007-02-19  Bruno Haible  <bruno@clisp.org>
17627
17628         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
17629         warnings.
17630         Reported by Ben Pfaff <blp@cs.stanford.edu>.
17631
17632 2007-02-19  Bruno Haible  <bruno@clisp.org>
17633
17634         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
17635         from mingw users.
17636
17637 2007-02-19  Bruno Haible  <bruno@clisp.org>
17638
17639         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
17640         warnings.
17641         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
17642
17643 2007-02-19  Jim Meyering  <jim@meyering.net>
17644
17645         Don't use FD after a successful "fdopendir (fd)".
17646         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
17647         Reset it by calling dirfd on the just-obtained DIR*.
17648
17649         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
17650         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
17651
17652 2007-02-18  Bruno Haible  <bruno@clisp.org>
17653
17654         * lib/readlink.c: Include <unistd.h>.
17655         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
17656         HAVE_READLINK.
17657         * modules/readlink (Depends-on): Add unistd.
17658         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17659         (Include): Add <unistd.h>.
17660
17661         * lib/getlogin_r.h: Remove file.
17662         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
17663         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
17664         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
17665         HAVE_DECL_GETLOGIN_R.
17666         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
17667         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17668         (Include): Use <unistd.h> instead of getlogin_r.h.
17669
17670         * lib/getcwd.h: Remove file.
17671         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
17672         * lib/xgetcwd.c: Likewise.
17673         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
17674         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
17675         * modules/getcwd (Files): Remove lib/getcwd.h.
17676         (Depends-on): Add unistd.
17677         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17678         (Include): Use <unistd.h> instad of getcwd.h.
17679
17680         * lib/ftruncate.c: Include <unistd.h> first.
17681         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
17682         Set HAVE_FTRUNCATE.
17683         * modules/ftruncate (Depends-on): Add unistd.
17684         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17685
17686         * lib/fchdir.c: Include <unistd.h> first.
17687         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
17688         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
17689         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
17690         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17691         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
17692
17693         * lib/dup2.c: Include <unistd.h> first.
17694         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
17695         HAVE_DUP2.
17696         * modules/dup2 (Depends-on): Add unistd.
17697         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17698
17699         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
17700         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
17701         REPLACE_CHOWN. Don't define chown as a macro here.
17702         * modules/chown (Depends-on): Add unistd.
17703         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17704
17705         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
17706         Add definition for GL_LINK_WARNING.
17707         (chown, dup2): New declarations.
17708         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
17709         link warning.
17710         (ftruncate): New declaration.
17711         (getcwd): New declaration, taken from old getcwd.h.
17712         (getlogin_r): New declaration, taken from old getlogin_r.h.
17713         (readlink): New declaration.
17714         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
17715         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
17716         (gl_PREREQ_UNISTD): Remove macro.
17717         (gl_UNISTD_MODULE_INDICATOR): New macro.
17718         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
17719         many new variables. Don't set UNISTD_H.
17720         * modules/unistd (Description): Change.
17721         (Depends-on): Add link-warning.
17722         (configure.ac): Update.
17723         (Makefile.am): Create unistd.h always. Substitute many new variables
17724         into it.
17725
17726 2007-02-18  Bruno Haible  <bruno@clisp.org>
17727
17728         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
17729         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
17730         HAVE_GETSUBOPT.
17731         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
17732         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
17733         * lib/getsubopt.h: Remove file.
17734         * modules/getsubopt (Files): Remove lib/getsubopt.h.
17735         (Depends-on): Add stdlib.
17736         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
17737         (Includes): Use <stdlib.h> instead of getsubopt.h.
17738         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
17739         Set HAVE_GETSUBOPT.
17740         * lib/getsubopt.c: Don't include getsubopt.h.
17741
17742 2007-02-18  Bruno Haible  <bruno@clisp.org>
17743
17744         * modules/fchdir (Depends-on): Add dup2.
17745
17746 2007-02-18  Bruno Haible  <bruno@clisp.org>
17747
17748         * lib/stdlib_.h: Handle glibc's special invocation convention
17749         specially.
17750
17751 2007-02-18  Bruno Haible  <bruno@clisp.org>
17752
17753         * modules/stdlib-tests: New file.
17754         * tests/test-stdlib.c: New file.
17755
17756         * modules/mkstemp (Files): Remove lib/mkstemp.h.
17757         (Depends-on): Add stdlib.
17758         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
17759         (Includes): Use <stdlib.h> instead of mkstemp.h.
17760         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
17761         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
17762         * lib/mkstemp.c: Don't include mkstemp.h.
17763         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
17764         * lib/stdlib--.h: Don't include mkstemp.h.
17765
17766         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
17767         (Depends-on): Add stdlib.
17768         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
17769         (Includes): Use <stdlib.h> instead of mkdtemp.h.
17770         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
17771         HAVE_MKDTEMP.
17772         * lib/mkdtemp.c: Don't include mkdtemp.h.
17773         * lib/clean-temp.c: Don't include mkdtemp.h.
17774
17775         * modules/exit (Files): Remove lib/exit.h.
17776         (Depends-on): Add stdlib.
17777         (Makefile.am): Remove lib_SOURCES.
17778         (Include): Use <stdlib.h> instead of exit.h.
17779         * lib/argmatch.c: Don't include exit.h.
17780         * lib/execute.c: Likewise.
17781         * lib/pagealign_alloc.c: Likewise.
17782         * lib/pipe.c: Likewise.
17783         * lib/wait-process.c: Likewise.
17784         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
17785         * lib/exitfail.c: Likewise.
17786         * lib/savewd.c: Likewise.
17787         * lib/xsetenv.c: Likewise.
17788
17789         * modules/stdlib: New file.
17790         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
17791         and extra comments about mkstemp().
17792         * lib/exit.h: Remove file.
17793         * lib/mkdtemp.h: Remove file.
17794         * lib/mkstemp.h: Remove file.
17795         * m4/stdlib_h.m4: New file.
17796         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
17797
17798 2007-02-18  Bruno Haible  <bruno@clisp.org>
17799
17800         * modules/math-tests: New file.
17801         * tests/test-math.c: New file.
17802
17803         * modules/math: New file.
17804         * modules/mathl (Files): Remove lib/mathl.h.
17805         (Depends-on): Add math.
17806         (Makefile.am): Don't mention mathl.h.
17807         (Include): Use <math.h> instead of mathl.h.
17808         * lib/math_.h: New file.
17809         * lib/mathl.h: Remove file.
17810         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
17811         mathl.h.
17812         * lib/asinl.c: Likewise.
17813         * lib/atanl.c: Likewise.
17814         * lib/ceill.c: Likewise.
17815         * lib/cosl.c: Likewise.
17816         * lib/expl.c: Likewise.
17817         * lib/floorl.c: Likewise.
17818         * lib/frexpl.c: Likewise.
17819         * lib/ldexpl.c: Likewise.
17820         * lib/logl.c: Likewise.
17821         * lib/sincosl.c: Likewise.
17822         * lib/sinl.c: Likewise.
17823         * lib/sqrtl.c: Likewise.
17824         * lib/tanl.c: Likewise.
17825         * lib/trigl.c: Likewise.
17826         * m4/math_h.m4: New file.
17827         * MODULES.html.sh (Mathematics): Add math.
17828
17829 2007-02-17  Bruno Haible  <bruno@clisp.org>
17830
17831         * modules/wctype-tests: New file.
17832         * tests/test-wctype.c: New file.
17833
17834         * modules/wchar-tests: New file.
17835         * tests/test-wchar.c: New file.
17836
17837         * modules/unistd-tests: New file.
17838         * tests/test-unistd.c: New file.
17839
17840         * modules/time-tests: New file.
17841         * tests/test-time.c: New file.
17842
17843         * modules/sysexits-tests: New file.
17844         * tests/test-sysexits.c: New file.
17845
17846         * modules/sys_time-tests: New file.
17847         * tests/test-sys_time.c: New file.
17848
17849         * modules/sys_stat-tests: New file.
17850         * tests/test-sys_stat.c: New file.
17851
17852         * modules/sys_socket-tests: New file.
17853         * tests/test-sys_socket.c: New file.
17854
17855         * modules/sys_select-tests: New file.
17856         * tests/test-sys_select.c: New file.
17857
17858         * modules/string-tests: New file.
17859         * tests/test-string.c: New file.
17860
17861         * modules/stdbool-tests: New file.
17862         * tests/test-stdbool.c: New file.
17863
17864         * modules/netinet_in-tests: New file.
17865         * tests/test-netinet_in.c: New file.
17866
17867         * modules/inttypes-tests: New file.
17868         * tests/test-inttypes.c: New file.
17869
17870         * modules/fcntl-tests: New file.
17871         * tests/test-fcntl.c: New file.
17872
17873         * modules/byteswap-tests: New file.
17874         * tests/test-byteswap.c: New file.
17875
17876         * modules/arpa_inet-tests: New file.
17877         * tests/test-arpa_inet.c: New file.
17878
17879 2007-02-17  Bruno Haible  <bruno@clisp.org>
17880
17881         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
17882         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
17883         if the corresponding module is not enabled. Emit link warnings if
17884         the function is used nevertheless.
17885         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
17886         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
17887         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
17888         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
17889         * modules/inttypes (Depends-on): Add link-warning.
17890         (Makefile.am): Copy the contents of build-aux/link-warning.h into
17891         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
17892         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
17893         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
17894         * modules/imaxdiv (configure.ac): Likewise.
17895         * modules/strtoimax (configure.ac): Likewise.
17896         * modules/strtoumax (configure.ac): Likewise.
17897
17898 2007-02-17  Bruno Haible  <bruno@clisp.org>
17899
17900         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
17901         gl_STRING_MODULE_INDICATOR_DEFAULTS.
17902         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
17903         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
17904
17905 2007-02-17  Bruno Haible  <bruno@clisp.org>
17906
17907         * modules/link-warning: New file.
17908         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
17909         * lib/string_.h (GL_LINK_WARNING): Remove definition.
17910         * modules/string (Depends-on): Add link-warning.
17911         (Makefile.am): Copy the contents of build-aux/link-warning.h into
17912         string.h.
17913         * MODULES.html.sh (Support for building libraries and executables): Add
17914         link-warning.
17915
17916 2007-02-17  Bruno Haible  <bruno@clisp.org>
17917
17918         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
17919         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
17920         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
17921         long lines.
17922
17923 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
17924             Bruno Haible  <bruno@clisp.org>
17925
17926         * modules/tmpfile: New file.
17927         * lib/tmpfile.c: New file.
17928         * m4/tmpfile.m4: New file.
17929         * MODULES.html.sh (func_all_modules): New section "Input/output".
17930
17931 2007-02-15  Bruno Haible  <bruno@clisp.org>
17932
17933         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
17934         (supports_delete_on_close): New function.
17935         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
17936
17937 2007-02-14  Bruno Haible  <bruno@clisp.org>
17938
17939         * modules/mbspcasecmp-tests: New file.
17940         * tests/test-mbspcasecmp.sh: New file.
17941         * tests/test-mbspcasecmp.c: New file.
17942
17943         New module mbspcasecmp.
17944         * modules/mbspcasecmp: New file.
17945         * lib/mbspcasecmp.c: New file.
17946         * lib/string_.h (strncasecmp): Change warning message.
17947         (mbspcasecmp): New declaration.
17948         * m4/mbspcasecmp.m4: New file.
17949         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
17950         GNULIB_MBSPCASECMP.
17951         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
17952         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
17953
17954 2007-02-14  Bruno Haible  <bruno@clisp.org>
17955
17956         * modules/mbsncasecmp-tests: New file.
17957         * tests/test-mbsncasecmp.sh: New file.
17958         * tests/test-mbsncasecmp.c: New file.
17959
17960         New module mbsncasecmp.
17961         * modules/mbsncasecmp: New file.
17962         * lib/mbsncasecmp.c: New file.
17963         * lib/string_.h (mbsncasecmp): New declaration.
17964         * m4/mbsncasecmp.m4: New file.
17965         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
17966         GNULIB_MBSNCASECMP.
17967         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
17968         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
17969
17970 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
17971
17972         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
17973         Verify that it doesn't overlap with our flags.
17974         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
17975         do not have the desired effect in multibyte locales; instead, use
17976         mbscasecmp.
17977         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
17978         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
17979         we don't require GNU fnmatch ourselves (if our users require it, they
17980         should do so explicitly).
17981
17982         Fix regex code so it doesn't rely on strcasecmp.
17983         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
17984         Otherwise, include gnulib's langinfo.h.
17985         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
17986         undesirable behavior in non-C locales.  Instead, rely on localecharset.
17987         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
17988         * modules/regex (FILES): Remove m4/codeset.m4.
17989         (Depends-on): Add localcharset.  Remove strcase.
17990
17991 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17992
17993         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
17994         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
17995
17996 2007-02-13  Bruno Haible  <bruno@clisp.org>
17997
17998         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
17999         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18000
18001 2007-02-12  Bruno Haible  <bruno@clisp.org>
18002
18003         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
18004         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
18005         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
18006         time warning rather than a link error.
18007
18008 2007-02-12  Bruno Haible  <bruno@clisp.org>
18009
18010         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
18011         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
18012         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18013
18014 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
18015
18016         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
18017         args, not 2.
18018
18019 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
18020
18021         New module 'time', so that apps can include <time.h> as per
18022         POSIX and GNU instead of separate include files like time_r.h
18023         and timegm.h.  This implementation tries out a simpler approach
18024         for replacing decls in standard include files (as compared to
18025         the string module), somewhat as an experiment.
18026
18027         * config/srclist.txt: Comment out mktime.c for now.
18028         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
18029         since it doesn't apply any more.  Use generic wording instead.
18030         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
18031         'time'.
18032         * lib/time_.h, m4/time_h.m4, modules/time: New files.
18033         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
18034         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
18035         Don't include <sys/types.h>; no longer needed since we assume C89.
18036         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
18037         * lib/strftime.c: Likewise.
18038         * lib/time_r.c: Likewise.
18039         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
18040         * lib/nanosleep.c: Include <time.h> first, to check interface.
18041         * lib/strptime.c: Likewise.
18042         * lib/time_r.c: Likewise.
18043         * lib/timegm.c: Likewise.
18044         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
18045         needed.
18046         * lib/timegm.c: Don't include timegm.h; no longer needed.
18047         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
18048         time.h now handles any problems in that area.
18049         (struct timespec, nanosleep): Remove; time.h now arranges for these.
18050         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
18051         that time.h defines struct timespec.
18052         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
18053         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
18054         handles that.
18055         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
18056         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
18057         needed.  Set REPLACE_LOCALTIME.
18058         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
18059         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
18060         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
18061         nanosleep; time_h.m4 now does that.  Don't require
18062         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
18063         module handles this now.
18064         * modules/getdate (Depends-on): Remove timespec.  Add time.
18065         * modules/nanosleep (Depends-on): Likewise.
18066         * modules/stat-time (Depends-on): Likewise.
18067         * modules/nanosleep (Include): Include time.h, not timespec.h.
18068         * modules/strptime (Files): Remove lib/strptime.h.
18069         (Depends-on): Add extensions, time.
18070         (Include): Include time.h, not strptime.h.
18071         * modules/time_r (Files): Remove lib/time_r.h.
18072         (Depends-on): Add time.
18073         (Include): Include time.h, not time_r.h.
18074         * modules/timegm: Likewise.
18075         * modules/timespec (Description): Now does timespec-related decls
18076         of our own, instead of struct timespec itself.
18077         (Depends-on): Add time; remove extensions.
18078         (Maintainer): Add self.
18079         * modules/utimecmp (Depends-on): Add time; remove timespec.
18080         * modules/utimens (Depends-on): Likewise.
18081         * modules/xnanosleep (Depends-on): Likewise.
18082
18083 2007-02-11  Bruno Haible  <bruno@clisp.org>
18084
18085         * lib/c-strstr.c: Include allocsa.h.
18086         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
18087         * lib/c-strcasestr.c: Include allocsa.h.
18088         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
18089         * lib/strcasestr.c: Include allocsa.h.
18090         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
18091         * lib/mbsstr.c: Include allocsa.h.
18092         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
18093         allocsa/freesa instead of malloc/free.
18094         * lib/mbscasestr.c: Include allocsa.h.
18095         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
18096         allocsa/freesa instead of malloc/free.
18097         * modules/c-strstr (Depends-on): Add allocsa.
18098         * modules/c-strcasestr (Depends-on): Likewise.
18099         * modules/strcasestr (Depends-on): Likewise.
18100         * modules/mbsstr (Depends-on): Likewise.
18101         * modules/mbscasestr (Depends-on): Likewise.
18102
18103 2007-02-11  Bruno Haible  <bruno@clisp.org>
18104
18105         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
18106
18107         * modules/mbsspn-tests: New file.
18108         * tests/test-mbsspn.sh: New file.
18109         * tests/test-mbsspn.c: New file.
18110
18111 2007-02-11  Bruno Haible  <bruno@clisp.org>
18112
18113         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
18114
18115         * modules/mbspbrk-tests: New file.
18116         * tests/test-mbspbrk.sh: New file.
18117         * tests/test-mbspbrk.c: New file.
18118
18119 2007-02-11  Bruno Haible  <bruno@clisp.org>
18120
18121         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
18122         unneeded cast.
18123
18124         * modules/mbscspn-tests: New file.
18125         * tests/test-mbscspn.sh: New file.
18126         * tests/test-mbscspn.c: New file.
18127
18128 2007-02-11  Bruno Haible  <bruno@clisp.org>
18129
18130         * modules/mbscasecmp-tests: New file.
18131         * tests/test-mbscasecmp.sh: New file.
18132         * tests/test-mbscasecmp.c: New file.
18133
18134 2007-02-11  Bruno Haible  <bruno@clisp.org>
18135
18136         Ensure O(n) worst-case complexity of mbscasestr.
18137         * lib/mbscasestr.c: Include stdbool.h.
18138         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
18139         functions.
18140         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
18141         the bookkeeping indicates that it's worth it.
18142         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
18143
18144         * modules/mbscasestr-tests: New file.
18145         * tests/test-mbscasestr1.c: New file.
18146         * tests/test-mbscasestr2.sh: New file.
18147         * tests/test-mbscasestr2.c: New file.
18148         * tests/test-mbscasestr3.sh: New file.
18149         * tests/test-mbscasestr3.c: New file.
18150         * tests/test-mbscasestr4.sh: New file.
18151         * tests/test-mbscasestr4.c: New file.
18152         * m4/locale-tr.m4: New file.
18153
18154 2007-02-11  Bruno Haible  <bruno@clisp.org>
18155
18156         Ensure O(n) worst-case complexity of mbsstr.
18157         * lib/mbsstr.c: Include stdbool.h.
18158         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
18159         functions.
18160         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
18161         bookkeeping indicates that it's worth it.
18162         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
18163
18164         * modules/mbsstr-tests: New file.
18165         * tests/test-mbsstr1.c: New file.
18166         * tests/test-mbsstr2.sh: New file.
18167         * tests/test-mbsstr2.c: New file.
18168         * tests/test-mbsstr3.sh: New file.
18169         * tests/test-mbsstr3.c: New file.
18170         * m4/locale-fr.m4: New file.
18171
18172 2007-02-11  Bruno Haible  <bruno@clisp.org>
18173
18174         * lib/mbsrchr.c (mbsrchr): Fix bug.
18175
18176         * modules/mbsrchr-tests: New file.
18177         * tests/test-mbsrchr.sh: New file.
18178         * tests/test-mbsrchr.c: New file.
18179
18180 2007-02-11  Bruno Haible  <bruno@clisp.org>
18181
18182         * lib/mbschr.c (mbschr): Fix bug.
18183
18184         * modules/mbschr-tests: New file.
18185         * tests/test-mbschr.sh: New file.
18186         * tests/test-mbschr.c: New file.
18187         * m4/locale-zh.m4: New file.
18188
18189 2007-02-11  Bruno Haible  <bruno@clisp.org>
18190
18191         Support for copying multibyte string iterators.
18192         * lib/mbiter.h: Include <string.h>.
18193         (mbiter_multi_copy): New function.
18194         (mbi_copy): New macro.
18195         * lib/mbuiter.h: Include <string.h>.
18196         (mbuiter_multi_copy): New function.
18197         (mbui_copy): New macro.
18198
18199 2007-02-11  Bruno Haible  <bruno@clisp.org>
18200
18201         New module mbslen.
18202         * modules/mbslen: New file.
18203         * lib/mbslen.c: New file.
18204         * lib/string_.h (mbslen): New declaration.
18205         * m4/mbslen.m4: New file.
18206         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
18207         GNULIB_MBSLEN.
18208         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
18209         * MODULES.html.sh (Internationalization functions): Add mbslen.
18210
18211 2007-02-11  Bruno Haible  <bruno@clisp.org>
18212
18213         Ensure O(n) worst-case complexity of strcasestr substitute.
18214         * lib/strcasestr.c: Include stdbool.h.
18215         (knuth_morris_pratt): New function.
18216         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
18217         bookkeeping indicates that it's worth it.
18218         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
18219
18220         * modules/strcasestr-tests: New file.
18221         * tests/test-strcasestr.c: New file.
18222
18223 2007-02-11  Bruno Haible  <bruno@clisp.org>
18224
18225         Ensure O(n) worst-case complexity of c_strcasestr.
18226         * lib/c-strcasestr.c: Include stdbool.h, string.h.
18227         (knuth_morris_pratt): New function.
18228         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
18229         the bookkeeping indicates that it's worth it.
18230         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
18231
18232         * modules/c-strcasestr-tests: New file.
18233         * tests/test-c-strcasestr.c: New file.
18234
18235 2007-02-11  Bruno Haible  <bruno@clisp.org>
18236
18237         Ensure O(n) worst-case complexity of c_strstr.
18238         * lib/c-strstr.c: Include stdbool.h, string.h.
18239         (knuth_morris_pratt): New function.
18240         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
18241         bookkeeping indicates that it's worth it.
18242         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
18243
18244         * lib/c-strstr.c: Complete rewrite for maintainability.
18245
18246         * modules/c-strstr-tests: New file.
18247         * tests/test-c-strstr.c: New file.
18248
18249 2007-02-11  Bruno Haible  <bruno@clisp.org>
18250
18251         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
18252         5.2.1 and earlier, whereby \055 was treated just like the range
18253         delimiter '-'.
18254         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
18255
18256 2007-02-08  Bruno Haible  <bruno@clisp.org>
18257
18258         * modules/regex (Depends-on): Add stdbool.
18259         Reported by Dalibor Topic <robilad@kaffe.org>.
18260
18261 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
18262
18263         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
18264         Prefer returning from main to exiting from it.
18265         Remove unnecessary parens after sizeof.
18266
18267 2007-02-05  Bruno Haible  <bruno@clisp.org>
18268
18269         New module mbssep.
18270         * modules/mbssep: New file.
18271         * lib/mbssep.c: New file.
18272         * lib/string_.h (strsep): Add a conditional link warning.
18273         (mbssep): New declaration.
18274         * m4/mbssep.m4: New file.
18275         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
18276         GNULIB_MBSSEP.
18277         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
18278         * MODULES.html.sh (Internationalization functions): Add mbssep.
18279
18280 2007-02-05  Bruno Haible  <bruno@clisp.org>
18281
18282         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
18283         Optimize search in case of 1 delimiter.
18284
18285 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
18286
18287         * lib/acl.h: Include sys/types.h before sys/acl.h.
18288
18289 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
18290
18291         Merge upstream fix for glibc bugzilla #3957:
18292
18293         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
18294
18295         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
18296         bit for RE_HAT_LISTS_NOT_NEWLINE.
18297         (build_charclass_op): Remove bogus comment.
18298
18299 2007-02-05  Simon Josefsson  <simon@josefsson.org>
18300
18301         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
18302
18303 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
18304
18305         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
18306         * lib/memmem.c [!defined _LIBC]: Include config.h.
18307
18308 2007-02-04  Bruno Haible  <bruno@clisp.org>
18309
18310         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
18311         warning message.
18312
18313 2007-02-04  Bruno Haible  <bruno@clisp.org>
18314
18315         New module mbstok_r.
18316         * modules/mbstok_r: New file.
18317         * lib/mbstok_r.c: New file.
18318         * lib/string_.h (strtok_r): Change argument names to match the
18319         comments. Add a conditional link warning.
18320         (mbstok_r): New declaration.
18321         * m4/mbstok_r.m4: New file.
18322         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
18323         GNULIB_MBSTOK_R.
18324         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
18325         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
18326
18327 2007-02-04  Bruno Haible  <bruno@clisp.org>
18328
18329         New module mbsspn.
18330         * modules/mbsspn: New file.
18331         * lib/mbsspn.c: New file.
18332         * lib/string_.h (strspn): Add a conditional link warning.
18333         (mbsspn): New declaration.
18334         * m4/mbsspn.m4: New file.
18335         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
18336         GNULIB_MBSSPN.
18337         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
18338         * MODULES.html.sh (Internationalization functions): Add mbsspn.
18339
18340 2007-02-04  Bruno Haible  <bruno@clisp.org>
18341
18342         New module mbspbrk.
18343         * modules/mbspbrk: New file.
18344         * lib/mbspbrk.c: New file.
18345         * lib/string_.h (strpbrk): Add a conditional link warning.
18346         (mbspbrk): New declaration.
18347         * m4/mbspbrk.m4: New file.
18348         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
18349         GNULIB_MBSPBRK.
18350         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
18351         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
18352
18353 2007-02-04  Bruno Haible  <bruno@clisp.org>
18354
18355         New module mbscspn.
18356         * modules/mbscspn: New file.
18357         * lib/mbscspn.c: New file.
18358         * lib/string_.h (strcspn): Add a conditional link warning.
18359         (mbscspn): New declaration.
18360         * m4/mbscspn.m4: New file.
18361         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
18362         GNULIB_MBSCSPN.
18363         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
18364         * MODULES.html.sh (Internationalization functions): Add mbscspn.
18365
18366 2007-02-04  Bruno Haible  <bruno@clisp.org>
18367
18368         New module mbscasestr, reduced goal of strcasestr.
18369         * modules/mbscasestr: New file.
18370         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
18371         (mbscasestr): Renamed from strcasestr.
18372         * lib/strcasestr.c: Don't include mbuiter.h.
18373         (strcasestr): Remove support for multibyte locales.
18374         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
18375         Change the conditional link warning.
18376         (mbscasestr): New declaration.
18377         * m4/mbscasestr.m4: New file.
18378         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
18379         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
18380         REPLACE_STRCASESTR.
18381         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
18382         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
18383         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
18384         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
18385         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
18386         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
18387         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
18388         (Depends-on): Remove mbuiter.
18389         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
18390
18391 2007-02-04  Bruno Haible  <bruno@clisp.org>
18392
18393         Simplify handling of strncasecmp.
18394         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
18395         the conditional link warning.
18396         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
18397         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
18398         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
18399         * modules/strcase (configure.ac): Don't invoke
18400         gl_STRING_MODULE_INDICATOR.
18401         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
18402
18403 2007-02-04  Bruno Haible  <bruno@clisp.org>
18404
18405         New module mbscasecmp, reduced goal of strcasecmp.
18406         * modules/mbscasecmp: New file.
18407         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
18408         (mbscasecmp): Renamed from strcasecmp.
18409         * lib/strcasecmp.c: Don't include mbuiter.h.
18410         (strcasecmp): Remove support for multibyte locales.
18411         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
18412         Change the conditional link warning.
18413         (mbscasecmp): New declaration.
18414         * m4/mbscasecmp.m4: New file.
18415         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
18416         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
18417         REPLACE_STRCASECMP.
18418         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
18419         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
18420         GNULIB_MBSCASECMP.
18421         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
18422         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
18423         * modules/strcase (Files): Remove m4/mbrtowc.m4.
18424         (Depends-on): Remove mbuiter.
18425         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
18426
18427 2007-02-04  Bruno Haible  <bruno@clisp.org>
18428
18429         New module mbsstr. Remove module strstr.
18430         * modules/mbsstr: New file.
18431         * modules/strstr: Remove file.
18432         * lib/mbsstr.c: Renamed from lib/strstr.c.
18433         (mbsstr): Renamed from strstr.
18434         * lib/string_.h (strstr): Remove declaration. Change the conditional
18435         link warning.
18436         (mbsstr): New declaration.
18437         * m4/mbsstr.m4: New file.
18438         * m4/strstr.m4: Remove file.
18439         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
18440         REPLACE_STRSTR.
18441         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
18442         Don't initialize GNULIB_STRSTR.
18443         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
18444         substitute GNULIB_STRSTR and REPLACE_STRSTR.
18445         * MODULES.html.sh (Internationalization functions): Add mbsstr.
18446         (Support for systems lacking ANSI C 89): Remove strstr.
18447
18448 2007-02-04  Bruno Haible  <bruno@clisp.org>
18449
18450         New module mbsrchr.
18451         * modules/mbsrchr: New file.
18452         * lib/mbsrchr.c: New file.
18453         * lib/string_.h (strrchr): Add a conditional link warning.
18454         (mbsrchr): New declaration.
18455         * m4/mbsrchr.m4: New file.
18456         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
18457         GNULIB_MBSRCHR.
18458         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
18459         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
18460
18461 2007-02-04  Bruno Haible  <bruno@clisp.org>
18462
18463         New module mbschr.
18464         * modules/mbschr: New file.
18465         * lib/mbschr.c: New file.
18466         * lib/string_.h (strchr): Add a conditional link warning.
18467         (mbschr): New declaration.
18468         * m4/mbschr.m4: New file.
18469         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
18470         GNULIB_MBSCHR.
18471         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
18472         * MODULES.html.sh (Internationalization functions): Add mbschr.
18473
18474 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
18475
18476         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
18477
18478         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
18479
18480 2007-02-04  Bruno Haible  <bruno@clisp.org>
18481
18482         New module description section 'configure.ac-early'.
18483         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
18484         (func_get_autoconf_early_snippet): New function.
18485         (func_import, func_create_testdir): Use it. Remove special cases for
18486         modules 'extensions' and 'lock'.
18487         * modules/extensions (configure.ac-early): Require
18488         gl_USE_SYSTEM_EXTENSIONS.
18489         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
18490
18491 2007-02-04  Bruno Haible  <bruno@clisp.org>
18492
18493         Make use of gcj-4.3's -fsource and -ftarget option.
18494         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
18495         and if so try the options -fsource and -ftarget.
18496         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
18497         source_version, ftarget_option, target_version arguments.
18498         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
18499         (is_envjavac_oldgcj_14_14_usable): Renamed from
18500         is_envjavac_gcj_14_14_usable.
18501         (is_envjavac_oldgcj_14_13_usable): Renamed from
18502         is_envjavac_gcj_14_13_usable.
18503         (is_gcj_present): Update.
18504         (is_gcj_43, is_gcj43_usable): New functions.
18505         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
18506         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
18507         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
18508         try the options -fsource and -ftarget.
18509
18510 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
18511
18512         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
18513         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
18514         larger value.
18515
18516 2007-02-03  Jim Meyering  <jim@meyering.net>
18517
18518         Give tools a better chance to allocate space for very large buffers.
18519         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
18520
18521         Make pwd and readlink work also when run with an unreadable parent dir
18522         on systems with openat support.
18523         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
18524         provided getcwd function, even when we have openat support.
18525         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
18526
18527 2007-02-02  Bruno Haible  <bruno@clisp.org>
18528
18529         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
18530         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
18531         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
18532         portability problems if one of these functions is only used on specific
18533         platforms.
18534         Reported by Paul Eggert.
18535
18536 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
18537
18538         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
18539         is causing more trouble than it's curing.
18540         * lib/regex_internal.h (__mempcpy): Remove.
18541         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
18542         (and make the code a tad smaller to boot).
18543         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
18544
18545 2007-02-02  Jim Meyering  <jim@meyering.net>
18546
18547         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
18548         section, not in the Makefile.am: one.
18549
18550 2007-02-02  Eric Blake  <ebb9@byu.net>
18551
18552         * lib/strchrnul.c: Always include config.h first.
18553
18554         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
18555         gnulib strstr is not necessary here.
18556
18557 2007-02-02  Simon Josefsson  <simon@josefsson.org>
18558
18559         * m4/socklen.m4: Fix typo.
18560
18561 2007-02-02  Eric Blake  <ebb9@byu.net>
18562
18563         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
18564         * modules/netinet_in (Makefile.am): Likewise.
18565
18566 2007-02-01  Bruno Haible  <bruno@clisp.org>
18567
18568         * lib/string_.h (GL_LINK_WARNING): New macro.
18569         (strcasecmp, strstr, strcasestr): If provided by the system,
18570         conditionally define as a macro that leads to a warning instead of to
18571         an error.
18572         (strncasecmp): Conditionally define as a macro that leads to a warning.
18573
18574 2007-02-01  Karl Berry  <karl@gnu.org>
18575
18576         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
18577
18578 2007-02-01  Bruno Haible  <bruno@clisp.org>
18579
18580         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
18581         renamings.
18582
18583 2007-02-01  Eric Blake  <ebb9@byu.net>
18584
18585         * modules/regex (Depends-on): Revert dependence on mempcpy.
18586         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
18587         module's definition of mempcpy.
18588         Reported by Paul Eggert.
18589
18590 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
18591
18592         * lib/string_.h: If the gnulib module XYZ is not present, undefine
18593         the symbol XYZ before redefining it.  This fixes a problem with
18594         programs that don't use XYZ, when compiled on systems that define
18595         XYZ to something else.
18596
18597 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
18598
18599         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
18600         occurs when "mkdir -m foo" creates a setgid directory that is (1)
18601         writeable to group or other and (2) is intended to have a special
18602         mode bit that is set or cleared.  In such a case, the directory
18603         should be neither group- nor other-writeable until the special
18604         mode bits are right.
18605
18606 2007-01-31  Eric Blake  <ebb9@byu.net>
18607
18608         * modules/mountlist (Depends-on): Add strstr.
18609
18610         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
18611         bug.
18612         * modules/string (Makefile.am): Remove redundant replacement.
18613         * modules/regex (Depends-on): Add mempcpy.
18614
18615 2007-01-31  Bruno Haible  <bruno@clisp.org>
18616
18617         New module description field 'Link'.
18618         * gnulib-tool (func_usage): Document --extract-link-directive.
18619         (sed_extract_prog): Recognize 'Link' directive.
18620         (func_get_link_directive): New function.
18621         (func_import): Show summary of link directives.
18622         Handle --extract-link-directive option.
18623         * modules/acl (Link): New section.
18624         * modules/clock-time (Link): New section.
18625         * modules/euidaccess (Link): New section.
18626         * modules/gettext (Link): New section.
18627         * modules/iconv (Link): New section.
18628         * modules/lock (Link): New section.
18629         * modules/nanosleep (Link): New section.
18630         * modules/readline (Link): New section.
18631
18632 2007-01-27  Bruno Haible  <bruno@clisp.org>
18633
18634         Enforce the use of gnulib modules for unportable <string.h> functions.
18635         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
18636         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
18637         (gl_HEADER_STRING_H_BODY): Require it.
18638         * lib/string_.h: If the gnulib module XYZ is not present, redefine
18639         the symbol XYZ to one that gives a link error.
18640         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
18641         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
18642         * modules/mempcpy (configure.ac): Likewise.
18643         * modules/memrchr (configure.ac): Likewise.
18644         * modules/stpcpy (configure.ac): Likewise.
18645         * modules/stpncpy (configure.ac): Likewise.
18646         * modules/strcase (configure.ac): Likewise.
18647         * modules/strcasestr (configure.ac): Likewise.
18648         * modules/strchrnul (configure.ac): Likewise.
18649         * modules/strdup (configure.ac): Likewise.
18650         * modules/strndup (configure.ac): Likewise.
18651         * modules/strnlen (configure.ac): Likewise.
18652         * modules/strpbrk (configure.ac): Likewise.
18653         * modules/strsep (configure.ac): Likewise.
18654         * modules/strstr (configure.ac): Likewise.
18655         * modules/strtok_r (configure.ac): Likewise.
18656
18657 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
18658
18659         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
18660
18661 2007-01-30  Jim Meyering  <jim@meyering.net>
18662
18663         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
18664
18665 2007-01-29  Bruno Haible  <bruno@clisp.org>
18666
18667         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
18668         * lib/execute.c: Likewise.
18669         * lib/pipe.c: Likewise.
18670         * lib/printf-args.h: Likewise.
18671         * lib/printf-args.c: Likewise.
18672         * lib/printf-parse.c: Likewise.
18673         * lib/vasnprintf.c: Likewise.
18674
18675 2007-01-29  Eric Blake  <ebb9@byu.net>
18676
18677         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
18678         declaration.
18679
18680 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
18681
18682         * lib/strptime.h (strptime): Use 'restrict' for args where
18683         POSIX requires this.
18684         * lib/strptime.c (strptime): Likewise.
18685         Change license notice from LGPL to GPL, since gnulib-tool will
18686         change this as needed.
18687         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
18688         defined.
18689         Include "strptime.h" first, to check interface.
18690         Do not #undef _LIBC and _NL_CURRENT.
18691         Do not include <stdlib.h>; no longer needed.
18692         Include "time_r.h" and declare ptime_locale_status
18693         only if _LIBC is not defined.
18694         (__P): Remove unused macro.
18695         (match_string): Bring back glibc version, but use it only if _LIBC
18696         is defined.
18697         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
18698         Remove unnecessary assertion and abort() call.
18699         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
18700         * m4/strptime.m4: Fix serial number comment.
18701         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
18702         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
18703         (Depends-on): Add time_r.
18704
18705 2007-01-29  Bruno Haible  <bruno@clisp.org>
18706
18707         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
18708         strptime.
18709         * modules/strptime (Depends-on): Add stdbool.
18710         * lib/strptime.h: Include <time.h> always. Add comments.
18711
18712 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
18713
18714         * modules/strptime: New file.
18715         * lib/strptime.h: New file.
18716         * lib/strptime.c: New file.
18717         * m4/strptime.m4: New file.
18718
18719 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
18720
18721         * MODULES.html.sh: New module mpsort.
18722         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
18723
18724         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
18725         a circularity problem with HP-UX ia64 reported by Bob Proulx in
18726         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
18727         All uses changed.
18728         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
18729         All uses changed.
18730         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
18731         to _Restrict_.
18732         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
18733         the parameter matches the prototype.
18734
18735 2007-01-28  Jim Meyering  <jim@meyering.net>
18736
18737         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
18738         sys/time.h here, reverting that part of the previous patch:
18739         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
18740
18741 2007-01-28  Bruno Haible  <bruno@clisp.org>
18742
18743         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
18744         value of $(SYS_TIME_H).
18745         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
18746         remove it conditionally, too. [added by Jim Meyering]
18747         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
18748         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
18749         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
18750         GETTIMEOFDAY_REPLACEMENT to 1.
18751
18752 2007-01-28  Bruno Haible  <bruno@clisp.org>
18753
18754         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
18755         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
18756         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
18757         Set UNISTD_H instead of UNISTD_H2.
18758         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
18759
18760 2007-01-28  Bruno Haible  <bruno@clisp.org>
18761
18762         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
18763         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
18764
18765 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18766
18767         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
18768         (func_create_testdir): Ensure C locale for `grep' and `tr'
18769         character ranges.
18770         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
18771         ACLOCAL_AMFLAGS parsing state machine.
18772
18773 2007-01-27  Bruno Haible  <bruno@clisp.org>
18774
18775         * modules/unistr/base: Update.
18776
18777 2007-01-27  Bruno Haible  <bruno@clisp.org>
18778
18779         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
18780         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
18781         * modules/unistr/u32-mbtouc-unsafe: Renamed from
18782         modules/unistr/u32-mbtouc.
18783         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
18784         * lib/unistr.h: Update.
18785         * lib/linebreak.c: Update.
18786         * modules/unistr/u32-mbtouc: Renamed from
18787         modules/unistr/u32-mbtouc-safe.
18788         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
18789         * lib/unistr.h: Update.
18790         * lib/unistr/u32-to-u8.c: Update.
18791         * lib/unistr/u32-to-u16.c: Update.
18792
18793 2007-01-27  Bruno Haible  <bruno@clisp.org>
18794
18795         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
18796         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
18797         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
18798         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
18799         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
18800         * modules/unistr/u16-mbtouc-unsafe: Renamed from
18801         modules/unistr/u16-mbtouc.
18802         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
18803         * lib/unistr.h: Update.
18804         * lib/linebreak.c: Update.
18805         * modules/linebreak: Update.
18806         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
18807         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
18808         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
18809         * modules/unistr/u16-mbtouc: Renamed from
18810         modules/unistr/u16-mbtouc-safe.
18811         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
18812         * lib/unistr.h: Update.
18813         * lib/unistr/u16-to-u8.c: Update.
18814         * modules/unistr/u16-to-u8: Update.
18815         * lib/unistr/u16-to-u32.c: Update.
18816         * modules/unistr/u16-to-u32: Update.
18817
18818 2007-01-27  Bruno Haible  <bruno@clisp.org>
18819
18820         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
18821         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
18822         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
18823         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
18824         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
18825         * modules/unistr/u8-mbtouc-unsafe: Renamed from
18826         modules/unistr/u8-mbtouc.
18827         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
18828         * lib/unistr.h: Update.
18829         * lib/striconveh.c: Update.
18830         * modules/striconveh: Update.
18831         * lib/linebreak.c: Update.
18832         * modules/linebreak: Update.
18833         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
18834         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
18835         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
18836         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
18837         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
18838         * lib/unistr.h: Update.
18839         * lib/striconveh.c: Update.
18840         * modules/striconveh: Update.
18841         * lib/unistr/u8-to-u16.c: Update.
18842         * modules/unistr/u8-to-u16: Update.
18843         * lib/unistr/u8-to-u32.c: Update.
18844         * modules/unistr/u8-to-u32: Update.
18845
18846 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18847
18848         Sync from Libtool.
18849         * lib/argz.c: Do not include strings.h nor memory.h, include
18850         string.h unconditionally.  Patch by Simon Josefsson.
18851
18852 2007-01-27  Bruno Haible  <bruno@clisp.org>
18853
18854         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
18855         from gl_HEADER_STRING_H_BODY.
18856         (gl_HEADER_STRING_H_BODY): Require it.
18857         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
18858         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
18859         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
18860         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
18861         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
18862         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
18863         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
18864         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
18865         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
18866         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
18867         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
18868         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
18869         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
18870         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
18871         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
18872
18873 2007-01-27  Bruno Haible  <bruno@clisp.org>
18874
18875         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
18876         check_PROGRAMS into noinst_PROGRAMS.
18877         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
18878         check_PROGRAMS in this case.
18879         (func_import): Set for_test to false.
18880         (func_create_testdir): Set for_test to true.
18881
18882 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
18883             Bruno Haible  <bruno@clisp.org>
18884
18885         * modules/strcasestr (Files): Remove lib/strcasestr.h.
18886         (Depends-on): Add string.
18887         (Includes): Use <string.h> instead of strcasestr.h.
18888         * modules/string (Makefile.am): Also substitute the value of
18889         REPLACE_STRCASESTR.
18890         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
18891         assume strcasestr is declared in <string.h> not <strings.h>. Also
18892         set REPLACE_STRCASESTR.
18893         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
18894         REPLACE_STRCASESTR.
18895         * lib/strcasestr.h: Remove file.
18896         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
18897         * lib/string_.h (strcasestr): New declaration.
18898
18899 2007-01-27  Bruno Haible  <bruno@clisp.org>
18900
18901         * lib/string_.h: Use 'extern'.
18902
18903 2007-01-27  Jim Meyering  <jim@meyering.net>
18904
18905         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
18906         of set-but-not-used local, "q".
18907
18908         * lib/mempcpy.c: Include <config.h> before <string.h>.
18909         This fixes a compilation error on HP-UX, due to the system's
18910         "restrict"-using mempcpy prototype.
18911
18912 2007-01-26  Bruno Haible  <bruno@clisp.org>
18913
18914         Small optimization.
18915         * lib/javacomp.c: Include c-strstr.h.
18916          (is_envjavac_gcj): Use c_strstr instead of strstr.
18917         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
18918
18919 2007-01-26  Bruno Haible  <bruno@clisp.org>
18920
18921         * MODULES.html.sh (Unicode string functions): Add the new modules.
18922
18923         * modules/uniconv/u32-strconv-to-locale: New file.
18924         * lib/uniconv/u32-strconv-to-locale.c: New file.
18925
18926         * modules/uniconv/u16-strconv-to-locale: New file.
18927         * lib/uniconv/u16-strconv-to-locale.c: New file.
18928
18929         * modules/uniconv/u8-strconv-to-locale: New file.
18930         * lib/uniconv/u8-strconv-to-locale.c: New file.
18931
18932         * modules/uniconv/u32-strconv-from-locale: New file.
18933         * lib/uniconv/u32-strconv-from-locale.c: New file.
18934
18935         * modules/uniconv/u16-strconv-from-locale: New file.
18936         * lib/uniconv/u16-strconv-from-locale.c: New file.
18937
18938         * modules/uniconv/u8-strconv-from-locale: New file.
18939         * lib/uniconv/u8-strconv-from-locale.c: New file.
18940
18941         * modules/uniconv/u32-strconv-to-enc: New file.
18942         * lib/uniconv/u32-strconv-to-enc.c: New file.
18943         * modules/uniconv/u32-strconv-to-enc-tests: New file.
18944         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
18945
18946         * modules/uniconv/u16-strconv-to-enc: New file.
18947         * lib/uniconv/u16-strconv-to-enc.c: New file.
18948         * lib/uniconv/u-strconv-to-enc.h: New file.
18949         * modules/uniconv/u16-strconv-to-enc-tests: New file.
18950         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
18951
18952         * modules/uniconv/u8-strconv-to-enc: New file.
18953         * lib/uniconv/u8-strconv-to-enc.c: New file.
18954         * modules/uniconv/u8-strconv-to-enc-tests: New file.
18955         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
18956
18957         * modules/uniconv/u32-strconv-from-enc: New file.
18958         * lib/uniconv/u32-strconv-from-enc.c: New file.
18959         * modules/uniconv/u32-strconv-from-enc-tests: New file.
18960         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
18961
18962         * modules/uniconv/u16-strconv-from-enc: New file.
18963         * lib/uniconv/u16-strconv-from-enc.c: New file.
18964         * modules/uniconv/u16-strconv-from-enc-tests: New file.
18965         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
18966
18967         * modules/uniconv/u8-strconv-from-enc: New file.
18968         * lib/uniconv/u8-strconv-from-enc.c: New file.
18969         * lib/uniconv/u-strconv-from-enc.h: New file.
18970         * modules/uniconv/u8-strconv-from-enc-tests: New file.
18971         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
18972
18973         * modules/uniconv/u32-conv-from-enc: New file.
18974         * lib/uniconv/u32-conv-from-enc.c: New file.
18975         * modules/uniconv/u32-conv-from-enc-tests: New file.
18976         * tests/uniconv/test-u32-conv-from-enc.c: New file.
18977
18978         * modules/uniconv/u16-conv-from-enc: New file.
18979         * lib/uniconv/u16-conv-from-enc.c: New file.
18980         * lib/uniconv/u-conv-from-enc.h: New file.
18981         * modules/uniconv/u16-conv-from-enc-tests: New file.
18982         * tests/uniconv/test-u16-conv-from-enc.c: New file.
18983
18984         * modules/uniconv/u8-conv-from-enc: New file.
18985         * lib/uniconv/u8-conv-from-enc.c: New file.
18986         * modules/uniconv/u8-conv-from-enc-tests: New file.
18987         * tests/uniconv/test-u8-conv-from-enc.c: New file.
18988
18989         * modules/uniconv/base: New file.
18990         * lib/uniconv.h: New file.
18991
18992 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
18993
18994         * doc/gnulib-tool.texi (Initial import): Update to match current
18995         behavior with strdup module.
18996         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
18997         * lib/memmem.h: Remove; all uses removed.  This is now done
18998         by <string.h>.
18999         * lib/mempcpy.h: Likewise.
19000         * lib/memrchr.h: Likewise.
19001         * lib/stpcpy.h: Likewise.
19002         * lib/stpncpy.h: Likewise.
19003         * lib/strcase.h: Likewise.
19004         * lib/strchrnul.h: Likewise.
19005         * lib/strdup.h: Likewise.
19006         * lib/strndup.h: Likewise.
19007         * lib/strnlen.h: Likewise.
19008         * lib/strpbrk.h: Likewise.
19009         * lib/strsep.h: Likewise.
19010         * lib/strstr.h: Likewise.
19011         * lib/strtok_r.h: Likewise.
19012         * lib/string_.h: New file.
19013         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
19014         Rely on <string.h> instead.
19015         * lib/canon-host.c: Likewise.
19016         * lib/chdir-long.c: Likewise.
19017         * lib/concatpath.c: Likewise.
19018         * lib/exclude.c: Likewise.
19019         * lib/fchdir.c: Likewise.
19020         * lib/getaddrinfo.c: Likewise.
19021         * lib/getcwd.c: Likewise.
19022         * lib/getsubopt.c: Likewise.
19023         * lib/glob.c: Likewise.
19024         * lib/hard-locale.c: Likewise.
19025         * lib/iconvme.c: Likewise.
19026         * lib/javacomp.c: Likewise.
19027         * lib/mempcpy.c: Likewise.
19028         * lib/memrchr.c: Likewise.
19029         * lib/regex_internal.h: Likewise.
19030         * lib/stpncpy.c: Likewise.
19031         * lib/strcasecmp.c: Likewise.
19032         * lib/strchrnul.c: Likewise.
19033         * lib/strdup.c: Likewise.
19034         * lib/striconv.c: Likewise.
19035         * lib/striconveh.c: Likewise.
19036         * lib/striconveha.c: Likewise.
19037         * lib/strncasecmp.c: Likewise.
19038         * lib/strndup.c: Likewise.
19039         * lib/strnlen.c: Likewise.
19040         * lib/strsep.c: Likewise.
19041         * lib/strstr.c: Likewise.
19042         * lib/strtok_r.c: Likewise.
19043         * lib/userspec.c: Likewise.
19044         * lib/w32spawn.h: Likewise.
19045         * lib/xstrndup.c: Likewise.
19046         * lib/mountlist.c (strstr): Remove decl.
19047         * m4/string_h.m4: New file.
19048         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
19049         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
19050         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
19051         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
19052         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
19053         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
19054         Set REPLACE_STRCASECMP if necessary.
19055         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
19056         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
19057         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
19058         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
19059         HAVE_DECL_STRDUP if necessary.
19060         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
19061         since gl_FUNC_STRNDUP does that now.
19062         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
19063         Check for decl here...
19064         (gl_PREREQ_STRNLEN): ... not here.
19065         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
19066         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
19067         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
19068         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
19069         necessary.
19070         * modules/string: New file.
19071         * modules/memmem (Files): Remove special-purpose include file.
19072         (Depends-on): Add string.
19073         (Include): Include <string.h>, not the removed file.
19074         * modules/mempcpy: Likewise.
19075         * modules/memrchr: Likewise.
19076         * modules/stpcpy: Likewise.
19077         * modules/stpncpy: Likewise.
19078         * modules/strcase: Likewise.
19079         * modules/strchrnul: Likewise.
19080         * modules/strdup: Likewise.
19081         * modules/strndup: Likewise.
19082         * modules/strnlen: Likewise.
19083         * modules/strpbrk: Likewise.
19084         * modules/strsep: Likewise.
19085         * modules/strstr: Likewise.
19086         * modules/strtok_r: Likewise.
19087         * tests/test-dirname.c: Don't include "strdup.h", since
19088         <string.h> now suffices.
19089         * tests/test-memmem.c: Don't include "memmem.h", since
19090         <string.h> now suffices.
19091
19092 2007-01-25  Bruno Haible  <bruno@clisp.org>
19093
19094         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
19095         *resultp is 0.
19096
19097         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
19098         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
19099         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
19100         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
19101
19102         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
19103         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
19104         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
19105         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
19106         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
19107         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
19108
19109 2007-01-24  Bruno Haible  <bruno@clisp.org>
19110
19111         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
19112         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
19113         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
19114         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
19115         gl_FUNC_FTS_CORE.
19116         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
19117         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
19118         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
19119         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
19120         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
19121         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
19122         gl_FUNC_FCHOWNAT.
19123         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
19124         gl_FUNC_STRFTIME.
19125         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
19126         Reported by Ralf Wildenhues.
19127
19128 2007-01-24  Bruno Haible  <bruno@clisp.org>
19129
19130         Drop AC_REQUIRE calls that are redundant with the module dependencies.
19131         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
19132         gl_GETADDRINFO.
19133         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
19134         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
19135         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
19136
19137 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
19138
19139         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
19140         Don't use 'exit'; just return from 'main'.
19141         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
19142
19143         * lib/fnmatch_.h: Readjust white space and comments to match
19144         glibc, to avoid spurious diffs.
19145
19146 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
19147
19148         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
19149         2004-12-01 change by Jakub Jelinek, since this code won't compile
19150         if !LIBC.  Problem reported by Bob Proulx.
19151
19152 2007-01-23  Bruno Haible  <bruno@clisp.org>
19153
19154         * lib/striconveh.c: Include c-strcaseeq.h.
19155         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
19156         * modules/striconveh (Depends-on): Add c-strcaseeq.
19157
19158 2007-01-23  Bruno Haible  <bruno@clisp.org>
19159
19160         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
19161
19162         * modules/c-strcaseeq: New file.
19163         * lib/c-strcaseeq.h: New file.
19164
19165         * modules/streq: New file.
19166         * lib/streq.h: New file.
19167
19168 2007-01-23  Bruno Haible  <bruno@clisp.org>
19169
19170         * modules/striconveha-tests: New file.
19171         * tests/test-striconveha.c: New file.
19172
19173         * lib/striconveha.h: Include <stdbool.h>.
19174         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
19175         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
19176         (mem_iconveha_notranslit): Renamed from mem_iconveha.
19177         (mem_iconveha): New function.
19178         (str_iconveha_notranslit): Renamed from str_iconveha.
19179         (str_iconveha): New function.
19180         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
19181         c-strcase.
19182
19183 2007-01-23  Bruno Haible  <bruno@clisp.org>
19184
19185         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
19186         encodings without forgiving before trying any encoding with handler.
19187         (str_iconveha): Try all encodings without forgiving before trying any
19188         encoding with handler.
19189
19190 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
19191
19192         Import the following changes from libc.
19193
19194         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
19195
19196         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
19197
19198         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
19199
19200         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
19201         normal_bracket label.
19202
19203         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
19204
19205         [BZ #361]
19206         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
19207         to normal_bracket after fetching the next character.
19208
19209 2007-01-22  Bruno Haible  <bruno@clisp.org>
19210
19211         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
19212         argument.
19213         * lib/striconveh.c (iconv_carefully_1): New function.
19214         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
19215         argument.
19216         (str_cd_iconveh): Update.
19217         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
19218         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
19219         * tests/test-striconveh.c (MAGIC): New macro.
19220         (new_offsets): New function.
19221         (main): Test call with and without offsets.
19222
19223 2007-01-22  Bruno Haible  <bruno@clisp.org>
19224
19225         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
19226         * modules/sys_select (Makefile.am): Likewise.
19227         * modules/sys_socket (Makefile.am): Likewise.
19228         * modules/sys_time (Makefile.am): Likewise.
19229
19230 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
19231
19232         * modules/gettimeofday (License): Change from GPL to LGPL, since
19233         gettimeofday is a library function.
19234
19235 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
19236
19237         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
19238
19239 2007-01-21  Bruno Haible  <bruno@clisp.org>
19240
19241         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
19242
19243 2007-01-21  Bruno Haible  <bruno@clisp.org>
19244
19245         * modules/striconveha: New file.
19246         * lib/striconveha.h: New file.
19247         * lib/striconveha.c: New file.
19248         * MODULES.html.sh (Internationalization functions): Add striconveha.
19249         * lib/striconv.c (str_iconv): Optimize the case of an empty input
19250         string.
19251         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
19252
19253 2007-01-21  Bruno Haible  <bruno@clisp.org>
19254
19255         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
19256         * lib/striconveh.c (str_iconveh): Likewise.
19257
19258 2007-01-21  Bruno Haible  <bruno@clisp.org>
19259
19260         * lib/striconveh.h (mem_iconveh): New declaration.
19261         * lib/striconveh.c (mem_iconveh): New function.
19262         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
19263
19264 2007-01-21  Bruno Haible  <bruno@clisp.org>
19265
19266         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
19267
19268         * lib/striconveh.h (mem_cd_iconveh): Change specification.
19269         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
19270         original result buffer.
19271         (str_cd_iconveh): Update.
19272         * tests/test-striconveh.c (main): Update.
19273
19274         * lib/striconv.h (mem_cd_iconv): Change specification.
19275         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
19276         result buffer.
19277         (str_cd_iconv): Update.
19278         * tests/test-striconv.c (main): Update.
19279
19280 2007-01-21  Bruno Haible  <bruno@clisp.org>
19281
19282         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
19283
19284 2007-01-20  Jim Meyering  <jim@meyering.net>
19285
19286         * lib/userspec.c (parse_with_separator): If a user or group string
19287         starts with "+", skip the corresponding name-to-ID look-up, since
19288         such a look-up must fail: user and group names may not include "+".
19289
19290 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
19291
19292         * lib/poll.c: Include sys/time.h and time.h unconditionally,
19293         since we now assume the sys_time module.
19294         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
19295         check for sys/time.h; no longer needed.
19296         * modules/poll (Depends-on): Depend on sys_time.
19297
19298 2007-01-18  Bruno Haible  <bruno@clisp.org>
19299
19300         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
19301         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
19302
19303         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
19304         gettimeofday.
19305
19306         * tests/test-gettimeofday.c: Include <time.h>.
19307         (dummy): Remove variable.
19308
19309         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
19310         gl_HEADER_SYS_TIME_H.
19311         (gl_HEADER_SYS_TIME_H): New macro.
19312
19313         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
19314         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
19315         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
19316         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
19317         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
19318         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
19319         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
19320         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
19321         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
19322         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
19323         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
19324
19325         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
19326         last change; it caused a compilation error when cross-compiling to
19327         Cygwin.
19328
19329 2007-01-18  Jim Meyering  <jim@meyering.net>
19330
19331         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
19332         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
19333         than the race-prone "test -d sys || mkdir sys".
19334         (configure.ac): Use AC_PROG_MKDIR_P.
19335         * modules/sys_select: Likewise.
19336         * modules/sys_socket: Likewise.
19337         * modules/sys_time: Likewise.
19338
19339 2007-01-18  Eric Blake  <ebb9@byu.net>
19340
19341         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
19342         replace gettimeofday.
19343         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
19344         name, to avoid infinite recursion.
19345
19346 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
19347
19348         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
19349         module sys_time.
19350         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
19351         assume timespec.h defines struct timeval.
19352         * lib/settime.c: Likewise.
19353         * lib/utimens.c: Likewise.
19354         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
19355         since we now assume the gettimeofday module.
19356         * lib/tempname.c (__gen_tempname): Likewise.
19357         * lib/gettimeofday.h: Remove.
19358         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
19359         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
19360         Include <time.h>, for 'time()'.
19361         (localtime_buffer_addr): Also use this workaround if
19362         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
19363         to simplify the uses.  All uses changed.
19364         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
19365         that #undef is inside {}, and 'const' follows type name consistently.
19366         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
19367         (gettimeofday): Do not use the maximum possible value for
19368         tv->tv_usec, since that might break usages other than ls.c.
19369         Instead, we'll leave ls.c alone.  This undoes today's patch
19370         by Bruno.  Add a compile-time warning for 1s-clock resolution;
19371         we've never observed the problem but might as well keep the
19372         canary.
19373         * lib/nanosleep.c: Include timespec.h first, for interface check.
19374         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
19375         now assume the sys_time module.
19376         * lib/tempname.c: Likewise.
19377         * lib/timespec.h: Likewise.
19378         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
19379         needed.
19380         * lib/strftime.c: Likewise.
19381         * lib/timespec.h: Likewise.
19382         * lib/posixtm.c: Include posixtm.h first, for interface check.
19383         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
19384         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
19385         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
19386         * lib/sys_time_.h: New file.
19387         * lib/timespec.h (struct timespec): Use long int, not long.
19388         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
19389         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
19390         Remove obsolescent call to AC_HEADER_TIME.
19391         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
19392         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
19393         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
19394         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
19395         Likewise.
19396         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
19397         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
19398         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
19399         into the sys_time module.  Check for gettimeofday just once.
19400         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
19401         for gettimeofday signature to just check the signature.  Merely
19402         compile it, since linking doesn't test signature.  Improve test for
19403         whether gettimeofday.o is actually needed.
19404         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
19405         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
19406         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
19407         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
19408         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
19409         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
19410         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
19411         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
19412         than worrying about sys/time.h.
19413         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
19414         Don't bother worrying about TIME_WITH_SYS_TIME.
19415         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
19416         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
19417         * m4/sys_time_h.m4: New file.
19418         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
19419         Don't include sys/time.h.  Return from main rather than exiting.
19420         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
19421         all uses changed.
19422         * modules/gethrxtime (Depends-on): Add sys_time.
19423         * modules/gettime (Depends-on): Likewise.
19424         * modules/gettimeofday (Depends-on): Likewise.
19425         * modules/nanosleep (Depends-on): Likewise.
19426         * modules/settime (Depends-on): Likewise.
19427         * modules/tempname (Depends-on): Likewise.
19428         * modules/utimens (Depends-on): Likewise.
19429         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
19430         (Include:) Change back to <sys/time.h>.
19431         (Maintainer:) Add self.
19432         * modules/sys_time: New file.
19433         * modules/tempname (Depends-on): Add gettimeofday.
19434         * tests/test-gettimeofday.c: Include <sys/time.h>
19435         rather than gettimeofday.h.
19436
19437 2007-01-17  Bruno Haible  <bruno@clisp.org>
19438
19439         * gnulib-tool (func_get_license): Revert last patch. Instead, let
19440         the license default to GPL.
19441         (func_create_testdir): Don't complain if a module is LGPL and its
19442         tests module depends on GPLed modules.
19443
19444 2007-01-17  Bruno Haible  <bruno@clisp.org>
19445
19446         * lib/gettimeofday.c (gettimeofday): Add code for the case
19447         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
19448         maximum possible value for tv->tv_usec, rather than the minimum one.
19449
19450 2005-10-08  Martin Lambers  <marlam@marlam.de>
19451 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
19452 2007-01-16  Bruno Haible  <bruno@clisp.org>
19453
19454         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
19455         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
19456         gl_FUNC_GETTIMEOFDAY.
19457         (Include): Add gettimeofday.h.
19458         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
19459         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
19460         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
19461         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
19462         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
19463         * lib/gettimeofday.h: New file.
19464         * lib/gettimeofday.c: Include <sys/timeb.h>.
19465         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
19466         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
19467         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
19468         fall back on time().
19469
19470         * tests/test-gettimeofday.c: New file.
19471         * modules/gettimeofday-tests: New file.
19472
19473 2007-01-16  Eric Blake  <ebb9@byu.net>
19474
19475         * modules/fnmatch (Depends-on): Depend on wchar.
19476         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
19477         * m4/fnmatch.m4: Likewise.
19478         * modules/mbchar (Makefile.am): Assume <wchar.h>.
19479         * m4/mbchar.m4: Likewise.
19480         * modules/mbswidth (Depends-on): Depend on wchar.
19481         * lib/mbswidth.c: Assume <wchar.h>.
19482         * m4/mbswidth.m4: Likewise.
19483         * modules/quotearg (Depends-on): Depend on wchar.
19484         * lib/quotearg.c: Assume <wchar.h>.
19485         * m4/quotearg.m4: Likewise.
19486         * modules/regex (Depends-on): Depend on wchar.
19487         * lib/regex_internal.h: Assume <wchar.h>.
19488         * m4/regex.m4: Likewise.
19489         * modules/stdint (Depends-on): Depend on wchar.
19490         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
19491         * m4/stdint.m4: Likewise.
19492         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
19493         * modules/strftime (Depends-on): Depend on wchar.
19494         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
19495         * modules/strtol (Depends-on): Depend on wchar.
19496         * lib/strtol.c: Assume <wchar.h>.
19497         * modules/wcwidth (Depends-on): Depend on wchar.
19498         * lib/wcwidth.h: Assume <wchar.h>.
19499         * m4/wcwidth.m4: Likewise.
19500
19501 2007-01-16  Bruno Haible  <bruno@clisp.org>
19502
19503         * modules/csharpexec-script: New, created from...
19504         * modules/csharpexec: ... this.
19505
19506 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
19507
19508         * modules/javaexec-script: New, created from...
19509         * modules/javaexec: ... this.
19510
19511 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
19512
19513         * modules/poll (Dependencies): Add sys_select.
19514
19515 2007-01-15  Jim Meyering  <jim@meyering.net>
19516
19517         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
19518         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
19519         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
19520         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
19521
19522 2007-01-15  Bruno Haible  <bruno@clisp.org>
19523
19524         * modules/striconveh: New file.
19525         * lib/striconveh.h: New file.
19526         * lib/striconveh.c: New file.
19527         * MODULES.html.sh (Internationalization functions): Add striconveh.
19528
19529         * modules/striconveh-tests: New file.
19530         * tests/test-striconveh.c: New file.
19531
19532 2007-01-15  Bruno Haible  <bruno@clisp.org>
19533
19534         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
19535         not from GNU libiconv or GNU libc.
19536
19537 2007-01-15  Bruno Haible  <bruno@clisp.org>
19538
19539         * doc/gnulib-intro.texi (Copyright): Explain the different license
19540         terms for module descriptions, autoconf macros, tests, documentation.
19541
19542 2007-01-14  Bruno Haible  <bruno@clisp.org>
19543
19544         * modules/striconv-tests: New file.
19545         * tests/test-striconv.c: New file.
19546
19547 2007-01-14  Bruno Haible  <bruno@clisp.org>
19548
19549         * modules/iconv-tests: New file.
19550         * tests/test-iconv.c: New file.
19551
19552 2007-01-14  Bruno Haible  <bruno@clisp.org>
19553
19554         * gnulib-tool (func_get_license): For test modules, use the license of
19555         the main module.
19556
19557 2007-01-14  Bruno Haible  <bruno@clisp.org>
19558
19559         * modules/iconv (Include): Clarify that <iconv.h> can only be included
19560         if iconv is found to exist.
19561
19562 2007-01-14  Bruno Haible  <bruno@clisp.org>
19563
19564         * modules/c-ctype-tests: New file.
19565         * tests/test-c-ctype.c: New file.
19566
19567 2007-01-14  Bruno Haible  <bruno@clisp.org>
19568
19569         * modules/binary-io-tests: New file.
19570         * tests/test-binary-io.sh: New file.
19571         * tests/test-binary-io.c: New file.
19572
19573 2007-01-14  Bruno Haible  <bruno@clisp.org>
19574
19575         * modules/array-oset-tests: New file.
19576         * tests/test-array_oset.c: New file.
19577
19578 2007-01-14  Bruno Haible  <bruno@clisp.org>
19579
19580         * modules/array-list-tests: New file.
19581         * tests/test-array_list.c: New file.
19582
19583 2007-01-14  Bruno Haible  <bruno@clisp.org>
19584
19585         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
19586         and make.
19587         Reported by Simon Josefsson in
19588         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
19589
19590 2007-01-14  Bruno Haible  <bruno@clisp.org>
19591
19592         * modules/allocsa-tests: New file.
19593         * tests/test-allocsa.c: New file.
19594
19595 2007-01-14  Bruno Haible  <bruno@clisp.org>
19596
19597         * modules/fchdir (Depends-on): Add absolute-header.
19598         * modules/unistd (Depends-on): Likewise.
19599
19600 2006-12-30  Bruno Haible  <bruno@clisp.org>
19601
19602         * modules/fchdir: New file.
19603         * modules/unistd (Files): Add lib/unistd_.h.
19604         (Makefile.am): Generate unistd.h from unistd_.h.
19605         * lib/fchdir.c: New file.
19606         * lib/dirent_.h: New file.
19607         * lib/unistd_.h: New file.
19608         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
19609         * m4/fchdir.m4: New file.
19610         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
19611         (gl_HEADER_UNISTD): Invoke it.
19612         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
19613         function.
19614         * lib/backupfile.c (opendir, closedir): Undefine.
19615         * lib/chown.c (open, close): Undefine.
19616         * lib/clean-temp.c (open, close): Undefine.
19617         * lib/copy-file.c (open, close): Undefine.
19618         * lib/execute.c (open, close): Undefine.
19619         * lib/fsusage.c (open, close): Undefine.
19620         * lib/gc-gnulib.c (open, close): Undefine.
19621         * lib/getcwd.c (opendir, closedir): Undefine.
19622         * lib/glob.c (opendir, closedir): Undefine.
19623         * lib/javacomp.c (open, close): Undefine.
19624         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
19625         * lib/openat-proc.c (open, close): Undefine.
19626         * lib/pagealign_alloc.c (open, close): Undefine.
19627         * lib/pipe.c (open, close): Undefine.
19628         * lib/progreloc.c (open, close): Undefine.
19629         * lib/savedir.c (opendir, closedir): Undefine.
19630         * lib/utime.c (open, close): Undefine.
19631         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
19632
19633 2007-01-10  Bruno Haible  <bruno@clisp.org>
19634
19635         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
19636
19637 2007-01-12  Eric Blake  <ebb9@byu.net>
19638
19639         Provide a robust <wchar.h>.  Further simplifications are now
19640         possible in other modules, but not included here.
19641         * modules/wchar: New module.
19642         * m4/wchar.m4: New file.
19643         * lib/wchar_.h: Likewise.
19644         * modules/mbchar (Depends-on): Depend on wchar, as the first use
19645         of the new module.
19646         * MODULES.html.sh (Extended multibyte and wide character utilities):
19647         New section.
19648
19649 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
19650
19651         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
19652         to a reasonable default for memory allocation.
19653         (xreadlink): Don't allocate a huge buffer, to work around a buggy
19654         file system that reports garbage st_size values for symlinks.
19655         Problem reported by Liyang Hu.
19656
19657 2007-01-11  Simon Josefsson  <simon@josefsson.org>
19658
19659         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
19660         Emacs .#* auto-save files).
19661
19662 2007-01-11  Bruno Haible  <bruno@clisp.org>
19663
19664         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
19665         directory.
19666
19667 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
19668
19669         Use @...@ consistently in lib/wctype_.h.
19670         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
19671         on it being set to 1 or 0.
19672         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
19673         go back to AC_SUBSTing it.
19674         * modules/wctype (Makefile.am): Undo previous change.
19675
19676 2007-01-10  Eric Blake  <ebb9@byu.net>
19677
19678         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
19679         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
19680         * modules/wctype (Makefile.am): Likewise.
19681         Reported by Chris McGuire.
19682
19683 2007-01-10  Jim Meyering  <jim@meyering.net>
19684
19685         fts.c: a small readability/maintainability improvement
19686         * lib/fts.c (fts_read): Make this code slightly more readable and
19687         maintainable by hoisting the "sp->fts_cur = p" assignments to
19688         immediately follow the statements that set P.  Derived from
19689         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
19690
19691 2007-01-10  Eric Blake  <ebb9@byu.net>
19692
19693         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
19694         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
19695         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
19696         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
19697         Reported by Chris McGuire.
19698
19699 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19700
19701         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
19702         in sed script.
19703
19704 2007-01-09  Bruno Haible  <bruno@clisp.org>
19705
19706         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
19707         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
19708         variables.
19709         (func_module): Use them.
19710
19711 2007-01-09  Bruno Haible  <bruno@clisp.org>
19712
19713         * modules/unistr/base: New file.
19714         * lib/unistr.h: New file.
19715
19716         * modules/unistr/u8-to-u16: New file.
19717         * lib/unistr/u8-to-u16.c: New file.
19718
19719         * modules/unistr/u8-to-u32: New file.
19720         * lib/unistr/u8-to-u32.c: New file.
19721
19722         * modules/unistr/u16-to-u8: New file.
19723         * lib/unistr/u16-to-u8.c: New file.
19724
19725         * modules/unistr/u16-to-u32: New file.
19726         * lib/unistr/u16-to-u32.c: New file.
19727
19728         * modules/unistr/u32-to-u8: New file.
19729         * lib/unistr/u32-to-u8.c: New file.
19730
19731         * modules/unistr/u32-to-u16: New file.
19732         * lib/unistr/u32-to-u16.c: New file.
19733
19734         * modules/unistr/u8-check: New file.
19735         * modules/unistr/u16-check: New file.
19736         * modules/unistr/u32-check: New file.
19737         * lib/unistr/u8-check.c: New file.
19738         * lib/unistr/u16-check.c: New file.
19739         * lib/unistr/u32-check.c: New file.
19740
19741         * modules/unistr/u8-chr: New file.
19742         * modules/unistr/u16-chr: New file.
19743         * modules/unistr/u32-chr: New file.
19744         * lib/unistr/u8-chr.c: New file.
19745         * lib/unistr/u16-chr.c: New file.
19746         * lib/unistr/u32-chr.c: New file.
19747
19748         * modules/unistr/u8-cmp: New file.
19749         * modules/unistr/u16-cmp: New file.
19750         * modules/unistr/u32-cmp: New file.
19751         * lib/unistr/u8-cmp.c: New file.
19752         * lib/unistr/u16-cmp.c: New file.
19753         * lib/unistr/u32-cmp.c: New file.
19754
19755         * modules/unistr/u8-cpy: New file.
19756         * modules/unistr/u16-cpy: New file.
19757         * modules/unistr/u32-cpy: New file.
19758         * lib/unistr/u8-cpy.c: New file.
19759         * lib/unistr/u16-cpy.c: New file.
19760         * lib/unistr/u32-cpy.c: New file.
19761         * lib/unistr/u-cpy.h: New file.
19762
19763         * modules/unistr/u8-cpy-alloc: New file.
19764         * modules/unistr/u16-cpy-alloc: New file.
19765         * modules/unistr/u32-cpy-alloc: New file.
19766         * lib/unistr/u8-cpy-alloc.c: New file.
19767         * lib/unistr/u16-cpy-alloc.c: New file.
19768         * lib/unistr/u32-cpy-alloc.c: New file.
19769         * lib/unistr/u-cpy-alloc.h: New file.
19770
19771         * modules/unistr/u8-endswith: New file.
19772         * modules/unistr/u16-endswith: New file.
19773         * modules/unistr/u32-endswith: New file.
19774         * lib/unistr/u8-endswith.c: New file.
19775         * lib/unistr/u16-endswith.c: New file.
19776         * lib/unistr/u32-endswith.c: New file.
19777         * lib/unistr/u-endswith.h: New file.
19778
19779         * modules/unistr/u8-mblen: New file.
19780         * modules/unistr/u16-mblen: New file.
19781         * modules/unistr/u32-mblen: New file.
19782         * lib/unistr/u8-mblen.c: New file.
19783         * lib/unistr/u16-mblen.c: New file.
19784         * lib/unistr/u32-mblen.c: New file.
19785
19786         * modules/unistr/u8-mbtouc: New file.
19787         * modules/unistr/u16-mbtouc: New file.
19788         * modules/unistr/u32-mbtouc: New file.
19789         * lib/unistr/u8-mbtouc.c: New file.
19790         * lib/unistr/u16-mbtouc.c: New file.
19791         * lib/unistr/u32-mbtouc.c: New file.
19792
19793         * modules/unistr/u8-mbtouc-safe: New file.
19794         * modules/unistr/u16-mbtouc-safe: New file.
19795         * modules/unistr/u32-mbtouc-safe: New file.
19796         * lib/unistr/u8-mbtouc-safe.c: New file.
19797         * lib/unistr/u16-mbtouc-safe.c: New file.
19798         * lib/unistr/u32-mbtouc-safe.c: New file.
19799
19800         * modules/unistr/u8-move: New file.
19801         * modules/unistr/u16-move: New file.
19802         * modules/unistr/u32-move: New file.
19803         * lib/unistr/u8-move.c: New file.
19804         * lib/unistr/u16-move.c: New file.
19805         * lib/unistr/u32-move.c: New file.
19806         * lib/unistr/u-move.h: New file.
19807
19808         * modules/unistr/u8-next: New file.
19809         * modules/unistr/u16-next: New file.
19810         * modules/unistr/u32-next: New file.
19811         * lib/unistr/u8-next.c: New file.
19812         * lib/unistr/u16-next.c: New file.
19813         * lib/unistr/u32-next.c: New file.
19814
19815         * modules/unistr/u8-prev: New file.
19816         * modules/unistr/u16-prev: New file.
19817         * modules/unistr/u32-prev: New file.
19818         * lib/unistr/u8-prev.c: New file.
19819         * lib/unistr/u16-prev.c: New file.
19820         * lib/unistr/u32-prev.c: New file.
19821
19822         * modules/unistr/u8-set: New file.
19823         * modules/unistr/u16-set: New file.
19824         * modules/unistr/u32-set: New file.
19825         * lib/unistr/u8-set.c: New file.
19826         * lib/unistr/u16-set.c: New file.
19827         * lib/unistr/u32-set.c: New file.
19828         * lib/unistr/u-set.h: New file.
19829
19830         * modules/unistr/u8-startswith: New file.
19831         * modules/unistr/u16-startswith: New file.
19832         * modules/unistr/u32-startswith: New file.
19833         * lib/unistr/u8-startswith.c: New file.
19834         * lib/unistr/u16-startswith.c: New file.
19835         * lib/unistr/u32-startswith.c: New file.
19836         * lib/unistr/u-startswith.h: New file.
19837
19838         * modules/unistr/u8-stpcpy: New file.
19839         * modules/unistr/u16-stpcpy: New file.
19840         * modules/unistr/u32-stpcpy: New file.
19841         * lib/unistr/u8-stpcpy.c: New file.
19842         * lib/unistr/u16-stpcpy.c: New file.
19843         * lib/unistr/u32-stpcpy.c: New file.
19844         * lib/unistr/u-stpcpy.h: New file.
19845
19846         * modules/unistr/u8-stpncpy: New file.
19847         * modules/unistr/u16-stpncpy: New file.
19848         * modules/unistr/u32-stpncpy: New file.
19849         * lib/unistr/u8-stpncpy.c: New file.
19850         * lib/unistr/u16-stpncpy.c: New file.
19851         * lib/unistr/u32-stpncpy.c: New file.
19852         * lib/unistr/u-stpncpy.h: New file.
19853
19854         * modules/unistr/u8-strcat: New file.
19855         * modules/unistr/u16-strcat: New file.
19856         * modules/unistr/u32-strcat: New file.
19857         * lib/unistr/u8-strcat.c: New file.
19858         * lib/unistr/u16-strcat.c: New file.
19859         * lib/unistr/u32-strcat.c: New file.
19860         * lib/unistr/u-strcat.h: New file.
19861
19862         * modules/unistr/u8-strchr: New file.
19863         * modules/unistr/u16-strchr: New file.
19864         * modules/unistr/u32-strchr: New file.
19865         * lib/unistr/u8-strchr.c: New file.
19866         * lib/unistr/u16-strchr.c: New file.
19867         * lib/unistr/u32-strchr.c: New file.
19868
19869         * modules/unistr/u8-strcmp: New file.
19870         * modules/unistr/u16-strcmp: New file.
19871         * modules/unistr/u32-strcmp: New file.
19872         * lib/unistr/u8-strcmp.c: New file.
19873         * lib/unistr/u16-strcmp.c: New file.
19874         * lib/unistr/u32-strcmp.c: New file.
19875
19876         * modules/unistr/u8-strcpy: New file.
19877         * modules/unistr/u16-strcpy: New file.
19878         * modules/unistr/u32-strcpy: New file.
19879         * lib/unistr/u8-strcpy.c: New file.
19880         * lib/unistr/u16-strcpy.c: New file.
19881         * lib/unistr/u32-strcpy.c: New file.
19882         * lib/unistr/u-strcpy.h: New file.
19883
19884         * modules/unistr/u8-strcspn: New file.
19885         * modules/unistr/u16-strcspn: New file.
19886         * modules/unistr/u32-strcspn: New file.
19887         * lib/unistr/u8-strcspn.c: New file.
19888         * lib/unistr/u16-strcspn.c: New file.
19889         * lib/unistr/u32-strcspn.c: New file.
19890         * lib/unistr/u-strcspn.h: New file.
19891
19892         * modules/unistr/u8-strdup: New file.
19893         * modules/unistr/u16-strdup: New file.
19894         * modules/unistr/u32-strdup: New file.
19895         * lib/unistr/u8-strdup.c: New file.
19896         * lib/unistr/u16-strdup.c: New file.
19897         * lib/unistr/u32-strdup.c: New file.
19898         * lib/unistr/u-strdup.h: New file.
19899
19900         * modules/unistr/u8-strlen: New file.
19901         * modules/unistr/u16-strlen: New file.
19902         * modules/unistr/u32-strlen: New file.
19903         * lib/unistr/u8-strlen.c: New file.
19904         * lib/unistr/u16-strlen.c: New file.
19905         * lib/unistr/u32-strlen.c: New file.
19906         * lib/unistr/u-strlen.h: New file.
19907
19908         * modules/unistr/u8-strmblen: New file.
19909         * modules/unistr/u16-strmblen: New file.
19910         * modules/unistr/u32-strmblen: New file.
19911         * lib/unistr/u8-strmblen.c: New file.
19912         * lib/unistr/u16-strmblen.c: New file.
19913         * lib/unistr/u32-strmblen.c: New file.
19914
19915         * modules/unistr/u8-strmbtouc: New file.
19916         * modules/unistr/u16-strmbtouc: New file.
19917         * modules/unistr/u32-strmbtouc: New file.
19918         * lib/unistr/u8-strmbtouc.c: New file.
19919         * lib/unistr/u16-strmbtouc.c: New file.
19920         * lib/unistr/u32-strmbtouc.c: New file.
19921
19922         * modules/unistr/u8-strncat: New file.
19923         * modules/unistr/u16-strncat: New file.
19924         * modules/unistr/u32-strncat: New file.
19925         * lib/unistr/u8-strncat.c: New file.
19926         * lib/unistr/u16-strncat.c: New file.
19927         * lib/unistr/u32-strncat.c: New file.
19928         * lib/unistr/u-strncat.h: New file.
19929
19930         * modules/unistr/u8-strncmp: New file.
19931         * modules/unistr/u16-strncmp: New file.
19932         * modules/unistr/u32-strncmp: New file.
19933         * lib/unistr/u8-strncmp.c: New file.
19934         * lib/unistr/u16-strncmp.c: New file.
19935         * lib/unistr/u32-strncmp.c: New file.
19936
19937         * modules/unistr/u8-strncpy: New file.
19938         * modules/unistr/u16-strncpy: New file.
19939         * modules/unistr/u32-strncpy: New file.
19940         * lib/unistr/u8-strncpy.c: New file.
19941         * lib/unistr/u16-strncpy.c: New file.
19942         * lib/unistr/u32-strncpy.c: New file.
19943         * lib/unistr/u-strncpy.h: New file.
19944
19945         * modules/unistr/u8-strnlen: New file.
19946         * modules/unistr/u16-strnlen: New file.
19947         * modules/unistr/u32-strnlen: New file.
19948         * lib/unistr/u8-strnlen.c: New file.
19949         * lib/unistr/u16-strnlen.c: New file.
19950         * lib/unistr/u32-strnlen.c: New file.
19951         * lib/unistr/u-strnlen.h: New file.
19952
19953         * modules/unistr/u8-strpbrk: New file.
19954         * modules/unistr/u16-strpbrk: New file.
19955         * modules/unistr/u32-strpbrk: New file.
19956         * lib/unistr/u8-strpbrk.c: New file.
19957         * lib/unistr/u16-strpbrk.c: New file.
19958         * lib/unistr/u32-strpbrk.c: New file.
19959         * lib/unistr/u-strpbrk.h: New file.
19960
19961         * modules/unistr/u8-strrchr: New file.
19962         * modules/unistr/u16-strrchr: New file.
19963         * modules/unistr/u32-strrchr: New file.
19964         * lib/unistr/u8-strrchr.c: New file.
19965         * lib/unistr/u16-strrchr.c: New file.
19966         * lib/unistr/u32-strrchr.c: New file.
19967
19968         * modules/unistr/u8-strspn: New file.
19969         * modules/unistr/u16-strspn: New file.
19970         * modules/unistr/u32-strspn: New file.
19971         * lib/unistr/u8-strspn.c: New file.
19972         * lib/unistr/u16-strspn.c: New file.
19973         * lib/unistr/u32-strspn.c: New file.
19974         * lib/unistr/u-strspn.h: New file.
19975
19976         * modules/unistr/u8-strstr: New file.
19977         * modules/unistr/u16-strstr: New file.
19978         * modules/unistr/u32-strstr: New file.
19979         * lib/unistr/u8-strstr.c: New file.
19980         * lib/unistr/u16-strstr.c: New file.
19981         * lib/unistr/u32-strstr.c: New file.
19982         * lib/unistr/u-strstr.h: New file.
19983
19984         * modules/unistr/u8-strtok: New file.
19985         * modules/unistr/u16-strtok: New file.
19986         * modules/unistr/u32-strtok: New file.
19987         * lib/unistr/u8-strtok.c: New file.
19988         * lib/unistr/u16-strtok.c: New file.
19989         * lib/unistr/u32-strtok.c: New file.
19990         * lib/unistr/u-strtok.h: New file.
19991
19992         * modules/unistr/u8-uctomb: New file.
19993         * modules/unistr/u16-uctomb: New file.
19994         * modules/unistr/u32-uctomb: New file.
19995         * lib/unistr/u8-uctomb.c: New file.
19996         * lib/unistr/u16-uctomb.c: New file.
19997         * lib/unistr/u32-uctomb.c: New file.
19998
19999         * MODULES.html.sh (Unicode string functions): Add the new modules.
20000
20001 2007-01-08  Bruno Haible  <bruno@clisp.org>
20002
20003         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
20004         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
20005         subdirectories.
20006
20007 2007-01-08  Karl Berry  <karl@gnu.org>
20008
20009         * doc/error.texi: mention that main() fns must set program_name
20010         when progname is used.
20011
20012 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
20013
20014         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
20015         WCTYPE_H is empty, for the benefit of builds from non-distclean
20016         directories.  Problem reported by Eric Blake in
20017         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
20018
20019 2007-01-08  Bruno Haible  <bruno@clisp.org>
20020
20021         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
20022         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
20023         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
20024         PROVIDE_CANONICALIZE_FILENAME_MODE.
20025         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
20026
20027 2007-01-08  Bruno Haible  <bruno@clisp.org>
20028
20029         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
20030         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
20031         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
20032         * lib/fts.c: Likewise.
20033         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
20034
20035 2006-12-25  Bruno Haible  <bruno@clisp.org>
20036
20037         * modules/utf8-ucs4-safe: New file.
20038         * lib/utf8-ucs4-safe.h: New file.
20039         * lib/unistr/utf8-ucs4-safe.c: New file.
20040
20041         * modules/utf16-ucs4-safe: New file.
20042         * lib/utf16-ucs4-safe.h: New file.
20043         * lib/unistr/utf16-ucs4-safe.c: New file.
20044
20045         * MODULES.html.sh (Unicode string functions): Add the new modules.
20046
20047 2007-01-08  Bruno Haible  <bruno@clisp.org>
20048
20049         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
20050         (Depends-on): Add unitypes.
20051         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
20052         (u8_mbtouc_aux): Move out to separate file.
20053         (u8_mbtouc): Use ucs4_t, uint8_t types.
20054         * lib/unistr/utf8-ucs4.c: New file.
20055
20056         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
20057         (Depends-on): Add unitypes.
20058         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
20059         (u16_mbtouc_aux): Move out to separate file.
20060         (u16_mbtouc): Use ucs4_t, uint16_t types.
20061         * lib/unistr/utf16-ucs4.c: New file.
20062
20063         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
20064         (Depends-on): Add unitypes.
20065         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
20066         (u8_uctomb_aux): Move out to separate file.
20067         (u8_uctomb): Use ucs4_t, uint8_t types.
20068         * lib/unistr/ucs4-utf8.c: New file.
20069
20070         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
20071         (Depends-on): Add unitypes.
20072         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
20073         (u16_uctomb_aux): Move out to separate file.
20074         (u16_uctomb): Use ucs4_t, uint16_t types.
20075         * lib/unistr/ucs4-utf16.c: New file.
20076
20077 2006-12-25  Bruno Haible  <bruno@clisp.org>
20078
20079         * modules/unitypes: New file.
20080         * lib/unitypes.h: New file.
20081         * MODULES.html.sh (func_all_modules): New section "Unicode string
20082         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
20083         this section. Add unitypes.
20084
20085 2007-01-08  Bruno Haible  <bruno@clisp.org>
20086
20087         Avoid variable names that conflict with those from libtool.
20088         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
20089         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
20090         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
20091         library_names_spec to acl_library_names_spec, hardcode_* to
20092         acl_hardcode_*.
20093         Reported by Ralf Wildenhues.
20094
20095 2007-01-08  Bruno Haible  <bruno@clisp.org>
20096
20097         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
20098         definition.
20099         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
20100         definition.
20101         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
20102         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
20103         definition.
20104         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
20105         definition.
20106         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
20107         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
20108         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
20109         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
20110         definition.
20111         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
20112         definition.
20113         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
20114         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
20115         GC_USE_<algorithm>.
20116         * lib/gc-libgcrypt.c: Likewise.
20117         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
20118         * modules/gc-arctwo (configure.ac): Likewise.
20119         * modules/gc-des (configure.ac): Likewise.
20120         * modules/gc-hmac-md5 (configure.ac): Likewise.
20121         * modules/gc-hmac-sha1 (configure.ac): Likewise.
20122         * modules/gc-md2 (configure.ac): Likewise.
20123         * modules/gc-md4 (configure.ac): Likewise.
20124         * modules/gc-md5 (configure.ac): Likewise.
20125         * modules/gc-random (configure.ac): Likewise.
20126         * modules/gc-rijndael (configure.ac): Likewise.
20127         * modules/gc-sha1 (configure.ac): Likewise.
20128
20129 2007-01-08  Bruno Haible  <bruno@clisp.org>
20130
20131         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
20132         macro definition.
20133         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
20134         definition.
20135         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
20136         definition.
20137         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
20138         * modules/fcntl-safer (configure.ac): Likewise.
20139         * modules/fopen-safer (configure.ac): Likewise.
20140         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
20141         GNULIB_FWRITEERROR macro definition.
20142
20143 2007-01-08  Bruno Haible  <bruno@clisp.org>
20144
20145         * m4/gnulib-common.m4: New file.
20146         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
20147         (func_get_filelist): Add m4/gnulib-common.m4.
20148
20149 2007-01-08  Bruno Haible  <bruno@clisp.org>
20150
20151         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
20152         command.
20153
20154 2007-01-08  Jim Meyering  <jim@meyering.net>
20155
20156         Use a more robust test for a "can't happen" condition.
20157         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
20158         narrowed the st_size value.  Presuming the "can't happen" condition
20159         is true, that narrowing could conceivably convert an invalid st_size
20160         value into a valid one.  Instead, use a change based on Matthew
20161         Woehlke's original patch.
20162
20163         Slight readability improvement: use an assert-like macro
20164         in place of literal "abort ()" uses.
20165         * lib/fts.c (fts_assert): Define.
20166         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
20167         Use this macro instead of a bare 'abort'.
20168
20169 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
20170
20171         Don't worry about using IRIX 5.3's wctype.h broken definitions;
20172         simply work around them.
20173         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
20174         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
20175         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
20176         declaring.
20177         Don't bother to define as macros, since the standard doesn't require it.
20178         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
20179         longer worry about IRIX 5.3.
20180         (HAVE_WCTYPE_CTMP_BUG): Remove.
20181
20182 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
20183
20184         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
20185         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
20186         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
20187         Problems reported by Georg Schwarz for IRIX 5.3.
20188
20189         * gnulib-tool (autoconf_minversion): Take the maximum version number
20190         found, not the minimum.  Problem reported by James Youngman.
20191
20192 2007-01-03  Karl Berry  <karl@gnu.org>
20193
20194         * doc/error.texi: new file, explaining interaction with progname.
20195         * doc/gnulib.texi: include it.  Update copyright.
20196
20197 2007-01-03  Simon Josefsson  <simon@josefsson.org>
20198
20199         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
20200         AC_CANONICAL_HOST, to improve autobuild outputs.
20201
20202 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
20203             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
20204
20205         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
20206         sockets, server sockets, and other file descriptors.  Count errors
20207         to compute the return value.  Reorder the code a bit to be easier
20208         to follow.  Don't set event bits that were not requested (except
20209         POLLERR and POLLHUP).
20210
20211 2007-01-01  Bruno Haible  <bruno@clisp.org>
20212
20213         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
20214
20215 2007-01-03  Jim Meyering  <jim@meyering.net>
20216
20217         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
20218
20219 2007-01-02  Bruno Haible  <bruno@clisp.org>
20220
20221         * modules/settime (Include): Require timespec.h.
20222         * modules/nanosleep (Include): Likewise.
20223
20224 2007-01-01  Bruno Haible  <bruno@clisp.org>
20225
20226         * gnulib-tool (func_emit_copyright_notice): Bump year.
20227         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
20228
20229 2007-01-01  Bruno Haible  <bruno@clisp.org>
20230
20231         Improve support for OpenBSD.
20232         * build-aux/config.rpath (libname_spec): Export.
20233         (library_names_spec): New variable. Export.
20234         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
20235         library_names_spec from the config.rpath output. Locate shared library
20236         through the name pattern in library_names_spec.
20237
20238 2007-01-01  Eric Blake  <ebb9@byu.net>
20239
20240         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
20241
20242 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
20243
20244         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
20245         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
20246         assume the C locale, and avoid an "eval" that could cause trouble.
20247         Problem with SORT reported by Bob Proulx.
20248
20249         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
20250         Define.  Trivial patch from Henning Nielsen Lund, originally
20251         sent to bug-grep@gnu.org today.
20252
20253 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
20254
20255         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
20256         struct stat.  Problem reported by Henning Nielsen Lund.
20257         * lib/acl.c: Include acl.h first, to check interface.  Don't
20258         bother to include sys/types.h and sys/stat.h again.
20259
20260 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
20261
20262         Import the following change from libc; problem reported by
20263         Sven Verdoolaege.
20264
20265         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
20266
20267         [BZ #1373]
20268         * lib/argp.h: Remove __NTH for __argp_usage inline function.
20269
20270 2006-12-28  Jim Meyering  <jim@meyering.net>
20271
20272         * build-aux/announce-gen: Do not assume that the package
20273         builds any of tar.gz, tar.bz2, and .xdelta files.
20274         Suggestion from Simon Josefsson.
20275
20276 2006-12-28  Simon Josefsson  <simon@josefsson.org>
20277
20278         * modules/announce-gen: New file.
20279
20280 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
20281
20282         * lib/mbchar.h: Just include <wctype.h>; the wctype module
20283         handles its gotchas now.
20284         * lib/mbswidth.c: Likewise.
20285         * lib/wcwidth.h: Likewise.
20286         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
20287         and iswcntrl; the wctype module does this stuff now.
20288         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
20289         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
20290         * modules/mbchar (Depends-on): Add wctype.
20291         * modules/mbswidth (Depends-on): Likewise.
20292         * modules/wcwidth (Depends-on): Likewise.
20293
20294 2006-12-27  Eric Blake  <ebb9@byu.net>
20295
20296         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
20297         module uses more than what <wctype.h> is required to provide.
20298
20299 2006-12-26  Eric Blake  <ebb9@byu.net>
20300
20301         * gnulib-tool (sed_extract_prog): Avoid space-tab.
20302
20303 2006-12-26  Eric Blake  <ebb9@byu.net>
20304
20305         * modules/absolute-header: New module.
20306         * modules/fcntl (Depends-on): Depend on it.
20307         * modules/inttypes (Depends-on): Likewise.
20308         * modules/stdint (Depends-on): Likewise.
20309         * modules/sys_stat (Depends-on): Likewise.
20310         * modules/wctype (Depends-on): Likewise.
20311         * MODULES.html.sh (Support for building libraries and
20312         executables): Document it.
20313
20314 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
20315
20316         * gnulib-tool (SED): Remove, undoing previous change.
20317         The problem was that it broke coreutils on Solaris, because
20318         "sed --posix" leaked into a makefile.
20319         (sed): New alias, if 'alias' and GNU sed.
20320
20321 2006-12-24  Jim Meyering  <jim@meyering.net>
20322
20323         Work around an fchownat bug in glibc-2.4:
20324         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
20325         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
20326         in spite of the -P option.
20327         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
20328         New macros.
20329         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
20330         * modules/openat (Files): Add lib/fchownat.c.
20331         * lib/openat.c (fchownat): Don't define here.  Move to...
20332         * lib/fchownat.c: ...this new file.
20333
20334 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
20335
20336         Fix bug reported by Bruno Haible in
20337         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
20338         where quotearg.c didn't compile on Mac OS X 10.2 because it
20339         lacks <wchar.h> and wint_t.
20340         * lib/wctype_.h (__wctype_wint_t): New type.
20341         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
20342         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
20343         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
20344         Arg is now of type __wctype_wint_t, not wint_t.
20345         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
20346         substitute HAVE_WINT_T.
20347         * modules/wctype (Files): Add m4/wint_t.m4.
20348         (wctype.h): Substitute HAVE_WINT_T.
20349
20350 2006-12-23  Bruno Haible  <bruno@clisp.org>
20351
20352         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
20353
20354 2006-12-23  Bruno Haible  <bruno@clisp.org>
20355
20356         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
20357         S_ISLNK.
20358         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
20359         mingw.
20360
20361 2006-12-22  Bruno Haible  <bruno@clisp.org>
20362
20363         * lib/copy-file.c: Include acl.h.
20364         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
20365         Close the file descriptors only after being done with copy_acl.
20366         * modules/copy-file (Depends-on): Add acl.
20367
20368 2006-12-22  Bruno Haible  <bruno@clisp.org>
20369
20370         * gnulib-tool (SED): New variable.
20371         Use $SED instead of sed everywhere.
20372
20373 2006-12-22  Bruno Haible  <bruno@clisp.org>
20374
20375         * modules/no-c++: New file.
20376         * m4/no-c++.m4: New file.
20377         * MODULES.html.sh (Support for building libraries and executables):
20378         Add no-c++.
20379
20380 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
20381
20382         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
20383         Include <limits.h>, and use its INT_MAX to rewrite the
20384         j loop so that it does not overflow 'int'.  Problem reported by
20385         Ralf Wildenhues in
20386         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
20387         Play it safe by shifting left by 1 rather than multiplying by 2,
20388         as GCC is less likely to optimize this away when the value
20389         is signed (when it assumes overflow leads to undefined behavior).
20390         Also, don't assume time_t uses two's complement.
20391
20392 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
20393
20394         * MODULES.html.sh: New module wctype.
20395         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
20396         * lib/fnmatch.c: Don't bother to include <wchar.h> before
20397         <wctype.h>, since the new wctype module should fix this.
20398         * lib/quotearg.c: Include <wctype.h> unconditionally, since
20399         the wctype module should arrange for it.
20400         * lib/regex_internal.h: Likewise.
20401         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
20402         since the wctype module should handle this now.
20403         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
20404         * modules/fnmatch (Depends-on): Add wctype.
20405         * modules/quotearg (Depends-on): Likewise.
20406         * modules/regex (Depends-on): Likewise.
20407
20408 2006-12-19  Bruno Haible  <bruno@clisp.org>
20409
20410         * lib/strdup.h [C++]: Wrap definitions in extern "C".
20411         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
20412
20413 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20414
20415         * modules/savewd (Depends-on): Fix dependency on fcntl.
20416
20417 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
20418
20419         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
20420         conforms to C99, rather than relying on the user's environment
20421         setting of STDINT_H.
20422
20423 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
20424         and Eric Blake  <ebb9@byu.net>
20425
20426         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
20427         This is more consistent with the other defines here.
20428         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
20429         Port to z/OS.  Problem reported by Paul Gilmartin.
20430         Change local vars to use gl_ prefix rather than ac_.
20431         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
20432         with other defines.
20433         * modules/double-slash-root: New module.
20434         * modules/dirname (Files): Remove m4/double-slash-root.m4.
20435         (Depends-on): Add double-slash-root.
20436         * MODULES.html.sh (File system functions): Mention new module.
20437
20438 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
20439
20440         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
20441         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
20442         This is for the benefit of gzip, which doesn't do i18n.
20443
20444 2006-12-12  Jim Meyering  <jim@meyering.net>
20445
20446         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
20447         Reported by Andreas Schwab <schwab@suse.de>.
20448
20449 2006-12-12  Bruno Haible  <bruno@clisp.org>
20450
20451         Merge these changes.
20452         2006-09-05  Bruno Haible  <bruno@clisp.org>
20453         * lib/iconvme.c (iconv_string): No need to save and restore errno when
20454         iconv_alloc succeeded.
20455         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
20456         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
20457         test for " && dest " at the end - dest is always != NULL there. Call
20458         iconv with 4xNULL arguments initially, to reset the state. Call iconv
20459         with 2xNULL arguments, also to flush the state storage. Handle the
20460         IRIX iconv behaviour. Realloc the final result, to throw away unused
20461         memory.
20462
20463 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
20464
20465         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
20466         and fchmodat unconditionally, since glibc 2.4 has them.
20467         Problem reported by Arkadiusz Miskiewicz.
20468
20469 2006-12-10  Bruno Haible  <bruno@clisp.org>
20470
20471         * gnulib-tool (func_import): Show the include files only for those
20472         modules that are copied and specified.
20473         Reported by Karl Berry.
20474
20475 2006-12-08  Jim Meyering  <jim@meyering.net>
20476
20477         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
20478         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
20479
20480         * build-aux/announce-gen: Add two new options, both optional:
20481         --bootstrap-tools=TOOL_LIST
20482               a comma-separated list of tools, e.g.,
20483               autoconf,automake,bison,gnulib
20484         --gnulib-snapshot-date=DATE
20485               if gnulib is in the bootstrap tool list,
20486               then report this as the snapshot date.
20487               If not specified, use the current date/time.
20488               If you specify a date here, be sure it's UTC.
20489
20490 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20491
20492         * tests/test-argp-2.sh: Fix test to match actual output.
20493         (func_compare): Fix sed script to be portable.
20494
20495 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
20496
20497         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
20498         workaround for this case.  It is not autoconfigured now; offhand
20499         it's hard to see how to autoconfigure it.
20500
20501 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
20502
20503         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
20504         a directory that is about to be chowned.  Such a directory's
20505         initial file permissions should permit the owner only and this
20506         should not be changed until after the chown, since the group and
20507         other bits would be incorrect if they granted permission before
20508         the chown.
20509
20510         Fix porting problem for iswctype reported by Georg Schwarz in:
20511         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
20512         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
20513         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
20514         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
20515         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
20516
20517 2006-12-03  Jim Meyering  <jim@meyering.net>
20518
20519         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
20520         p->fts_statp may not yet be defined.
20521         (fts_read): Instead, set it in the caller, once p->fts_statp is
20522         sure to be defined, and corresponds to a top-level directory.
20523         This bug made du -x fail.  Here's the coreutils test case:
20524         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
20525         Reported by Mike Frysinger.
20526
20527 2006-12-01  Jim Meyering  <jim@meyering.net>
20528
20529         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
20530         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
20531         Reported by Simon Josefsson.
20532
20533 2006-11-30  Jim Meyering  <jim@meyering.net>
20534
20535         * m4/warning.m4: Use the all-permissive copyright notice
20536         recommended by RMS (rather than LGPL).
20537         * m4/vararrays.m4: Likewise.
20538         * m4/flexmember.m4: Likewise.
20539
20540 2006-11-29  Bruno Haible  <bruno@clisp.org>
20541
20542         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
20543         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
20544         using +=.
20545         Reported by Simon Josefsson <simon@josefsson.org>.
20546
20547 2006-11-28  James Youngman <jay@gnu.org>
20548
20549         * README: Advise users that they might find the bug-gnulib@gnu.org
20550         and autotools-announce@gnu.org mailing lists useful.
20551
20552 2006-11-28  Bruno Haible  <bruno@clisp.org>
20553
20554         * m4/ptrdiff_max.m4: Remove file.
20555
20556 2006-11-21  Bruno Haible  <bruno@clisp.org>
20557
20558         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
20559         _AC_COMPUTE_INT.
20560         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
20561         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
20562         _AC_COMPUTE_INT.
20563         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
20564         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
20565         _AC_COMPUTE_INT.
20566         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
20567
20568 2006-11-28  Jim Meyering  <jim@meyering.net>
20569
20570         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
20571         warning from "gcc -Wshadow" about shadowing the builtin.
20572
20573 2006-11-27  Bruno Haible  <bruno@clisp.org>
20574
20575         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
20576         _AC_COMPUTE_INT.
20577         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
20578
20579 2006-11-27  Bruno Haible  <bruno@clisp.org>
20580             Paul Eggert  <eggert@cs.ucla.edu>
20581
20582         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
20583
20584 2006-11-26  Bruno Haible  <bruno@clisp.org>
20585
20586         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
20587         noinst_LTLIBRARIES.
20588
20589 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
20590             Bruno Haible  <bruno@clisp.org>
20591
20592         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
20593         if compiling with "gcc -ansi".
20594
20595 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
20596
20597         Fix some incompatibilities with gcc -ansi -pedantic.
20598         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
20599         if compiling pedantically with GCC, unless it's C99 or later.
20600         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
20601         it mishandles gcc -ansi -pedantic as well.
20602         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
20603         if gcc -pedantic.
20604         * lib/regexec.c (check_node_accept_bytes): Don't use auto
20605         initializers for struct if -pedantic, unless it's C99 or later.
20606
20607 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
20608
20609         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
20610         Don't close an fd more than once. Identical atimes indicate
20611         success, not failure.
20612
20613 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
20614
20615         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
20616
20617 2006-11-23  Jim Meyering  <jim@meyering.net>
20618
20619         * build-aux/announce-gen: New file.  From coreutils.
20620
20621 2006-11-22  Jim Meyering  <jim@meyering.net>
20622
20623         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
20624         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
20625         (fts_read): Use a temporary to narrow the overused st_size member
20626         before using it in a switch statement.  Reported by Matthew Woehlke.
20627
20628         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
20629         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
20630
20631 2006-11-20  Bruno Haible  <bruno@clisp.org>
20632
20633         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
20634         changequote instead of pairs of brackets.
20635         Reported by Andreas Schwab <schwab@suse.de>.
20636
20637 2006-11-21  Jim Meyering  <jim@meyering.net>
20638
20639         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
20640         so as to remain compatible with older compilers.
20641         Patch from Michael Deutschmann.
20642
20643 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
20644
20645         * MODULES.html.sh (File system functions): Add openat.
20646
20647         * lib/openat.h (rpl_fstatat): New macro, if
20648         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
20649         (fstatat): Define to rpl_fstatat under the same conditions,
20650         unless COMPILING_FSTATAT.
20651         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
20652         seems to have the bug.
20653         * lib/fstatat.c: New file.
20654         * modules/openat (Files): Add it.
20655
20656 2006-11-20  Bruno Haible  <bruno@clisp.org>
20657
20658         * Makefile: New file.
20659
20660 2006-11-20  Jim Meyering  <jim@meyering.net>
20661
20662         The beginnings of syntax-related checks for gnulib.
20663         * lib/Makefile: New file.
20664         * lib/t-idcache: New script.  Ensure that the two halves of
20665         idcache.c stay in sync.
20666
20667         * lib/idcache.c: Adjust comments in user- and group- portions to
20668         be more accurate, and to be consistent with one another.
20669
20670 2006-11-20  Jim Meyering  <jim@meyering.net>
20671
20672         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
20673         continue using the flexible array member (thus, this module performs
20674         half as many malloc calls), with the addition that...
20675         (getgroup, getuser): Consistently record a non-match via an empty
20676         "name" string, and map an empty string match to a NULL return value.
20677         * modules/idcache (Depends-on): Re-add flexmember.
20678
20679         * lib/idcache.c (getuser): Remove all uses of the register keyword.
20680         (getuidbyname, getgroup, getgidbyname): Likewise.
20681
20682         Use cleaner syntax: NULL rather than 0.
20683         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
20684
20685 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
20686
20687         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
20688         It mishandled the case where the group was missing.
20689         Problem reported by Greg Schafer.
20690         * modules/idcache: Likewise.
20691
20692 2006-11-18  Jim Meyering  <jim@meyering.net>
20693
20694         * check-module (%exempt_header): Add exception for some
20695         conditionally-included headers.
20696
20697         * modules/i-ring (Depends-on): Add verify.
20698         (License): Change to LGPL.
20699
20700 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
20701
20702         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
20703         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
20704         and inttostr.h.  Use snprintf rather than uinttostr, so that
20705         LGPLed code doesn't depend on GPLed.
20706
20707 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
20708
20709         * modules/inline (License): Change from GPL to LGPL.
20710
20711 2006-11-17  Jim Meyering  <jim@meyering.net>
20712
20713         * modules/d-type (License): Switch to LGPL.
20714
20715 2006-11-15  Bruno Haible  <bruno@clisp.org>
20716
20717         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
20718
20719 2006-11-15  Eric Blake  <ebb9@byu.net>
20720
20721         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
20722         the module dependency.
20723
20724 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
20725             Bruno Haible  <bruno@clisp.org>
20726
20727         * gnulib-tool (func_create_testdir): Add license consistency check.
20728
20729 2006-11-15  Eric Blake  <ebb9@byu.net>
20730
20731         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
20732         random "(cached)" in configure output.
20733
20734 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20735
20736         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
20737         test for conforming inttypes.h is both announced and cached.
20738
20739         * MODULES.html.sh (seen_modules, seen_files): New variables.
20740         (func_module): Rewrite to use a few less gnulib-tool and sed
20741         invocations.  Avoid a couple of quadratic algorithms for ...
20742         (missed_modules, missed_files): ... these, with ...
20743         (func_append, func_tmpdir): ... these new functions, from
20744         gnulib-tool.  Analogously, install traps for cleanup.
20745
20746         * tests/test-gc.c (main): Remove unused variables.
20747         * tests/test-read-file.c: Include stdlib.h, for 'free'.
20748
20749 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
20750
20751         * modules/inttostr (License): Change to LGPL.
20752
20753 2006-11-14  Eric Blake  <ebb9@byu.net>
20754
20755         * modules/tempname (License): Change to LGPL.
20756
20757 2006-11-14  Eric Blake  <ebb9@byu.net>
20758
20759         * doc/functions.texi (Function Portability): *printf functions on
20760         Cygwin now understand all POSIX size specifiers.
20761
20762 2006-11-14  Bruno Haible  <bruno@clisp.org>
20763
20764         * modules/c-ctype (License): Change to LGPL.
20765
20766 2006-11-12  Bruno Haible  <bruno@clisp.org>
20767
20768         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
20769         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
20770         for GNOME libraries, for which the include files are installed in
20771         subdirectories of $prefix/include.
20772
20773 2006-11-12  Bruno Haible  <bruno@clisp.org>
20774
20775         * m4/lib-link.m4: Require at least autoconf-2.54.
20776         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
20777         name to underscores for the --with option.
20778
20779 2006-11-13  Bruno Haible  <bruno@clisp.org>
20780
20781         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
20782         the tests directory.
20783         Reported by Ralf Wildenhues.
20784
20785 2006-11-13  Bruno Haible  <bruno@clisp.org>
20786
20787         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
20788         (func_emit_initmacro_end): Undo the override here.
20789         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
20790         Works around the famous automake error in coreutils.
20791
20792 2006-11-13  Eric Blake  <ebb9@byu.net>
20793
20794         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
20795         element, not its node.
20796
20797 2006-11-12  Bruno Haible  <bruno@clisp.org>
20798
20799         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
20800         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
20801
20802 2006-11-12  Bruno Haible  <bruno@clisp.org>
20803
20804         * gnulib-tool: New option --local-symlink.
20805         (func_usage): Document it.
20806         (lsymbolic): New variable.
20807         (func_import, func_create_testdir): If --symlink was not specified,
20808         test whether --local-symlink was specified and the file comes from
20809         the local_gnulib_dir.
20810
20811 2006-11-12  Bruno Haible  <bruno@clisp.org>
20812
20813         * gnulib-tool (func_ln): New function.
20814         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
20815
20816 2006-11-12  Bruno Haible  <bruno@clisp.org>
20817
20818         Finish support for source files in subdirectories.
20819         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
20820         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
20821         AUTOMAKE_OPTIONS.
20822         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
20823
20824 2006-11-12  Bruno Haible  <bruno@clisp.org>
20825
20826         * gnulib-tool (func_get_automake_snippet): Synthesize also an
20827         EXTRA_lib_SOURCES augmentation.
20828         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
20829
20830 2006-11-12  Jim Meyering  <jim@meyering.net>
20831
20832         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
20833         file descriptors.  This also averts a failure on systems with
20834         native openat support when a traversed directory lacks "x" access.
20835         * lib/fts_.h: Include "i-ring.h"
20836         (struct FTS) [fts_fd_ring]: New member.
20837         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
20838         (FCHDIR): Add parentheses.
20839         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
20840         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
20841         When descending, rather than simply closing the previous
20842         fts_cwd_fd value, push that file descriptor onto the ring.
20843         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
20844         (fts_open): Initialize the new fd_ring member.
20845         (fts_close): Clear the ring.
20846         (fts_safe_changedir): When possible, use our new fd_ring to skip
20847         the diropen and fstat and dev/ino comparison that would normally
20848         accompany a virtual `chdir ("..")'.
20849
20850         * modules/fts (Depends-on): Add i-ring.
20851         * modules/i-ring: New module.
20852         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
20853         * m4/i-ring.m4: New file.
20854
20855 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20856
20857         * gnulib-tool (func_create_testdir): Fix replacement of
20858         `build-aux' in configure.ac.  Run autotools in gltests
20859         subdirectory.
20860         (func_create_testdir, func_create_megatestdir, test): There is
20861         no need for '--force' in most autotool invocations in a new
20862         tree.  Actually fail the whole test if any of the tools, or the
20863         configure or make stages fail.
20864
20865         Sync from Automake.
20866         * build-aux/gnupload: Revert last change.  Add pointer to upload
20867         instructions of the GNU Maintenance Instructions.
20868         Suggestion by Karl Berry.
20869
20870 2006-11-10  Jim Meyering  <jim@meyering.net>
20871
20872         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
20873
20874 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
20875
20876         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
20877         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
20878         (bind_textdomain_codeset) [! ENABLE_NLS]:
20879         Evaluate all the arguments.  That way, callers get compatible behavior
20880         if the arguments have side effects.  Also, it avoids some GCC
20881         diagnostics in some cases; Joel E. Denny reported problems when Bison
20882         was configured with --enable-gcc-warnigs.
20883
20884 2006-11-10  Jim Meyering  <jim@meyering.net>
20885
20886         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
20887         relevant options in CFLAGS (like -O, -fno-inline) are taken into
20888         account.
20889
20890 2006-11-10  Jim Meyering  <jim@meyering.net>
20891
20892         * modules/inline: New file/module.
20893         * modules/xalloc (Files): Remove m4/inline.m4.
20894         (Depends-on): Add inline, instead.
20895         * modules/oset: Likewise.
20896         * modules/list: Likewise.
20897
20898 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
20899
20900         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
20901         Problem reported by Matthew Woehlke.
20902
20903 2006-11-09  Bruno Haible  <bruno@clisp.org>
20904
20905         * lib/tempname.c (gen_tempname): Remove variant that invokes
20906         __gen_tempname.
20907         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
20908         __gen_tempname.
20909
20910 2006-11-08  Bruno Haible  <bruno@clisp.org>
20911
20912         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
20913         to 'yes' instead of 'cross-compiling'.
20914
20915 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
20916
20917         * lib/quotearg.h (quotearg_free): New decl.
20918         * lib/quotearg.c (quotearg_free): New function.
20919         (slot0, nslots, slotvec0, slotvec):
20920         Now file-scope so that quotearg_free can get at them.
20921
20922 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20923
20924         Sync from Automake.
20925         * build-aux/gnupload: Add missing 'gnu' to example URL.
20926         Report by Karl Berry.
20927
20928 2006-11-08  Bruno Haible  <bruno@clisp.org>
20929
20930         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
20931         Suggested by Paul Eggert.
20932
20933 2006-11-08  Jim Meyering  <jim@meyering.net>
20934
20935         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
20936         It's already included if !_LIBC.
20937         (fts_safe_changedir): Add a comment.
20938
20939 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
20940
20941         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
20942         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
20943         Matthew Woehlke.
20944
20945         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
20946         definitions up, to avoid colliding with change below.
20947         (static_inline) [HAVE_INLINE]: New macro.
20948         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
20949         Provide extern decls when !HAVE_INLINE.  Do not define unless
20950         static_inline is defined, either by us or by xmalloc.c.  Use
20951         static_inline rather than static inline.
20952         (XCALLOC): Optimize sizeof(T) = 1 case.
20953         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
20954
20955 2006-11-07  Bruno Haible  <bruno@clisp.org>
20956
20957         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
20958         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
20959         AC_C_INLINE.
20960         * modules/xalloc (Files): Add m4/inline.m4.
20961
20962 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20963
20964         * README: Fix typo.
20965         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
20966         (Miscellanous Notes): ...from this.
20967
20968 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
20969
20970         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
20971         Mention that offsetof should be used instead of sizeof.
20972         From Bruno Haible.
20973
20974 2006-11-07  Bruno Haible  <bruno@clisp.org>
20975
20976         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
20977
20978 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
20979
20980         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
20981         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
20982         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
20983         (gl_tree_add_before, gl_tree_add_after):
20984         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
20985         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
20986         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
20987         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
20988         (gl_linked_add_after, gl_linked_add_at): Likewise.
20989         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
20990         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
20991         (gl_tree_add_before, gl_tree_add_after): Likewise.
20992         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
20993         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
20994         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
20995
20996 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20997
20998         * lib/gl_oset.h: Use C comment style, not C++ comment style.
20999
21000 2006-11-06  Bruno Haible  <bruno@clisp.org>
21001
21002         * m4/inline.m4: New file.
21003         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
21004         * modules/list (Files): Add m4/inline.m4.
21005         * modules/oset (Files): Likewise.
21006
21007 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
21008
21009         * lib/idcache.c: Include <stddef.h>, for offsetof.
21010         (struct userid.name): Change from char * to a flexible array member.
21011         All uses changed.
21012         * modules/idcache (Depends-on): Add flexmember.
21013
21014         * MODULES.html.sh (Core language properties): New module flexmember.
21015         * modules/flexmember, m4/flexmember.m4: New files.
21016
21017         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
21018         inline functions that are identical with the old xnmalloc_inline,
21019         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
21020         that we can avoid some unnecessary integer multiplications and
21021         divisions in the common case where the element size is known at
21022         compile time.
21023         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
21024         needed.
21025         (xnboundedmalloc): Remove.
21026         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
21027         arguments, for consistency with rest of this header.
21028         (xcharalloc): Rewrite using XNMALLOC.
21029         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
21030         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
21031         versions have been moved to lib/xalloc.h and renamed to be the
21032         non-*_inline versions.
21033         (xmalloc, xrealloc): Implement without reference to the xnmalloc
21034         and xnrealloc functions, since those functions are now inline and
21035         now call us.
21036         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
21037         renaming described above.
21038         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
21039         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
21040         captures the dependency in AC_C_INLINE.
21041
21042         New module canonicalize-lgpl, proposed by Charles Wilson in
21043         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
21044         with a few small changes afterwards.
21045         * MODULES.html.sh (File system functions): New module
21046         canonicalize-lgpl.
21047         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
21048         and canonicalize_file_name.
21049         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
21050         * modules/canonicalize-lgpl: New files.
21051
21052 2006-11-05  Bruno Haible  <bruno@clisp.org>
21053
21054         * gnulib-tool (func_import, func_create_testdir): Create directories
21055         also for files in subdirectories of lib/.
21056
21057 2006-11-05  Bruno Haible  <bruno@clisp.org>
21058
21059         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
21060         ANSI C compliant.
21061
21062 2006-11-03  Bruno Haible  <bruno@clisp.org>
21063
21064         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
21065         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
21066         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
21067         (xnboundedmalloc): New inline function.
21068         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
21069         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
21070         xmalloc.
21071         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
21072         xmalloc.
21073         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
21074         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
21075         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
21076         xmalloc.
21077         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
21078         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
21079         xmalloc.
21080         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
21081         gl_tree_add_after): Use XMALLOC instead of xmalloc.
21082         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
21083         xmalloc.
21084         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
21085         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
21086         gl_tree_add_after): Use XMALLOC instead of xmalloc.
21087         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
21088         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
21089         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
21090         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
21091
21092 2006-11-03  Bruno Haible  <bruno@clisp.org>
21093
21094         * lib/c-ctype.h [C++]: Define functions without name mangling.
21095         * lib/fwriteerror.h [C++]: Likewise.
21096         * lib/gcd.h [C++]: Likewise.
21097         * lib/linebreak.h [C++]: Likewise.
21098
21099 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
21100
21101         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
21102         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
21103         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
21104         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
21105         Check for functions and headers just once.
21106         Check for declaration of canonicalize_file_name.
21107         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
21108
21109 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
21110
21111         * gnulib-tool (func_import): Fix typo in actioncmd.
21112
21113 2006-11-02  Bruno Haible  <bruno@clisp.org>
21114
21115         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
21116         newline sequence in the Makefile.am snippet as a space, like "make"
21117         does.
21118         Reported by Roger Persson <perrog@gmail.com>.
21119
21120 2006-11-01  Bruno Haible  <bruno@clisp.org>
21121
21122         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
21123         already declared in <string.h>.
21124         * lib/strcase.h (strncasecmp): Don't declare it if yes.
21125
21126 2006-11-01  Bruno Haible  <bruno@clisp.org>
21127
21128         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
21129         * lib/strcase.h: Include <string.h>.
21130         (strcasecmp): Define to rpl_strcasecmp here.
21131
21132 2006-11-01  Bruno Haible  <bruno@clisp.org>
21133
21134         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
21135
21136 2006-11-01  Eric Blake  <ebb9@byu.net>
21137
21138         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
21139
21140         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
21141
21142 2006-10-29  Bruno Haible  <bruno@clisp.org>
21143
21144         Make it compile in C++ mode.
21145         * lib/full-write.c (full_rw): Add a cast.
21146
21147 2006-11-01  Bruno Haible  <bruno@clisp.org>
21148
21149         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
21150         be POSIX compliant.
21151         Reported by Roger Persson <perrog@gmail.com>.
21152
21153 2006-11-01  Eric Blake  <ebb9@byu.net>
21154
21155         * lib/getopt_.h: Fix comments.
21156
21157 2006-10-31  Eric Blake  <ebb9@byu.net>
21158
21159         * modules/tmpdir (Depends-on): Add sys_stat.
21160         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
21161         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
21162         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
21163         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
21164         tempname.
21165
21166 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
21167
21168         Avoid some C++ diagnostics reported by Bruno Haible.
21169         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
21170         xmalloc.
21171         (quotearg_alloc): Use xcharalloc rather than xmalloc.
21172         (struct slotvec): Move to top level.
21173         (quotearg_n_options): Rewrite to avoid xmalloc.
21174         * lib/xalloc.h (xcharalloc): New function.
21175         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
21176         [defined __cplusplus]: Add function template that provides result
21177         type propagation.  This part of the change is from Bruno Haible.
21178
21179 2006-10-29  Bruno Haible  <bruno@clisp.org>
21180
21181         Make it compile in C++ mode.
21182         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
21183         * lib/strnlen1.c (strnlen1): Cast memchr result.
21184         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
21185         * lib/clean-temp.c (string_equals, string_hash): Add casts.
21186         (create_temp_dir): Rename local variable 'template'.
21187         (compile_csharp_using_sscli): Add cast.
21188         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
21189         * lib/findprog.c (find_in_path): Likewise.
21190         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
21191         * lib/wait-process.c (register_slave_subprocess): Likewise.
21192
21193 2006-10-22  Bruno Haible  <bruno@clisp.org>
21194
21195         * modules/tsearch: New file.
21196         * lib/tsearch.h: New file.
21197         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
21198         * m4/tsearch.m4: New file.
21199         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
21200
21201 2006-10-29  Eric Blake  <ebb9@byu.net>
21202
21203         * lib/arcfour.c: Assume config.h.
21204         * lib/arctwo.c: Likewise.
21205         * lib/base64.c: Likewise.
21206         * lib/check-version.c: Likewise.
21207         * lib/crc.c: Likewise.
21208         * lib/des.c: Likewise.
21209         * lib/gc-gnulib.c: Likewise.
21210         * lib/gc-libgcrypt.c: Likewise.
21211         * lib/gc-pbkdf2-sha1.c: Likewise.
21212         * lib/getaddrinfo.c: Likewise.
21213         * lib/getdelim.c: Likewise.
21214         * lib/getline.c: Likewise.
21215         * lib/hmac-md5.c: Likewise.
21216         * lib/hmac-sha1.c: Likewise.
21217         * lib/iconvme.c: Likewise.
21218         * lib/md2.c: Likewise.
21219         * lib/md4.c: Likewise.
21220         * lib/memxor.c: Likewise.
21221         * lib/read-file.c: Likewise.
21222         * lib/readline.c: Likewise.
21223         * lib/rijndael-alg-fst.c: Likewise.
21224         * lib/rijndael-api-fst.c: Likewise.
21225         * lib/xgetdomainname.c: Likewise.
21226
21227 2006-10-28  Eric Blake  <ebb9@byu.net>
21228
21229         * lib/xstrndup.c: Assume config.h.
21230
21231 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
21232
21233         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
21234         stat-macros.h is now for our own macros, whereas stat_h is for
21235         macros in the <sys/stat.h> name space.
21236         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
21237         (STAT_MACROS_H): Remove.
21238         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
21239         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
21240         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
21241         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
21242         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
21243         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
21244         Move these macros to ...
21245         * lib/stat_.h: here.  Don't include stat-macros.h.
21246         * lib/canonicalize.c: Don't include stat-macros.h.
21247         * lib/chown.c: Likewise.
21248         * lib/euidaccess.c: Likewise.
21249         * lib/file-type.c: Likewise.
21250         * lib/filemode.c: Likewise.
21251         * lib/glob.c: Likewise.
21252         * lib/isapipe.c: Likewise.
21253         * lib/lchown.c: Likewise.
21254         * lib/lstat.c: Likewise.
21255         * lib/mkdir-p.c: Likewise.
21256         * lib/rmdir.c: Likewise.
21257         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
21258         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
21259         unless mkdir isn't declared, to speed up 'configure'.
21260         Always create sys/stat.h, since it's unlikely any real sys/stat.h
21261         would define all the S_* symbols.
21262         * modules/canonicalize (Depends-on):
21263         Depend on sys_stat, not stat-macros.
21264         * modules/chown: Likewise.
21265         * modules/euidaccess: Likewise.
21266         * modules/filemode: Likewise.
21267         * modules/file-type: Likewise.
21268         * modules/glob: Likewise.
21269         * modules/isapipe: Likewise.
21270         * modules/lchown: Likewise.
21271         * modules/lstat: Likewise.
21272         * modules/mkancesdirs: Likewise.
21273         * modules/rmdir: Likewise.
21274         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
21275         * modules/modechange: Likewise.
21276         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
21277         (configure.ac): Remove gl_STAT_MACROS.
21278         * modules/sys_stat (Depends-on): Remove stat-macros.
21279
21280 2006-10-27  Bruno Haible  <bruno@clisp.org>
21281
21282         * m4/signed.m4: Remove file.
21283         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
21284         invocation.
21285         * modules/vasnprintf (Files): Remove m4/signed.m4.
21286
21287 2006-10-27  Bruno Haible  <bruno@clisp.org>
21288
21289         Update to GNU gettext 0.16.
21290         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
21291         m4/inttypes-h.m4, m4/signed.m4.
21292         * m4/gettext.m4: Update to GNU gettext 0.16.
21293         * m4/intl.m4: New file, from GNU gettext.
21294         * m4/intldir.m4: New file, from GNU gettext.
21295         * config/srclist.txt: Update
21296
21297 2006-10-27  Eric Blake  <ebb9@byu.net>
21298
21299         * MODULES.html.sh: Document tempname.
21300         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
21301         dependencies.
21302         (Files): Move lib/tempname.c...
21303         * modules/tempname: ...to this new module.
21304         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
21305         (gl_PREREQ_TEMPNAME): Move...
21306         * m4/tempname.m4: ...to this new file.
21307         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
21308         * modules/sys_stat (Depends-on): Add stat-macros.
21309         * lib/stat_.h (includes): Pick up stat macros.
21310         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
21311         if stat macros are broken.
21312         * lib/tempname.c (includes): No need to include "stat-macros.h".
21313         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
21314         (direxists, __path_search) [!_LIBC]: Don't compile these in
21315         gnulib; the tmpdir module covers that.
21316         * lib/tempname.h: New file.
21317
21318 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
21319
21320         * COPYING: Explain how gnulib-tool converts licence headers.
21321         Almost all wording by Eric Blake.
21322
21323 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
21324
21325         * lib/mbchar.h (is_basic_table): Make read-only.
21326         * lib/mbchar.c (is_basic_table): Likewise.
21327         Reported by John Darrington.
21328
21329 2006-10-25  Bruno Haible  <bruno@clisp.org>
21330
21331         * lib/progname.h (set_program_name): Undefine before defining.
21332
21333 2006-10-25  Bruno Haible  <bruno@clisp.org>
21334
21335         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
21336         false for non-gcc C++ compilers.
21337         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
21338
21339 2006-10-24  Bruno Haible  <bruno@clisp.org>
21340
21341         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
21342         iconv implementations like Irix iconv.
21343
21344 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
21345
21346         * modules/vararrays: New file.
21347         * m4/vararrays.m4: New file, taken from diffutils.
21348         * MODULES.html.sh: New module vararrays.
21349
21350 2006-10-24  Karl Berry  <karl@gnu.org>
21351
21352         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
21353         Don't call GNU Unix.
21354
21355 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21356
21357         * users.txt: Add Libtool.
21358
21359         Sync from Libtool:
21360
21361         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
21362
21363         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
21364         to gnulib's policy of including config.h unconditionally.
21365
21366 2006-10-24  Bruno Haible  <bruno@clisp.org>
21367
21368         * modules/wcwidth (Files): Add m4/wint_t.m4.
21369         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
21370         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
21371
21372 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
21373
21374         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
21375         to pacify GCC with some -W flags enabled.  Problem reported by
21376         Bruno Haible.
21377
21378 2006-10-24  Jim Meyering  <jim@meyering.net>
21379
21380         * MODULES.html.sh: Remove uinttostr.  It's not a module.
21381         Reported by Karl Berry.
21382
21383 2006-10-23  Bruno Haible  <bruno@clisp.org>
21384
21385         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
21386
21387 2006-10-24  Bruno Haible  <bruno@clisp.org>
21388
21389         * lib/gl_list.h: Use C comment style, not C++ comment style.
21390
21391 2006-10-23  Eric Blake  <ebb9@byu.net>
21392
21393         * lib/getaddrinfo.c (includes): Add missing include.
21394
21395 2006-10-23  Bruno Haible  <bruno@clisp.org>
21396             Paul Eggert  <eggert@cs.ucla.edu>
21397
21398         Ability to rename obstack_free.
21399         * lib/obstack.h (__obstack_free): New macro. Declare instead of
21400         obstack_free.
21401         (obstack_free): Invoke the __obstack_free macro.
21402         * lib/obstack.c (obstack_free): Use __obstack_free macro.
21403
21404 2006-10-23  Bruno Haible  <bruno@clisp.org>
21405             Paul Eggert  <eggert@cs.ucla.edu>
21406
21407         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
21408         __argc, __argv from the declaration. (They are defined as macros on
21409         mingw.)
21410
21411 2006-10-22  Bruno Haible  <bruno@clisp.org>
21412
21413         * doc/gnulib-intro.texi: New file.
21414         * doc/gnulib.texi: Include it.
21415
21416 2006-10-21  Bruno Haible  <bruno@clisp.org>
21417
21418         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
21419         "Introduction", "Miscellanous Notes", "Particular Modules".
21420
21421 2006-10-21  Bruno Haible  <bruno@clisp.org>
21422
21423         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21424         Change mostlyclean-local rule to avoid sh syntax error from bash
21425         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
21426
21427 2006-10-23  Jim Meyering  <jim@meyering.net>
21428
21429         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
21430         in place of snprintf.
21431
21432         * modules/inttostr (Files): Add lib/uinttostr.c.
21433         * lib/uinttostr.c (inttostr): New file/function.
21434         * lib/inttostr.h (uinttostr): Declare.
21435         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
21436         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
21437         Add uinttostr.
21438         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
21439
21440 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
21441
21442         * lib/canonicalize.c (ELOOP): Define if not already defined.
21443         Problem reported by Bruno Haible in
21444         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
21445
21446 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
21447
21448         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
21449         Problem reported by Perry Smith and Ville Laurikari.
21450
21451         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
21452         uses.
21453
21454 2006-10-19  Bruno Haible  <bruno@clisp.org>
21455
21456         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
21457         for mingw.
21458
21459 2006-10-19  Bruno Haible  <bruno@clisp.org>
21460
21461         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
21462         Needed for mingw.
21463
21464 2006-10-19  Bruno Haible  <bruno@clisp.org>
21465
21466         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
21467
21468 2006-10-19  Bruno Haible  <bruno@clisp.org>
21469
21470         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
21471         it.
21472
21473 2006-10-19  Bruno Haible  <bruno@clisp.org>
21474
21475         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
21476         invocation.
21477
21478 2006-10-19  Bruno Haible  <bruno@clisp.org>
21479
21480         * gnulib-tool (func_create_testdir): Don't include ftruncate and
21481         mountlist by default.
21482
21483 2006-10-16  Bruno Haible  <bruno@clisp.org>
21484
21485         * lib/c-strstr.c: Include c-strstr.h.
21486
21487 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
21488
21489         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
21490         in a slash.
21491
21492 2006-10-18  Bruno Haible  <bruno@clisp.org>
21493
21494         * lib/lock.h [C++]: Wrap definitions in extern "C".
21495
21496 2006-10-18  Bruno Haible  <bruno@clisp.org>
21497
21498         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
21499         gl_LIBOBJS list.
21500
21501 2006-10-18  Bruno Haible  <bruno@clisp.org>
21502
21503         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
21504
21505 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
21506
21507         * lib/xstrtol.h: Include gettext.h.
21508         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
21509         Problem reported by Eric Blake.
21510         * modules/xstrtol (Depends-on): Add gettext-h.
21511
21512 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
21513
21514         * lib/strftime.c (advance): New macro.
21515         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
21516         incomplete type, so you can't add 0 to it.  Problem and patch
21517         reported by Eelco Dolstra for dietlibc.
21518
21519 2006-10-18  Jim Meyering  <jim@meyering.net>
21520
21521         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
21522         type for a local, and rename it: s/up/user_proc/.
21523
21524 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
21525
21526         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
21527         READ_UTMP_USER_PROCESS.
21528         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
21529
21530 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
21531
21532         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
21533         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
21534
21535 2006-10-17  Eric Blake  <ebb9@byu.net>
21536
21537         * lib/sigprocmask.c (sigprocmask): Fix typo.
21538
21539         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
21540
21541         * modules/clean-temp (Makefile.am): Don't add to make output...
21542         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
21543         config.h.
21544
21545 2006-10-17  Bruno Haible  <bruno@clisp.org>
21546
21547         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
21548         differently if DEFAULT_TEXT_DOMAIN is set.
21549
21550 2006-10-16  Bruno Haible  <bruno@clisp.org>
21551
21552         * lib/clean-temp.c: Include fwriteerror.h.
21553
21554 2006-10-16  Bruno Haible  <bruno@clisp.org>
21555
21556         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
21557
21558 2006-10-16  Bruno Haible  <bruno@clisp.org>
21559
21560         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
21561         * lib/sigprocmask.h: Include <sys/types.h>.
21562         (sigset_t): Use the system's definition if present.
21563
21564 2006-10-17  Eric Blake  <ebb9@byu.net>
21565
21566         * lib/xvasprintf.c (includes): Assume config.h.
21567         * lib/xasprintf.c (includes): Likewise.
21568
21569 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
21570
21571         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
21572         at least as wide as intmax_t.
21573
21574 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
21575
21576         (Imported from Automake.)
21577         * build-aux/gnupload: Update to version 1.1 of directive file.
21578
21579 2006-10-16  Eric Blake  <ebb9@byu.net>
21580
21581         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
21582         match Automake 1.10a.
21583
21584 2006-10-14  Bruno Haible  <bruno@clisp.org>
21585
21586         * modules/sigprocmask: New file.
21587         * lib/sigprocmask.h: New file.
21588         * lib/sigprocmask.c: New file.
21589         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
21590         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
21591         request sigprocmask.o.
21592         (gl_PREREQ_SIGPROCMASK): New macro.
21593         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
21594         (Depends-on): Add sigprocmask.
21595         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
21596         gt_SIGNALBLOCKING. Test for 'raise' only once.
21597         * lib/fatal-signal.c: Include sigprocmask.h.
21598         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
21599         unblock_fatal_signals): Define always.
21600         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
21601         sigprocmask.
21602
21603 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
21604
21605         Sync from Automake.
21606         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
21607         which incorrectly sets the mode of an existing destination
21608         directory.  In some cases the unpatched install-sh could do the
21609         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
21610         system.  We hope this is rare in practice, but it's clearly worth
21611         fixing.  Problem reported by Alex Unleashed in
21612         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
21613         Also, don't bother to check for -m bugs unless we're using -m;
21614         suggested by Stepan Kasal.
21615
21616 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21617
21618         Sync from Automake.
21619         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
21620         `-c' flag, so they appear at the same position as in %FASTDEP%
21621         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
21622         which ignores unknown options only after the first non-option.
21623         Bug report against M4 by Nelson H. F. Beebe.
21624
21625 2006-10-13  Jim Meyering  <jim@meyering.net>
21626
21627         Fix a bug in yesterday's change.
21628         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
21629         p->fts_statp->st_dev would be used uninitialized.
21630         Ensures that we always call fts_stat on the very first entry.
21631         Miklos Szeredi reported that find -xdev stopped working.
21632
21633 2006-10-12  Bruno Haible  <bruno@clisp.org>
21634
21635         * gnulib-tool (func_get_automake_snippet): Append an automatically
21636         computed EXTRA_DIST augmentation.
21637         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
21638         * modules/alloca-opt (Makefile.am): Likewise.
21639         * modules/allocsa (Makefile.am): Likewise.
21640         * modules/arcfour (Makefile.am): Likewise.
21641         * modules/arctwo (Makefile.am): Likewise.
21642         * modules/argmatch (Makefile.am): Likewise.
21643         * modules/argz (Makefile.am): Likewise.
21644         * modules/atexit (Makefile.am): Likewise.
21645         * modules/backupfile (Makefile.am): Likewise.
21646         * modules/byteswap (Makefile.am): Likewise.
21647         * modules/c-strtod (Makefile.am): Likewise.
21648         * modules/c-strtold (Makefile.am): Likewise.
21649         * modules/calloc (Makefile.am): Likewise.
21650         * modules/canon-host (Makefile.am): Likewise.
21651         * modules/canonicalize (Makefile.am): Likewise.
21652         * modules/chdir-long (Makefile.am): Likewise.
21653         * modules/chdir-safer (Makefile.am): Likewise.
21654         * modules/check-version (Makefile.am): Likewise.
21655         * modules/chown (Makefile.am): Likewise.
21656         * modules/cloexec (Makefile.am): Likewise.
21657         * modules/close-stream (Makefile.am): Likewise.
21658         * modules/closeout (Makefile.am): Likewise.
21659         * modules/crc (Makefile.am): Likewise.
21660         * modules/csharpexec (Makefile.am): Likewise.
21661         * modules/cycle-check (Makefile.am): Likewise.
21662         * modules/des (Makefile.am): Likewise.
21663         * modules/dev-ino (Makefile.am): Likewise.
21664         * modules/dirfd (Makefile.am): Likewise.
21665         * modules/dirname (Makefile.am): Likewise.
21666         * modules/dup2 (Makefile.am): Likewise.
21667         * modules/eealloc (Makefile.am): Likewise.
21668         * modules/error (Makefile.am): Likewise.
21669         * modules/euidaccess (Makefile.am): Likewise.
21670         * modules/exclude (Makefile.am): Likewise.
21671         * modules/exitfail (Makefile.am): Likewise.
21672         * modules/fcntl-safer (Makefile.am): Likewise.
21673         * modules/fcntl (Makefile.am): Likewise.
21674         * modules/file-type (Makefile.am): Likewise.
21675         * modules/fileblocks (Makefile.am): Likewise.
21676         * modules/filemode (Makefile.am): Likewise.
21677         * modules/filenamecat (Makefile.am): Likewise.
21678         * modules/fnmatch (Makefile.am): Likewise.
21679         * modules/fopen-safer (Makefile.am): Likewise.
21680         * modules/fpending (Makefile.am): Likewise.
21681         * modules/fprintftime (Makefile.am): Likewise.
21682         * modules/free (Makefile.am): Likewise.
21683         * modules/fsusage (Makefile.am): Likewise.
21684         * modules/ftruncate (Makefile.am): Likewise.
21685         * modules/fts (Makefile.am): Likewise.
21686         * modules/gc-arcfour (Makefile.am): Likewise.
21687         * modules/gc-des (Makefile.am): Likewise.
21688         * modules/gc-hmac-md5 (Makefile.am): Likewise.
21689         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
21690         * modules/gc-md4 (Makefile.am): Likewise.
21691         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
21692         * modules/gc-sha1 (Makefile.am): Likewise.
21693         * modules/gc (Makefile.am): Likewise.
21694         * modules/getaddrinfo (Makefile.am): Likewise.
21695         * modules/getcwd (Makefile.am): Likewise.
21696         * modules/getdelim (Makefile.am): Likewise.
21697         * modules/getdomainname (Makefile.am): Likewise.
21698         * modules/getgroups (Makefile.am): Likewise.
21699         * modules/gethostname (Makefile.am): Likewise.
21700         * modules/gethrxtime (Makefile.am): Likewise.
21701         * modules/getline (Makefile.am): Likewise.
21702         * modules/getloadavg (Makefile.am): Likewise.
21703         * modules/getlogin_r (Makefile.am): Likewise.
21704         * modules/getndelim2 (Makefile.am): Likewise.
21705         * modules/getopt (Makefile.am): Likewise.
21706         * modules/getpagesize (Makefile.am): Likewise.
21707         * modules/getpass-gnu (Makefile.am): Likewise.
21708         * modules/getpass (Makefile.am): Likewise.
21709         * modules/getsubopt (Makefile.am): Likewise.
21710         * modules/gettime (Makefile.am): Likewise.
21711         * modules/gettimeofday (Makefile.am): Likewise.
21712         * modules/getugroups (Makefile.am): Likewise.
21713         * modules/getusershell (Makefile.am): Likewise.
21714         * modules/glob (Makefile.am): Likewise.
21715         * modules/group-member (Makefile.am): Likewise.
21716         * modules/hard-locale (Makefile.am): Likewise.
21717         * modules/hash (Makefile.am): Likewise.
21718         * modules/hmac-md5 (Makefile.am): Likewise.
21719         * modules/hmac-sha1 (Makefile.am): Likewise.
21720         * modules/human (Makefile.am): Likewise.
21721         * modules/idcache (Makefile.am): Likewise.
21722         * modules/imaxabs (Makefile.am): Likewise.
21723         * modules/imaxdiv (Makefile.am): Likewise.
21724         * modules/inet_ntop (Makefile.am): Likewise.
21725         * modules/inet_pton (Makefile.am): Likewise.
21726         * modules/intprops (Makefile.am): Likewise.
21727         * modules/inttostr (Makefile.am): Likewise.
21728         * modules/inttypes (Makefile.am): Likewise.
21729         * modules/isapipe (Makefile.am): Likewise.
21730         * modules/javaversion (Makefile.am): Likewise.
21731         * modules/lchmod (Makefile.am): Likewise.
21732         * modules/lchown (Makefile.am): Likewise.
21733         * modules/localcharset (Makefile.am): Likewise.
21734         * modules/long-options (Makefile.am): Likewise.
21735         * modules/lstat (Makefile.am): Likewise.
21736         * modules/malloc (Makefile.am): Likewise.
21737         * modules/mathl (Makefile.am): Likewise.
21738         * modules/mbchar (Makefile.am): Likewise.
21739         * modules/md2 (Makefile.am): Likewise.
21740         * modules/md4 (Makefile.am): Likewise.
21741         * modules/md5 (Makefile.am): Likewise.
21742         * modules/memcasecmp (Makefile.am): Likewise.
21743         * modules/memchr (Makefile.am): Likewise.
21744         * modules/memcmp (Makefile.am): Likewise.
21745         * modules/memcoll (Makefile.am): Likewise.
21746         * modules/memcpy (Makefile.am): Likewise.
21747         * modules/memmem (Makefile.am): Likewise.
21748         * modules/memmove (Makefile.am): Likewise.
21749         * modules/mempcpy (Makefile.am): Likewise.
21750         * modules/memrchr (Makefile.am): Likewise.
21751         * modules/memset (Makefile.am): Likewise.
21752         * modules/memxor (Makefile.am): Likewise.
21753         * modules/mkancesdirs (Makefile.am): Likewise.
21754         * modules/mkdir-p (Makefile.am): Likewise.
21755         * modules/mkdir (Makefile.am): Likewise.
21756         * modules/mkdtemp (Makefile.am): Likewise.
21757         * modules/mkstemp (Makefile.am): Likewise.
21758         * modules/mktime (Makefile.am): Likewise.
21759         * modules/modechange (Makefile.am): Likewise.
21760         * modules/mountlist (Makefile.am): Likewise.
21761         * modules/nanosleep (Makefile.am): Likewise.
21762         * modules/obstack (Makefile.am): Likewise.
21763         * modules/openat (Makefile.am): Likewise.
21764         * modules/pagealign_alloc (Makefile.am): Likewise.
21765         * modules/pathmax (Makefile.am): Likewise.
21766         * modules/physmem (Makefile.am): Likewise.
21767         * modules/poll (Makefile.am): Likewise.
21768         * modules/posixtm (Makefile.am): Likewise.
21769         * modules/posixver (Makefile.am): Likewise.
21770         * modules/putenv (Makefile.am): Likewise.
21771         * modules/quote (Makefile.am): Likewise.
21772         * modules/quotearg (Makefile.am): Likewise.
21773         * modules/raise (Makefile.am): Likewise.
21774         * modules/read-file (Makefile.am): Likewise.
21775         * modules/readline (Makefile.am): Likewise.
21776         * modules/readlink (Makefile.am): Likewise.
21777         * modules/readtokens (Makefile.am): Likewise.
21778         * modules/readutmp (Makefile.am): Likewise.
21779         * modules/realloc (Makefile.am): Likewise.
21780         * modules/regex (Makefile.am): Likewise.
21781         * modules/rename-dest-slash (Makefile.am): Likewise.
21782         * modules/rename (Makefile.am): Likewise.
21783         * modules/rijndael (Makefile.am): Likewise.
21784         * modules/rmdir (Makefile.am): Likewise.
21785         * modules/rpmatch (Makefile.am): Likewise.
21786         * modules/safe-read (Makefile.am): Likewise.
21787         * modules/safe-write (Makefile.am): Likewise.
21788         * modules/same-inode (Makefile.am): Likewise.
21789         * modules/same (Makefile.am): Likewise.
21790         * modules/save-cwd (Makefile.am): Likewise.
21791         * modules/savedir (Makefile.am): Likewise.
21792         * modules/setenv (Makefile.am): Likewise.
21793         * modules/settime (Makefile.am): Likewise.
21794         * modules/sha1 (Makefile.am): Likewise.
21795         * modules/sig2str (Makefile.am): Likewise.
21796         * modules/snprintf (Makefile.am): Likewise.
21797         * modules/stat-macros (Makefile.am): Likewise.
21798         * modules/stat-time (Makefile.am): Likewise.
21799         * modules/stdbool (Makefile.am): Likewise.
21800         * modules/stdint (Makefile.am): Likewise.
21801         * modules/stdlib-safer (Makefile.am): Likewise.
21802         * modules/stpcpy (Makefile.am): Likewise.
21803         * modules/stpncpy (Makefile.am): Likewise.
21804         * modules/strcase (Makefile.am): Likewise.
21805         * modules/strcasestr (Makefile.am): Likewise.
21806         * modules/strchrnul (Makefile.am): Likewise.
21807         * modules/strcspn (Makefile.am): Likewise.
21808         * modules/strdup (Makefile.am): Likewise.
21809         * modules/strerror (Makefile.am): Likewise.
21810         * modules/strftime (Makefile.am): Likewise.
21811         * modules/strndup (Makefile.am): Likewise.
21812         * modules/strnlen (Makefile.am): Likewise.
21813         * modules/strpbrk (Makefile.am): Likewise.
21814         * modules/strsep (Makefile.am): Likewise.
21815         * modules/strstr (Makefile.am): Likewise.
21816         * modules/strtod (Makefile.am): Likewise.
21817         * modules/strtoimax (Makefile.am): Likewise.
21818         * modules/strtok_r (Makefile.am): Likewise.
21819         * modules/strtol (Makefile.am): Likewise.
21820         * modules/strtoll (Makefile.am): Likewise.
21821         * modules/strtoul (Makefile.am): Likewise.
21822         * modules/strtoull (Makefile.am): Likewise.
21823         * modules/strtoumax (Makefile.am): Likewise.
21824         * modules/strverscmp (Makefile.am): Likewise.
21825         * modules/sys_socket (Makefile.am): Likewise.
21826         * modules/sys_stat (Makefile.am): Likewise.
21827         * modules/sysexits (Makefile.am): Likewise.
21828         * modules/time_r (Makefile.am): Likewise.
21829         * modules/timegm (Makefile.am): Likewise.
21830         * modules/timespec (Makefile.am): Likewise.
21831         * modules/tmpfile-safer (Makefile.am): Likewise.
21832         * modules/trim (Makefile.am): Likewise.
21833         * modules/unistd-safer (Makefile.am): Likewise.
21834         * modules/unlinkdir (Makefile.am): Likewise.
21835         * modules/unlocked-io (Makefile.am): Likewise.
21836         * modules/userspec (Makefile.am): Likewise.
21837         * modules/utime (Makefile.am): Likewise.
21838         * modules/utimecmp (Makefile.am): Likewise.
21839         * modules/utimens (Makefile.am): Likewise.
21840         * modules/vasnprintf (Makefile.am): Likewise.
21841         * modules/vasprintf (Makefile.am): Likewise.
21842         * modules/vsnprintf (Makefile.am): Likewise.
21843         * modules/xalloc (Makefile.am): Likewise.
21844         * modules/xgetcwd (Makefile.am): Likewise.
21845         * modules/xnanosleep (Makefile.am): Likewise.
21846         * modules/xreadlink (Makefile.am): Likewise.
21847         * modules/xstrtod (Makefile.am): Likewise.
21848         * modules/xstrtol (Makefile.am): Likewise.
21849         * modules/xstrtold (Makefile.am): Likewise.
21850         * modules/yesno (Makefile.am): Likewise.
21851         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
21852
21853 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
21854
21855         * modules/error (Makefile.am): Distribute files through
21856         EXTRA_DIST, not lib_SOURCES.
21857
21858 2006-10-12  Eric Blake  <ebb9@byu.net>
21859
21860         * modules/error (Makefile.am): Distribute files in /lib.
21861         * modules/obstack (Makefile.am): Likewise.
21862
21863 2006-10-12  Bruno Haible  <bruno@clisp.org>
21864
21865         * modules/acl (Makefile.am): Distribute all files in lib/ through
21866         EXTRA_DIST.
21867         * modules/arcfour (Makefile.am): Likewise.
21868         * modules/arctwo (Makefile.am): Likewise.
21869         * modules/argmatch (Makefile.am): Likewise.
21870         * modules/argz (Makefile.am): Likewise.
21871         * modules/atexit (Makefile.am): Likewise.
21872         * modules/backupfile (Makefile.am): Likewise.
21873         * modules/c-strtod (Makefile.am): Likewise.
21874         * modules/c-strtold (Makefile.am): Likewise.
21875         * modules/calloc (Makefile.am): Likewise.
21876         * modules/canon-host (Makefile.am): Likewise.
21877         * modules/canonicalize (Makefile.am): Likewise.
21878         * modules/chdir-long (Makefile.am): Likewise.
21879         * modules/chdir-safer (Makefile.am): Likewise.
21880         * modules/check-version (Makefile.am): Likewise.
21881         * modules/chown (Makefile.am): Likewise.
21882         * modules/cloexec (Makefile.am): Likewise.
21883         * modules/close-stream (Makefile.am): Likewise.
21884         * modules/closeout (Makefile.am): Likewise.
21885         * modules/crc (Makefile.am): Likewise.
21886         * modules/cycle-check (Makefile.am): Likewise.
21887         * modules/des (Makefile.am): Likewise.
21888         * modules/dirfd (Makefile.am): Likewise.
21889         * modules/dirname (Makefile.am): Likewise.
21890         * modules/dup2 (Makefile.am): Likewise.
21891         * modules/euidaccess (Makefile.am): Likewise.
21892         * modules/exclude (Makefile.am): Likewise.
21893         * modules/exitfail (Makefile.am): Likewise.
21894         * modules/fcntl-safer (Makefile.am): Likewise.
21895         * modules/file-type (Makefile.am): Likewise.
21896         * modules/fileblocks (Makefile.am): Likewise.
21897         * modules/filemode (Makefile.am): Likewise.
21898         * modules/filenamecat (Makefile.am): Likewise.
21899         * modules/fnmatch (Makefile.am): Likewise.
21900         * modules/fopen-safer (Makefile.am): Likewise.
21901         * modules/fpending (Makefile.am): Likewise.
21902         * modules/fprintftime (Makefile.am): Likewise.
21903         * modules/free (Makefile.am): Likewise.
21904         * modules/fsusage (Makefile.am): Likewise.
21905         * modules/ftruncate (Makefile.am): Likewise.
21906         * modules/fts (Makefile.am): Likewise.
21907         * modules/gc (Makefile.am): Likewise.
21908         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
21909         * modules/getaddrinfo (Makefile.am): Likewise.
21910         * modules/getcwd (Makefile.am): Likewise.
21911         * modules/getdelim (Makefile.am): Likewise.
21912         * modules/getdomainname (Makefile.am): Likewise.
21913         * modules/getgroups (Makefile.am): Likewise.
21914         * modules/gethostname (Makefile.am): Likewise.
21915         * modules/gethrxtime (Makefile.am): Likewise.
21916         * modules/getline (Makefile.am): Likewise.
21917         * modules/getloadavg (Makefile.am): Likewise.
21918         * modules/getlogin_r (Makefile.am): Likewise.
21919         * modules/getopt (Makefile.am): Likewise.
21920         * modules/getpass (Makefile.am): Likewise.
21921         * modules/getpass-gnu (Makefile.am): Likewise.
21922         * modules/getsubopt (Makefile.am): Likewise.
21923         * modules/gettime (Makefile.am): Likewise.
21924         * modules/gettimeofday (Makefile.am): Likewise.
21925         * modules/getugroups (Makefile.am): Likewise.
21926         * modules/getusershell (Makefile.am): Likewise.
21927         * modules/glob (Makefile.am): Likewise.
21928         * modules/group-member (Makefile.am): Likewise.
21929         * modules/hard-locale (Makefile.am): Likewise.
21930         * modules/hash (Makefile.am): Likewise.
21931         * modules/hmac-md5 (Makefile.am): Likewise.
21932         * modules/hmac-sha1 (Makefile.am): Likewise.
21933         * modules/human (Makefile.am): Likewise.
21934         * modules/idcache (Makefile.am): Likewise.
21935         * modules/imaxabs (Makefile.am): Likewise.
21936         * modules/imaxdiv (Makefile.am): Likewise.
21937         * modules/inet_ntop (Makefile.am): Likewise.
21938         * modules/inet_pton (Makefile.am): Likewise.
21939         * modules/inttostr (Makefile.am): Likewise.
21940         * modules/isapipe (Makefile.am): Likewise.
21941         * modules/lchown (Makefile.am): Likewise.
21942         * modules/long-options (Makefile.am): Likewise.
21943         * modules/lstat (Makefile.am): Likewise.
21944         * modules/malloc (Makefile.am): Likewise.
21945         * modules/mathl (Makefile.am): Likewise.
21946         * modules/mbchar (Makefile.am): Likewise.
21947         * modules/md2 (Makefile.am): Likewise.
21948         * modules/md4 (Makefile.am): Likewise.
21949         * modules/md5 (Makefile.am): Likewise.
21950         * modules/memcasecmp (Makefile.am): Likewise.
21951         * modules/memchr (Makefile.am): Likewise.
21952         * modules/memcmp (Makefile.am): Likewise.
21953         * modules/memcoll (Makefile.am): Likewise.
21954         * modules/memcpy (Makefile.am): Likewise.
21955         * modules/memmem (Makefile.am): Likewise.
21956         * modules/memmove (Makefile.am): Likewise.
21957         * modules/mempcpy (Makefile.am): Likewise.
21958         * modules/memrchr (Makefile.am): Likewise.
21959         * modules/memset (Makefile.am): Likewise.
21960         * modules/memxor (Makefile.am): Likewise.
21961         * modules/mkancesdirs (Makefile.am): Likewise.
21962         * modules/mkdir (Makefile.am): Likewise.
21963         * modules/mkdir-p (Makefile.am): Likewise.
21964         * modules/mkdtemp (Makefile.am): Likewise.
21965         * modules/mkstemp (Makefile.am): Likewise.
21966         * modules/mktime (Makefile.am): Likewise.
21967         * modules/modechange (Makefile.am): Likewise.
21968         * modules/mountlist (Makefile.am): Likewise.
21969         * modules/nanosleep (Makefile.am): Likewise.
21970         * modules/openat (Makefile.am): Likewise.
21971         * modules/pagealign_alloc (Makefile.am): Likewise.
21972         * modules/physmem (Makefile.am): Likewise.
21973         * modules/poll (Makefile.am): Likewise.
21974         * modules/posixtm (Makefile.am): Likewise.
21975         * modules/posixver (Makefile.am): Likewise.
21976         * modules/putenv (Makefile.am): Likewise.
21977         * modules/quote (Makefile.am): Likewise.
21978         * modules/quotearg (Makefile.am): Likewise.
21979         * modules/raise (Makefile.am): Likewise.
21980         * modules/read-file (Makefile.am): Likewise.
21981         * modules/readline (Makefile.am): Likewise.
21982         * modules/readlink (Makefile.am): Likewise.
21983         * modules/readtokens (Makefile.am): Likewise.
21984         * modules/readutmp (Makefile.am): Likewise.
21985         * modules/realloc (Makefile.am): Likewise.
21986         * modules/regex (Makefile.am): Likewise.
21987         * modules/rename (Makefile.am): Likewise.
21988         * modules/rename-dest-slash (Makefile.am): Likewise.
21989         * modules/rijndael (Makefile.am): Likewise.
21990         * modules/rmdir (Makefile.am): Likewise.
21991         * modules/rpmatch (Makefile.am): Likewise.
21992         * modules/safe-read (Makefile.am): Likewise.
21993         * modules/safe-write (Makefile.am): Likewise.
21994         * modules/same (Makefile.am): Likewise.
21995         * modules/save-cwd (Makefile.am): Likewise.
21996         * modules/savedir (Makefile.am): Likewise.
21997         * modules/setenv (Makefile.am): Likewise.
21998         * modules/settime (Makefile.am): Likewise.
21999         * modules/sha1 (Makefile.am): Likewise.
22000         * modules/sig2str (Makefile.am): Likewise.
22001         * modules/snprintf (Makefile.am): Likewise.
22002         * modules/stdlib-safer (Makefile.am): Likewise.
22003         * modules/stpcpy (Makefile.am): Likewise.
22004         * modules/stpncpy (Makefile.am): Likewise.
22005         * modules/strcase (Makefile.am): Likewise.
22006         * modules/strcasestr (Makefile.am): Likewise.
22007         * modules/strchrnul (Makefile.am): Likewise.
22008         * modules/strcspn (Makefile.am): Likewise.
22009         * modules/strdup (Makefile.am): Likewise.
22010         * modules/strerror (Makefile.am): Likewise.
22011         * modules/strftime (Makefile.am): Likewise.
22012         * modules/strndup (Makefile.am): Likewise.
22013         * modules/strnlen (Makefile.am): Likewise.
22014         * modules/strpbrk (Makefile.am): Likewise.
22015         * modules/strsep (Makefile.am): Likewise.
22016         * modules/strstr (Makefile.am): Likewise.
22017         * modules/strtod (Makefile.am): Likewise.
22018         * modules/strtoimax (Makefile.am): Likewise.
22019         * modules/strtok_r (Makefile.am): Likewise.
22020         * modules/strtol (Makefile.am): Likewise.
22021         * modules/strtoll (Makefile.am): Likewise.
22022         * modules/strtoul (Makefile.am): Likewise.
22023         * modules/strtoull (Makefile.am): Likewise.
22024         * modules/strtoumax (Makefile.am): Likewise.
22025         * modules/strverscmp (Makefile.am): Likewise.
22026         * modules/time_r (Makefile.am): Likewise.
22027         * modules/timegm (Makefile.am): Likewise.
22028         * modules/tmpfile-safer (Makefile.am): Likewise.
22029         * modules/unistd-safer (Makefile.am): Likewise.
22030         * modules/unlinkdir (Makefile.am): Likewise.
22031         * modules/userspec (Makefile.am): Likewise.
22032         * modules/utime (Makefile.am): Likewise.
22033         * modules/utimecmp (Makefile.am): Likewise.
22034         * modules/utimens (Makefile.am): Likewise.
22035         * modules/vasnprintf (Makefile.am): Likewise.
22036         * modules/vasprintf (Makefile.am): Likewise.
22037         * modules/vsnprintf (Makefile.am): Likewise.
22038         * modules/xalloc (Makefile.am): Likewise.
22039         * modules/xgetcwd (Makefile.am): Likewise.
22040         * modules/xnanosleep (Makefile.am): Likewise.
22041         * modules/xreadlink (Makefile.am): Likewise.
22042         * modules/xstrtod (Makefile.am): Likewise.
22043         * modules/xstrtol (Makefile.am): Likewise.
22044         * modules/xstrtold (Makefile.am): Likewise.
22045         * modules/yesno (Makefile.am): Likewise.
22046
22047 2006-10-12  Jim Meyering  <jim@meyering.net>
22048
22049         * m4/getloadavg.m4: Revert the change below.
22050
22051         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
22052         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
22053         fail with a symlink, which is what coreutils' ./bootstrap now
22054         creates by default.
22055
22056 2006-10-12  Bruno Haible  <bruno@clisp.org>
22057
22058         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
22059         mingw.
22060         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
22061         MSVC and mingw explicitly.
22062
22063 2006-10-11  Simon Josefsson  <jas@extundo.com>
22064             Bruno Haible  <bruno@clisp.org>
22065
22066         Add support for multiple gnulib-tool invocations in the scope of a
22067         single configure.ac file.
22068         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
22069         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
22070         with the same contents as the _LIBADD variable.
22071         (func_emit_initmacro_start, func_emit_initmacro_end,
22072         func_emit_initmacro_done): New functions.
22073         (func_import, func_create_testdir): Invoke them. Allow the identifiers
22074         gl_LIBOBJS and gl_LTLIBOBJS.
22075
22076 2006-10-11  Bruno Haible  <bruno@clisp.org>
22077
22078         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
22079         (func_create_testdir): Don't create po/Makefile.am, don't invoke
22080         autoreconf. Instead, invoke autopoint explicitly but move back the
22081         *.m4 files from gnulib.
22082
22083 2006-10-11  Bruno Haible  <bruno@clisp.org>
22084
22085         * gnulib-tool (func_usage): Make module names after --create-testdir
22086         optional.
22087         (func_create_testdir): If no module was specified, use nearly all
22088         modules.
22089
22090 2006-10-12  Jim Meyering  <jim@meyering.net>
22091
22092         Big performance improvement for fts-based tools that use FTS_NOSTAT.
22093         Avoid spurious inode-mismatch problems on non-POSIX file systems.
22094         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
22095         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
22096         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
22097         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
22098         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
22099         (fts_set_stat_required): New function.
22100         (fts_open): Defer the calls to fts_stat, if possible or requested.
22101         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
22102         into fts_stat itself.
22103         (fts_read): Perform any required (deferred) fts_stat call.
22104         (fts_build): Likewise, for the directory we're about to open and read.
22105         In the readdir loop, carefully decide whether each entry will require
22106         an eventual call to fts_stat, using dirent.d_type info if available.
22107         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
22108         a command line argument into this function.  Update all callers.
22109         Map a return value of FTS_DOT to FTS_D for a command line argument.
22110         * modules/fts (Depends-on): Add d-type.  Alphabetize.
22111         Thanks to Miklos Szeredi for his tenacity and for the initial
22112         bug report about "find" failing on a FUSE-based file system.
22113
22114         * lib/fts.c (fts_open): Use consistent indentation.
22115
22116 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
22117
22118         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
22119         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
22120         reported by Jim Meyering.  All uses of cache variables renamed
22121         to match Autoconf's.
22122         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
22123         the other one.
22124
22125         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
22126         Fix misspelling in diagnostic.
22127
22128 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
22129
22130         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
22131         defined.  Problem reported by Matthew Woehlke.
22132
22133         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
22134         Add support for Tandem NonStop R series.
22135         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
22136         Use new macro.
22137
22138         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
22139         (has_trailing_slash): Omit size arg; all callers changed.
22140         Omit 'inline', since it doesn't help performance and we'd
22141         need to configure it.
22142         Don't count //, ///, etc. as having a trailing slash.
22143         As a side effect, this removes a C99ism reported by Matthew Woehlke.
22144         (rpl_rename_dest_slash): On failure, use rename's errno rather
22145         than (in some cases) an incorrect or junk errno.
22146         Simplify code by removing need to compute length; this does
22147         cause it to make two passes instead of one over the file name,
22148         but it's worth it.
22149
22150         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
22151         change, since Autoconf's version may no longer be appropriate now
22152         that we are using CVS Autoconf's version.  Add support for Tandem.
22153
22154 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
22155             Bruno Haible  <bruno@clisp.org>
22156
22157         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
22158         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
22159         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
22160         gl_AC_TYPE_LONG_LONG.
22161
22162         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
22163         instead of HAVE_LONG_LONG.
22164         * lib/printf-args.c (printf_fetchargs): Likewise.
22165         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
22166         * lib/vasnprintf.c (VASNPRINTF): Likewise.
22167         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
22168         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
22169         gl_AC_TYPE_LONG_LONG.
22170
22171 2006-10-11  Bruno Haible  <bruno@clisp.org>
22172
22173         * m4/longlong.m4: Add comments.
22174         * m4/ulonglong.m4: Likewise.
22175
22176 2006-10-10  Bruno Haible  <bruno@clisp.org>
22177
22178         Make it possible to #define stpcpy, strdup to aliases.
22179         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
22180         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
22181
22182 2006-10-10  Bruno Haible  <bruno@clisp.org>
22183
22184         Make it possible to #define gcd to an alias.
22185         * lib/gcd.c: Include config.h.
22186
22187 2006-10-10  Bruno Haible  <bruno@clisp.org>
22188
22189         Make it possible to #define c_isascii to an alias.
22190         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
22191         defined. Undefine the macros before defining them, to avoid gcc
22192         warnings.
22193         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
22194         define NO_C_CTYPE_MACROS early.
22195
22196 2006-10-10  Bruno Haible  <bruno@clisp.org>
22197
22198         Make it possible to #define set_program_name to an alias.
22199         * lib/progname.c: Don't undefine set_program_name; instead, undefine
22200         ENABLE_RELOCATABLE early.
22201
22202 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22203
22204         Port to Tandem NSK OSS, which has 64-bit signed int but at most
22205         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
22206         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
22207         More generally, don't assume that 64-bit signed int is available
22208         if unsigned int is, and vice versa.
22209         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
22210         unsigned symbols, not on their signed counterparts.
22211         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
22212         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
22213         (UINT64_C, UINTMAX_C):
22214         Likewise.
22215         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
22216         unsigned counterparts.
22217         (Have_long_long, Unsigned): New macros.
22218         (Int): Renamed from INT.
22219         (strtoimax): Use the new macros.
22220         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
22221         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
22222         * modules/inttypes (inttypes.h): Substitute
22223         HAVE_UNSIGNED_LONG_LONG_INT.
22224         * modules/stdint (stdint.h): Likewise.
22225         (Files): Add m4/ulonglong.m4.
22226
22227 2006-10-10  Bruno Haible  <bruno@clisp.org>
22228
22229         Fix a gcc -Wshadow warning.
22230         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
22231         to 'bucket'.
22232         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
22233         gl_linked_indexof_from_to): Likewise.
22234         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
22235         Likewise.
22236         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
22237         Likewise.
22238         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
22239         Reported by Eric Blake.
22240
22241 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
22242
22243         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
22244         for NetBSD.  Problem reported by Bruno Haible.
22245
22246 2006-10-09  Jim Meyering  <jim@meyering.net>
22247
22248         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
22249         Patch from Bruno Haible.
22250
22251 2006-10-09  Jim Meyering  <jim@meyering.net>
22252
22253         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
22254         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
22255         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
22256
22257 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
22258
22259         Don't include <config.h> twice; this doesn't work in some cases,
22260         e.g., when config.h has "#define intmax_t long long int" and
22261         we include <config.h>, <inttypes.h>, <config.h> in that order.
22262         Problem reported by Matthew Woehlke in:
22263         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
22264         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
22265         * lib/fts-cycle.c: Don't include config.h.
22266         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
22267         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
22268         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
22269         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
22270         inttypes.h.
22271         * lib/xstrtoumax.c: Likewise.
22272         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
22273         __strtol and the like, so that this module is more like its siblings.
22274         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
22275         Remove; no longer needed now that we assume gnulib inttypes.h.
22276
22277 2006-10-08  Bruno Haible  <bruno@clisp.org>
22278
22279         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
22280         option.
22281
22282 2006-10-07  Jim Meyering  <jim@meyering.net>
22283
22284         * modules/inttypes (inttypes.h): Revert what seems to have been
22285         an inadvertent part of today's change: use "|", not "/" in the
22286         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
22287
22288 2006-10-07  Bruno Haible  <bruno@clisp.org>
22289
22290         * modules/sublist: New file.
22291
22292 2006-10-07  Bruno Haible  <bruno@clisp.org>
22293
22294         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
22295         * modules/argz (argz.h): Likewise.
22296         * modules/arpa_inet (arpa/inet.h): Likewise.
22297         * modules/byteswap (byteswap.h): Likewise.
22298         * modules/configmake (configmake.h): Likewise.
22299         * modules/fcntl (fcntl.h): Likewise.
22300         * modules/fnmatch (fnmatch.h): Likewise.
22301         * modules/getopt (getopt.h): Likewise.
22302         * modules/glob (glob.h): Likewise.
22303         * modules/inttypes (inttypes.h): Likewise.
22304         * modules/netinet_in (netinet/in.h): Likewise.
22305         * modules/poll (poll.h): Likewise.
22306         * modules/stdbool (stdbool.h): Likewise.
22307         * modules/stdint (stdint.h): Likewise.
22308         * modules/sys_select (sys/select.h): Likewise.
22309         * modules/sys_socket (sys/socket.h): Likewise.
22310         * modules/sys_stat (sys/stat.h): Likewise.
22311         * modules/sysexits (sysexits.h): Likewise.
22312         * modules/unistd (unistd.h): Likewise.
22313         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
22314         Add a "DO NOT EDIT" comment to the generated file.
22315         (func_import): Likewise for gnulib-comp.m4.
22316
22317 2006-10-07  Bruno Haible  <bruno@clisp.org>
22318
22319         * lib/gl_sublist.h: New file.
22320         * lib/gl_sublist.c: New file.
22321
22322 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
22323
22324         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
22325         name (relative to the original working directory) and the file
22326         name component (relative to the temporary working directory).  All
22327         callers changed.
22328         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
22329         * lib/mkdir-p.c (make_dir_parents): Likewise.
22330         * lib/mkdir-p.h (make_dir_parents): Likewise.
22331
22332 2006-10-06  Eric Blake  <ebb9@byu.net>
22333
22334         Define several macros for use by the clean-temp module.
22335         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
22336         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
22337         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
22338
22339         * lib/clean-temp.h (close_stream_temp): New declaration.
22340         * lib/clean-temp.c (includes): Pull in headers according to what
22341         other modules are in use.
22342         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
22343
22344 2006-10-06  Bruno Haible  <bruno@clisp.org>
22345
22346         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
22347         instead of fopen, fwriteerror.
22348
22349 2006-10-06  Bruno Haible  <bruno@clisp.org>
22350
22351         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
22352         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
22353         int.
22354         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
22355         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
22356         Return an error indicator.
22357         Suggested by Eric Blake.
22358
22359 2006-10-06  Bruno Haible  <bruno@clisp.org>
22360
22361         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
22362         Reported by Eric Blake.
22363
22364 2006-10-06  Bruno Haible  <bruno@clisp.org>
22365
22366         * modules/closeout (Description): Mention stderr too.
22367
22368 2006-10-06  Bruno Haible  <bruno@clisp.org>
22369         and Paul Eggert  <eggert@cs.ucla.edu>
22370
22371         * lib/closeout.c (close_stdout): Also close stderr.
22372         * lib/closeout.h: Update comment.
22373
22374 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
22375
22376         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
22377         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
22378         * lib/dirchownmod.c: Include lchown.h.
22379         * lib/lchown.c: Don't include files that lchown.h now includes.
22380         Don't declare chown, since lchown.h now does that.
22381         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
22382         (lchown): Define to rpl_chown if lchown is declared but
22383         does not exist.  Declare using a prototype if lchown is not
22384         declared.  Add a copyright notice.
22385         * lib/mkstemp.h: Include <unistd.h>.
22386         * lib/openat.c: Include lchown.h.
22387
22388         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
22389         we now test for that separately.
22390         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
22391         rather than O_NOFOLLOW, when testing whether it's possible to
22392         avoid a race condition reliably.
22393         * lib/savewd.c (savewd_chdir): Likewise.
22394
22395         Remove macros that are no longer needed now that stdint.h is
22396         reliable.
22397         * lib/fsusage.c (UINTMAX_MAX): Remove.
22398         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
22399         * lib/utimecmp.c (SIZE_MAX): Remove.
22400
22401         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
22402
22403         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
22404         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
22405         O_NOATIME works.
22406
22407 2006-10-05  Bruno Haible  <bruno@clisp.org>
22408
22409         * lib/gl_list.h (gl_sortedlist_search_from_to,
22410         gl_sortedlist_indexof_from_to): New declarations.
22411         (gl_list_implementation): New fields sortedlist_search_from_to,
22412         sortedlist_indexof_from_to.
22413         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
22414         inline functions.
22415         * lib/gl_list.c (gl_sortedlist_search_from_to,
22416         gl_sortedlist_indexof_from_to): New functions.
22417         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
22418         function.
22419         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
22420         (gl_array_sortedlist_search_from_to): New function.
22421         (gl_array_list_implementation): Update.
22422         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
22423         function.
22424         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
22425         (gl_carray_sortedlist_search_from_to): New function.
22426         (gl_carray_list_implementation): Update.
22427         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
22428         gl_linked_sortedlist_indexof_from_to): New functions.
22429         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
22430         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
22431         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
22432         gl_tree_sortedlist_indexof_from_to): New functions.
22433         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
22434         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
22435         Update.
22436         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
22437         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
22438         Update.
22439
22440 2006-10-05  Bruno Haible  <bruno@clisp.org>
22441
22442         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
22443         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
22444         (struct gl_list_implementation): Add fields search_from_to,
22445         indexof_from_to. Remove fields search, indexof.
22446         (gl_list_search): Use the search_from_to method.
22447         (gl_list_search_from, gl_list_search_from_to): New functions.
22448         (gl_list_indexof): Use the indexof_from_to method.
22449         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
22450         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
22451         (gl_list_search_from, gl_list_search_from_to): New functions.
22452         (gl_list_indexof): Use the indexof_from_to method.
22453         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
22454         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
22455         gl_array_indexof. Add start_index, end_index arguments.
22456         (gl_array_search_from_to): Renamed from gl_array_search. Add
22457         start_index, end_index arguments.
22458         (gl_array_remove, gl_array_list_implementation): Update.
22459         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
22460         gl_carray_indexof. Add start_index, end_index arguments.
22461         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
22462         start_index, end_index arguments.
22463         (gl_carray_remove, gl_carray_list_implementation): Update.
22464         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
22465         gl_linked_search. Add start_index, end_index arguments.
22466         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
22467         start_index, end_index arguments.
22468         (gl_linked_remove): Update.
22469         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
22470         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
22471         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
22472         field to 'size_t'.
22473         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
22474         gl_tree_search. Add start_index, end_index arguments.
22475         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
22476         start_index, end_index arguments.
22477         (gl_tree_remove): Update.
22478         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
22479         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
22480         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
22481         function.
22482         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
22483         gl_tree_search. Add start_index, end_index arguments.
22484         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
22485         start_index, end_index arguments.
22486         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
22487         Update.
22488         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
22489
22490 2006-10-05  Bruno Haible  <bruno@clisp.org>
22491
22492         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
22493
22494         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
22495         fwriteerror_temp): New declarations.
22496         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
22497         (descriptors): New variable.
22498         (cleanup): First, close the descriptors.
22499         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
22500         fclose_temp, fwriteerror_temp): New functions.
22501
22502 2006-10-04  Jim Meyering  <jim@meyering.net>
22503
22504         * lib/fts.c (fts_open): Tiny comment change.
22505
22506 2006-10-04  Bruno Haible  <bruno@clisp.org>
22507
22508         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
22509         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
22510         gl_LOCK_BODY.
22511         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
22512         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
22513         gl_LOCK_EARLY_BODY.
22514         (gl_LOCK): Require gl_LOCK_BODY.
22515
22516 2006-10-04  Bruno Haible  <bruno@clisp.org>
22517
22518         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
22519         (gl_oset_search_atleast): New declaration.
22520         (struct gl_oset_implementation): Add field 'search_atleast'.
22521         (gl_oset_search_atleast): New inline function.
22522         * lib/gl_oset.c (gl_oset_search_atleast): New function.
22523         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
22524         (gl_array_oset_implementation): Update.
22525         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
22526         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
22527         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
22528
22529 2006-10-04  Bruno Haible  <bruno@clisp.org>
22530
22531         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
22532
22533 2006-10-03  Bruno Haible  <bruno@clisp.org>
22534
22535         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
22536         from gl_avltreehash_list_implementation.
22537
22538 2006-10-03  Bruno Haible  <bruno@clisp.org>
22539
22540         * lib/gl_oset.c (gl_oset_add): Fix return type.
22541
22542 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
22543
22544         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
22545
22546 2006-10-02  Eric Blake  <ebb9@byu.net>
22547
22548         * modules/strnlen (Depends-on): Add extensions.
22549
22550 2006-10-02  Eric Blake  <ebb9@byu.net>
22551
22552         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
22553         definition in 2.60+.
22554
22555 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
22556
22557         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
22558         checks.
22559
22560 2006-10-02  Bruno Haible  <bruno@clisp.org>
22561
22562         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
22563         to the AUTOMAKE_OPTIONS.
22564         Reported by Jim Meyering.
22565
22566 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
22567
22568         Work around bug in Solaris 10 /proc file system:
22569         /proc/self/fd/NNN/.. isn't the parent directory of
22570         the directory whose file descriptor is NNN.  This needs to
22571         be worked around at run time, not compile time, since a
22572         program might be built on Solaris 8, where things work, and
22573         run on Solaris 10.
22574         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
22575         to use the following interface instead:
22576         (OPENAT_BUFFER_SIZE): New macro.
22577         (openat_proc_name): New function.
22578         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
22579         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
22580         Likewise.
22581         * lib/openat-proc.c: New file.
22582         * modules/openat (Files): Add lib/openat-proc.c.
22583         (Depends-on): Add same-inode, stdbool.
22584         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
22585
22586 2006-09-29  Bruno Haible  <bruno@clisp.org>
22587
22588         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
22589         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
22590         argument. Set stdout_closed before testing for ferror, not after.
22591         (fwriteerror, fwriteerror_no_ebadf): New functions.
22592
22593 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22594
22595         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
22596
22597 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
22598
22599         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
22600         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
22601
22602 2006-09-28  Jim Meyering  <jim@meyering.net>
22603
22604         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
22605         Include <unistd.h>.
22606
22607 2006-09-28  Bruno Haible  <bruno@clisp.org>
22608
22609         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
22610         * modules/linkedhash-list (Depends-on): Likewise.
22611         * modules/rbtreehash-list (Depends-on): Likewise.
22612
22613 2006-09-28  Bruno Haible  <bruno@clisp.org>
22614
22615         * lib/strndup.h: Simplify the redefinition of strndup.
22616         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
22617         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
22618
22619 2006-09-28  Bruno Haible  <bruno@clisp.org>
22620
22621         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
22622         * lib/gl_linkedhash_list.c: Likewise.
22623         * lib/gl_rbtreehash_list.c: Likewise.
22624
22625 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
22626
22627         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
22628         getaddrinfo.
22629
22630         * lib/__fpending.h: Don't include <stdio_ext.h> unless
22631         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
22632         it causes <stdio_ext.h> to cause a compile-time error.
22633         Problem reported by Nelson H. F. Beebe.
22634         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
22635         of HAVE_DECL___PENDING.
22636
22637         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
22638         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
22639         declaration.
22640
22641 2006-09-27  Jim Meyering  <jim@meyering.net>
22642
22643         This file could end up with a definition for a function
22644         named __strndup, rather than rpl_strndup on a system with
22645         incomplete weak_alias support.
22646         * lib/strndup.c (strndup): Rename from __strndup.
22647         Remove #defines that used to map __strndup to strndup.
22648         Don't use K&R prototypes.
22649         Remove LIBC-related code, since this file is not sync'd with glibc.
22650         * lib/strndup.h: Revamp, accordingly.
22651         * m4/strndup.m4: Modernize.
22652
22653 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
22654
22655         * modules/savewd (Depends-on): Add 'raise'.
22656         * lib/savewd.c: Include <signal.h>, for 'raise'.
22657
22658 2006-09-26  Jim Meyering  <jim@meyering.net>
22659
22660         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
22661         when we detect Darwin 8.7.0's acl_get_file bug.
22662         Rearrange to perform the new (below) run-test while $LIBS
22663         contains any acl-related library.  Set USE_ACL at the end.
22664         (gl_ACL_GET_FILE): New function.
22665
22666 2006-09-26  Eric Blake  <ebb9@byu.net>
22667
22668         * lib/verror.c: Include <config.h> unconditionally.
22669
22670 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
22671
22672         * modules/clock-time (Maintainer): Add self.
22673         * modules/getlogin_r (Depends-on): Add extensions.
22674
22675 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22676
22677         * modules/clock-time: New module.
22678         * modules/nanosleep (Depends-on): Add clock-time.
22679         * modules/gethrxtime (Depends-on): Likewise.
22680         * modules/gettime (Depends-on): Likewise.
22681         * modules/settime (Depends-on): Likewise.
22682
22683         * modules/fts-lgpl: Depend on openat.
22684         * modules/mkancesdirs: Depend on savewd.
22685         * modules/mkdir-p: Likewise.
22686
22687 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22688
22689         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
22690
22691         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
22692         `gl_have_arbitrary_file_name_length_limit' to
22693         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
22694         actually works between configure runs.
22695
22696 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22697             Bruno Haible  <bruno@clisp.org>
22698
22699         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
22700
22701 2006-09-25  Jim Meyering  <jim@meyering.net>
22702
22703         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
22704         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
22705
22706 2006-09-25  Eric Blake  <ebb9@byu.net>
22707
22708         * gnulib-tool (func_import, func_create_testdir): Fix typos in
22709         exec's in 2006-09-18 patch when shuffling fds.
22710
22711 2006-09-25  Bruno Haible  <bruno@clisp.org>
22712
22713         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
22714         Reported by Jim Meyering.
22715
22716 2006-09-24  Jim Meyering  <jim@meyering.net>
22717
22718         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
22719         compare a pointer against a literal "0".  That caused failures with
22720         at least HP-UX's hpcc.
22721
22722 2006-09-22  Simon Josefsson  <jas@extundo.com>
22723
22724         * modules/gc-sha1:
22725         * modules/gc-md4:
22726         * modules/gc-hmac-sha1:
22727         * modules/gc-hmac-md5:
22728         * modules/gc-des:
22729         * modules/gc-arcfour: Distribute more files.
22730
22731 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22732
22733         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
22734         (gl_linked_iterator_from_to): Initialize struct completely.
22735         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
22736         (gl_tree_iterator_from_to): Likewise
22737         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
22738         * lib/gl_array_list.c [lint] (gl_array_iterator)
22739         (gl_array_iterator_from_to): Likewise.
22740         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
22741         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
22742         (gl_carray_iterator_from_to): Likewise.
22743
22744         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
22745         * lib/md4.c (md4_process_block): Remove unused variable.
22746         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
22747         parentheses for clarity.
22748
22749 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22750
22751         * modules/bison-i18n (Depends-on): Add gettext.
22752
22753 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22754
22755         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
22756         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
22757         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
22758         also add missing comma that caused broken test.
22759         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
22760         stdlib.h, for `abort'.
22761         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
22762         variables.
22763         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
22764         include unistd.h if present, for `rmdir'.
22765         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
22766         variables.
22767         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
22768         in the process include standard headers for prototypes.
22769         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
22770         gets declared on GNU/Linux.
22771         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
22772         unistd.h, for `rmdir'.
22773         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
22774
22775         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
22776         always true.
22777         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
22778
22779         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
22780
22781 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22782
22783         * gnulib-tool (func_version): Create output all at once.  This
22784         may help avoid triggering unnecessary SIGPIPEs, and at any
22785         rate it doesn't hurt.
22786
22787 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22788             Bruno Haible  <bruno@clisp.org>
22789
22790         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
22791         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
22792         * m4/signed.m4 (bh_C_SIGNED): Likewise.
22793
22794         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
22795         (gl_FUNC_VASPRINTF): Invoke it.
22796
22797 2006-09-22  Bruno Haible  <bruno@clisp.org>
22798
22799         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
22800         getloadavg.c as first argument.
22801
22802 2006-09-22  Bruno Haible  <bruno@clisp.org>
22803
22804         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
22805         at the beginning of the gl_INIT macro.
22806         * modules/getloadavg (configure.ac): Pass $gl_source_base to
22807         gl_GETLOADAVG.
22808
22809 2006-09-22  Bruno Haible  <bruno@clisp.org>
22810
22811         * gnulib-tool (func_create_megatestdir): Don't include the config-h
22812         module.
22813         Suggested by Ralf Wildenhues.
22814
22815 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22816
22817         Import this patch from libc:
22818
22819         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
22820
22821         * lib/regex_internal.c (re_string_reconstruct): Handle
22822         offset < pstr->valid_raw_len && pstr->offsets_needed case.
22823         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
22824         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
22825         re_string_context_at.
22826
22827         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
22828         now requires it.
22829         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
22830         gl_REGEX now does it for us.
22831         (gl_REGEX): Add test taken from
22832         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
22833
22834         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
22835         Check that large offsets work.  Modernize Autoconf usages.
22836         Prefer "yes" to mean a good thing rather than a bad.
22837         Don't put "#define mkstemp" in config.h, as this might interfere
22838         with standard system headers that "#define mkstemp mkstemp64".
22839
22840         * modules/mkstemp (Depends-on): Add extensions, so that
22841         mkstemp is visible on some platforms.
22842         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
22843         (Include): Change to "mkstemp.h" from <stdlib.h>.
22844         (Files): Add mkstemp.h.
22845
22846         * lib/mkstemp.h: New file, since some standard headers
22847         #define mkstemp.
22848         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
22849         Include "mkstemp.h".
22850         Make the _LIBC code resemble glibc original more,
22851         e.g., use K&R style.
22852         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
22853         (mkstemp): Remove, since mkstemp.h does this for us.
22854         * lib/stdlib--.h: Include mkstemp.h.
22855
22856         Import this patch from libc:
22857
22858         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
22859
22860         * lib/tempname.c (__gen_tempname): Change attempts_min
22861         into a macro.  Use preprocessor to decide how to initialize
22862         attempts [Coverity CID 67].
22863
22864 2006-09-20  Bruno Haible  <bruno@clisp.org>
22865
22866         * lib/mkdtemp.c: Import from libc.
22867         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
22868                 * sysdeps/posix/tempname.c (__gen_tempname): Change
22869                 attempts_min into a macro.  Use preprocessor to decide how to
22870                 initialize attempts [Coverity CID 67].
22871         2001-11-27  Paul Eggert  <eggert@twinsun.com>
22872                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
22873                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
22874
22875 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22876
22877         * gnulib-tool (func_exit): New function, to allow to pass the
22878         exit status portably through the trap.  Use everywhere.
22879         (--help, --version): Signal a write error.
22880         (trap): catch SIGPIPE, for write errors.
22881         Exit at the end of the trap, with the correct exit status.
22882
22883 2006-09-19  Karl Berry  <karl@gnu.org>
22884
22885         * doc/gnulib.texi: note about the license texinfo files.
22886
22887 2006-09-19  Eric Blake  <ebb9@byu.net>
22888
22889         * gnulib-tool: Avoid space-tab.
22890
22891 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
22892
22893         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
22894         that prevented coreutils 6.1 from building.  Problem reported
22895         by Petter Reinholdtsen.
22896
22897 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
22898
22899         * gnulib-tool (avoidlist): Fix typo that broke options like
22900         --avoid=lock that are used by coreutils bootstrap.
22901
22902 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
22903
22904         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
22905         more systematically.
22906
22907 2006-09-18  Jim Meyering  <jim@meyering.net>
22908
22909         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
22910
22911 2006-09-18  Bruno Haible  <bruno@clisp.org>
22912
22913         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
22914
22915 2006-09-18  Bruno Haible  <bruno@clisp.org>
22916
22917         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
22918         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
22919         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
22920         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
22921         * m4/gettext.m4: Require autoconf >= 2.52.
22922         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
22923         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
22924         of gl_cv_header_inttypes_h.
22925
22926 2006-09-18  Bruno Haible  <bruno@clisp.org>
22927
22928         * lib/javaversion.c: Include configmake.h.
22929
22930 2006-09-18  Bruno Haible  <bruno@clisp.org>
22931
22932         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
22933         avoid that the while loops be executed in a subshell.
22934
22935 2006-09-18  Bruno Haible  <bruno@clisp.org>
22936
22937         * MODULES.html.sh (func_module): Break long lines.
22938         Suggested by Bruce Korb <bkorb@gnu.org>.
22939
22940 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22941
22942         Speed up by a factor of 1.12.
22943         * gnulib-tool (nl): New variable.
22944         (func_import): Rewrite include directive extraction to only read each
22945         directive once.
22946
22947 2006-09-17  Bruno Haible  <bruno@clisp.org>
22948
22949         * modules/javaversion (Makefile.am): Remove DEFS setting.
22950         (Depends-on): Add configmake, for PKGDATADIR definition.
22951
22952 2006-09-17  Bruno Haible  <bruno@clisp.org>
22953
22954         * gnulib-tool (func_create_testdir): Rewrite all files at once.
22955
22956 2006-09-17  Bruno Haible  <bruno@clisp.org>
22957
22958         * gnulib-tool (func_append): New function, stolen from libtool.m4.
22959         (func_modules_transitive_closure, func_modules_add_dummy,
22960         func_modules_to_filelist, func_import, func_create_testdir,
22961         func_create_megatestdir, ...): Use it wherever possible.
22962         Suggested by Ralf Wildenhues.
22963
22964 2006-09-16  Karl Berry  <karl@gnu.org>
22965
22966         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
22967         to avoid sectioning errors.
22968         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
22969         [ifinfo]: blank line after @center-ed titles.
22970         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
22971         Spell FSF address consistently with others.
22972         (These changes approved by rms.)
22973
22974 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22975
22976         Speed up by a factor of 1.61.
22977         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
22978         already checked module names again.
22979
22980 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22981
22982         Speed up by a factor of 1.13.
22983         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
22984         for new_files, and the input to func_add_or_update.
22985
22986 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22987
22988         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
22989         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
22990
22991 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22992
22993         * modules/mkancesdirs (Depends-on): Add fcntl.
22994         * modules/savewd: New file.
22995         * MODULES.html.sh (File system functions): Add savewd.
22996
22997         * modules/configmake (Makefile.am): Add support for the
22998         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
22999
23000 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
23001
23002         * m4/savewd.m4: New file.
23003
23004 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
23005
23006         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
23007         (dirchownmod): New arg FD.  All callers changed.
23008         Use FD rather than opening the directory ourself, as opening is
23009         now the caller's responsibility.
23010         * lib/dirchownmod.h: Likewise.
23011         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
23012         hosts that require <sys/types.h> before <sys/stat.h>.  Include
23013         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
23014         (test_dir): Remove.
23015         (mkancesdirs): Return length of prefix of FILE that has already
23016         been made, or -2 if there is a child doing the work.  Redo
23017         algorithm so that it is O(N) rather than O(N**2).  Optimize away
23018         ".", and treat ".." specially since it might stray back into
23019         already-created areas.  Use a subprocess if necessary.  New arg
23020         WD; all users changed.  MAKE_DIR function should now return 1
23021         if it creates a directory that is not readable.  Return -2 if
23022         a child process is spun off.
23023         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
23024         Adjust signature to match code.
23025         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
23026         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
23027         all users changed.
23028         * lib/savewd.c, lib/savewd.h: New files.
23029
23030 2006-09-15  Jim Meyering  <jim@meyering.net>
23031
23032         * modules/rename-dest-slash: New module.
23033         * MODULES.html.sh (posix_compat): Add it here.
23034
23035         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
23036
23037 2006-09-15  Jim Meyering  <jim@meyering.net>
23038
23039         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
23040         file.
23041
23042         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
23043
23044 2006-09-15  Jim Meyering  <jim@meyering.net>
23045
23046         * lib/rename-dest-slash.c (has_trailing_slash): Use
23047         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
23048         (rpl_rename_dest_slash): Perform the cheaper trailing slash
23049         test before testing whether SRC is a directory.
23050         Suggestions from Bruno Haible.
23051
23052         Avoid a warning about an unused variable.
23053         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
23054         into the #ifdef block where it's used.
23055
23056         * lib/rename-dest-slash.c: New file.
23057
23058 2006-09-14  Bruno Haible  <bruno@clisp.org>
23059
23060         * lib/allocsa.c: Include <config.h> unconditionally.
23061         * lib/asnprintf.c: Likewise.
23062         * lib/asprintf.c: Likewise.
23063         * lib/c-strcasecmp.c: Likewise.
23064         * lib/c-strcasestr.c: Likewise.
23065         * lib/c-strncasecmp.c: Likewise.
23066         * lib/c-strstr.c: Likewise.
23067         * lib/classpath.c: Likewise.
23068         * lib/clean-temp.c: Likewise.
23069         * lib/concatpath.c: Likewise.
23070         * lib/copy-file.c: Likewise.
23071         * lib/csharpcomp.c: Likewise.
23072         * lib/csharpexec.c: Likewise.
23073         * lib/execute.c: Likewise.
23074         * lib/fatal-signal.c: Likewise.
23075         * lib/findprog.c: Likewise.
23076         * lib/fwriteerror.c: Likewise.
23077         * lib/gl_array_list.c: Likewise.
23078         * lib/gl_array_oset.c: Likewise.
23079         * lib/gl_avltree_list.c: Likewise.
23080         * lib/gl_avltree_oset.c: Likewise.
23081         * lib/gl_avltreehash_list.c: Likewise.
23082         * lib/gl_carray_list.c: Likewise.
23083         * lib/gl_linked_list.c: Likewise.
23084         * lib/gl_linkedhash_list.c: Likewise.
23085         * lib/gl_list.c: Likewise.
23086         * lib/gl_oset.c: Likewise.
23087         * lib/gl_rbtree_list.c: Likewise.
23088         * lib/gl_rbtree_oset.c: Likewise.
23089         * lib/gl_rbtreehash_list.c: Likewise.
23090         * lib/imaxabs.c: Likewise.
23091         * lib/imaxdiv.c: Likewise.
23092         * lib/javacomp.c: Likewise.
23093         * lib/javaexec.c: Likewise.
23094         * lib/javaversion.c: Likewise.
23095         * lib/linebreak.c: Likewise.
23096         * lib/localcharset.c: Likewise.
23097         * lib/lock.c: Likewise.
23098         * lib/mbchar.c: Likewise.
23099         * lib/mbswidth.c: Likewise.
23100         * lib/mkdtemp.c: Likewise.
23101         * lib/pipe.c: Likewise.
23102         * lib/printf-args.c: Likewise.
23103         * lib/printf-parse.c: Likewise.
23104         * lib/progname.c: Likewise.
23105         * lib/progreloc.c: Likewise.
23106         * lib/readlink.c: Likewise.
23107         * lib/sh-quote.c: Likewise.
23108         * lib/stpcpy.c: Likewise.
23109         * lib/stpncpy.c: Likewise.
23110         * lib/strcasecmp.c: Likewise.
23111         * lib/strcasestr.c: Likewise.
23112         * lib/strcspn.c: Likewise.
23113         * lib/striconv.c: Likewise.
23114         * lib/strncasecmp.c: Likewise.
23115         * lib/strnlen1.c: Likewise.
23116         * lib/strstr.c: Likewise.
23117         * lib/strtok_r.c: Likewise.
23118         * lib/tls.c: Likewise.
23119         * lib/tmpdir.c: Likewise.
23120         * lib/unicodeio.c: Likewise.
23121         * lib/unsetenv.c: Likewise.
23122         * lib/vasnprintf.c: Likewise.
23123         * lib/vasprintf.c: Likewise.
23124         * lib/wait-process.c: Likewise.
23125         * lib/xallocsa.c: Likewise.
23126         * lib/xsetenv.c: Likewise.
23127         * lib/xstriconv.c: Likewise.
23128
23129 2006-09-13  Simon Josefsson  <jas@extundo.com>
23130
23131         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
23132         that internally, suggested by Ralf Wildenhues
23133         <Ralf.Wildenhues@gmx.de>.
23134
23135 2006-09-13  Simon Josefsson  <jas@extundo.com>
23136
23137         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
23138         @LIBOBJS@.
23139         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23140
23141 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
23142
23143         * lib/_fpending.c: Include <config.h> unconditionally, since we no
23144         longer worry about uses that don't define HAVE_CONFIG_H.
23145         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
23146         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
23147         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
23148         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
23149         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
23150         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
23151         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
23152         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
23153         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
23154         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
23155         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
23156         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
23157         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
23158         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
23159         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
23160         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
23161         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
23162         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
23163         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
23164         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
23165         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
23166         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
23167         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
23168         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
23169         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
23170         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
23171         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
23172         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
23173         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
23174         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
23175         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
23176         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
23177         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
23178         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
23179         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
23180         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
23181         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
23182         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
23183         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
23184         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
23185         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
23186         Likewise.
23187
23188 2006-09-13  Eric Blake  <ebb9@byu.net>
23189
23190         * lib/getopt.c: Fix typo in last commit.
23191
23192 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
23193
23194         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
23195         dgettext.
23196
23197 2006-09-12  Jim Meyering  <jim@meyering.net>
23198
23199         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
23200         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
23201         Reported by Nelson H. F. Beebe.
23202
23203 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
23204
23205         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
23206         program_invocation_name and program_invocation_short_name are
23207         initialized.
23208         * lib/argp-namefrob.h: Move declarations of program_invocation_name
23209         and program_invocation_short_name to argp.h, so they are visible
23210         to user programs.
23211         * lib/argp.h: Likewise
23212
23213 2006-09-10  Bruno Haible  <bruno@clisp.org>
23214
23215         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
23216         m4/inttypes_h.m4, m4/uintmax_t.m4.
23217
23218 2006-09-10  Bruno Haible  <bruno@clisp.org>
23219
23220         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
23221         gl_AC_TYPE_UINTMAX_T.
23222
23223 2006-09-10  Bruno Haible  <bruno@clisp.org>
23224
23225         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
23226
23227 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
23228
23229         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
23230         convention.  Text proposed by Bruno Haible.
23231         (struct argp_option): Document the use of N_() wrappers.
23232
23233         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
23234         '\v', and translate the two parts separately, instead of feeding
23235         the whole string to gettext.  This allows to exclude
23236         '\v' from the strings visible to the translator by writing doc
23237         strings as N_("..") "\v" N_("..").
23238
23239 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23240
23241         * config/srclist.txt: Undo latest change; the bug was fixed.
23242
23243 2006-09-09  Bruno Haible  <bruno@clisp.org>
23244
23245         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
23246         assignments if building a library without libtool.
23247         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
23248         in func_emit_lib_Makefile_am.
23249         (func_import): When building a static library libfoo.a, arrange to
23250         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
23251         (func_create_testdir): Likewise.
23252         * modules/gc (configure.ac, Makefile.am): If building statically,
23253         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
23254         * modules/iconvme (configure.ac, Makefile.am): Likewise.
23255         * modules/striconv (configure.ac, Makefile.am): Likewise.
23256         Based on a suggestion by Ralf Wildenhues.
23257
23258 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
23259
23260         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
23261         Check for unistd.h too, since Autoconf doesn't assume POSIX.
23262         Also:
23263
23264         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
23265         Add year_2050_test to catch glibc bug 2821
23266         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
23267
23268         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23269         Prefer #ifdef to #if.
23270
23271         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
23272         Return from 'main' instead of calling 'exit'.
23273
23274 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
23275
23276         * lib/mktime.c (guess_time_tm): Fix bug where mktime
23277         returned the maximum time_t value rather than (time_t) -1.
23278         Problem originally reported by William Bardwell
23279         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
23280
23281         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
23282         Moved to here ...
23283         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
23284         ... from here.
23285
23286 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
23287
23288         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
23289         2821 is fixed.
23290
23291 2006-09-08  Jim Meyering  <jim@meyering.net>
23292
23293         Don't make generated files read-only.  That would bother too many
23294         people.  However, do retain the ability to work when targets are
23295         read-only: remove the destination and temporary files before writing
23296         them (when generated via sed or echo), or by using the -f option for
23297         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
23298         * modules/alloca-opt, modules/argz, modules/arpa_inet:
23299         * modules/byteswap, modules/configmake, modules/fcntl:
23300         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
23301         * modules/localcharset, modules/netinet_in, modules/poll:
23302         * modules/stdbool, modules/stdint, modules/sys_select:
23303         * modules/sys_socket, modules/sys_stat, modules/sysexits:
23304
23305 2006-09-08  Jim Meyering  <jim@meyering.net>
23306
23307         Avoid new build failure on FreeBSD 6.0.
23308         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
23309         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
23310         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
23311
23312 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23313
23314         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
23315
23316 2006-09-07  Jim Meyering  <jim@meyering.net>
23317
23318         Fix global typo in last change: use chmod u-w, not chmod u-x.
23319         Spotted by Paul Eggert and Bruce Korb.
23320         * modules/alloca-opt, modules/argz, modules/arpa_inet:
23321         * modules/byteswap, modules/configmake, modules/fcntl:
23322         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
23323         * modules/localcharset, modules/netinet_in, modules/poll:
23324         * modules/stdbool, modules/stdint, modules/sys_select:
23325         * modules/sys_socket, modules/sys_stat, modules/sysexits:
23326
23327 2006-09-06  Jim Meyering  <jim@meyering.net>
23328
23329         Make generated files be read-only.
23330         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
23331         Ensure that each generated file is now read-only.
23332         * modules/argz: Likewise.
23333         * modules/arpa_inet: Likewise.
23334         * modules/byteswap: Likewise.
23335         * modules/configmake: Likewise.
23336         * modules/fcntl: Likewise.
23337         * modules/fnmatch: Likewise.
23338         * modules/getopt: Likewise.
23339         * modules/glob: Likewise.
23340         * modules/inttypes: Likewise.
23341         * modules/netinet_in: Likewise.
23342         * modules/poll: Likewise.
23343         * modules/stdbool: Likewise.
23344         * modules/stdint: Likewise.
23345         * modules/sys_select: Likewise.
23346         * modules/sys_socket: Likewise.
23347         * modules/sys_stat: Likewise.
23348         * modules/sysexits: Likewise.
23349         * modules/localcharset: Same as above, but continue using temporary
23350         file named "t-$@" (why different?) rather than the "$@-t" used
23351         everywhere else.
23352
23353         * modules/sysexits (Makefile.am): Replace literal occurrences
23354         of "sysexit.h" more readable, and more consistent, "$@".
23355
23356 2006-09-06  Bruno Haible  <bruno@clisp.org>
23357
23358         * modules/striconv: New file.
23359         * modules/xstriconv: New file.
23360         * MODULES.html.sh (Internationalization functions): Add striconv,
23361         xstriconv.
23362
23363 2006-09-06  Bruno Haible  <bruno@clisp.org>
23364
23365         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
23366         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
23367         not using libtool correctly.
23368
23369 2006-09-06  Bruno Haible  <bruno@clisp.org>
23370
23371         * lib/striconv.h: New file.
23372         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
23373         iconvstring.c.
23374         * lib/xstriconv.h: New file.
23375         * lib/xstriconv.c: New file.
23376
23377 2006-09-06  Bruno Haible  <bruno@clisp.org>
23378
23379         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
23380         lib_..._LDFLAGS.
23381
23382 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23383
23384         * lib/argz_.h: Sync from Libtool.
23385
23386         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
23387                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
23388
23389         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
23390
23391 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
23392
23393         * modules/trim: New file.
23394
23395 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
23396
23397         * lib/trim.h: New file.
23398         * lib/trim.c: New file.
23399
23400 2006-09-05  Bruno Haible  <bruno@clisp.org>
23401
23402         * MODULES.html.sh (String handling): Add trim.
23403
23404 2006-09-04  Karl Berry  <karl@gnu.org>
23405
23406         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
23407         until next release.
23408
23409 2006-09-03  Bruno Haible  <bruno@clisp.org>
23410
23411         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
23412         correctly.
23413
23414 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23415
23416         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
23417         not gl_GETLOADAVG.  Omit unneeded semicolons.
23418         Problems reported by Ralf Wildenhues in
23419         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
23420         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
23421         at the end, which is the usual gnulib style.
23422
23423         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
23424         of doing all the work ourselves.
23425         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
23426         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
23427
23428 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23429
23430         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
23431         Problem reported by Ralf Wildenhues in
23432         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
23433
23434         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
23435         HAVE_STRUCT_STATFS_F_FSTYPENAME.
23436
23437 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23438
23439         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
23440         yesterday's patch by changing test -n to test -z.
23441
23442 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23443
23444         * modules/getloadavg (Files): Add m4/getloadavg.m4.
23445         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
23446         the former is now obsolescent.
23447
23448         * modules/chdir-long (Depends-on): Add fcntl.
23449
23450 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23451
23452         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
23453         obsolescent, and programs should use gnulib instead.
23454         * m4/getloadavg.m4: New file, with contents taken from Autoconf
23455         but with prefixes changed.
23456
23457 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23458
23459         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
23460         or stdbool.h, because they might not exist while configuring.
23461
23462         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
23463         Don't include unistd.h or limits.h; not needed, since chdir-long.h
23464         does that for us.
23465         (O_DIRECTORY): Remove.
23466
23467 2006-08-31  Eric Blake  <ebb9@byu.net>
23468
23469         * gnulib-tool: Don't let emacs change spaces to TAB.
23470
23471 2006-08-31  Bruno Haible  <bruno@clisp.org>
23472
23473         * gnulib-tool: When calling func_import more than once, do it in a
23474         subshell.
23475         Reported by Eric Blake <ebb9@byu.net>.
23476
23477 2006-08-31  Bruno Haible  <bruno@clisp.org>
23478
23479         * gnulib-tool (nl): Remove variable.
23480         (sed_transform_lib_file): Use more robust test for config-h module.
23481         (func_import): Fix typo in 2006-08-25 patch.
23482
23483 2006-08-31  Bruno Haible  <bruno@clisp.org>
23484
23485         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
23486         specified, augment Makefile.am variables instead of assigning them.
23487
23488 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
23489
23490         Work around a bug in both the Linux and SunOS 64-bit kernels:
23491         nanosleep mishandles sleeps for longer than 2**31 seconds.
23492         Problem reported by Frank v Waveren in
23493         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
23494         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
23495         Check for nanosleep bug.
23496         (LIB_NANOSLEEP): Append clock_gettime library if needed.
23497
23498 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
23499
23500         Work around a bug in both the Linux and SunOS 64-bit kernels:
23501         nanosleep mishandles sleeps for longer than 2**31 seconds.
23502         Problem reported by Frank v Waveren in
23503         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
23504         * lib/nanosleep.c (BILLION): New constant.
23505         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
23506         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
23507         implementation.
23508
23509 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
23510
23511         * modules/nanosleep (Depends-on): Add gettime.
23512
23513 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
23514         and Simon Josefsson  <jas@extundo.com>
23515         and Oskar Liljeblad  <oskar@osk.mine.nu>
23516
23517         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
23518         * gnulib-tool (func_import): New license type 'unmodifiable license
23519         text'.
23520         * modules/fdl: Use it.  Longer description.
23521         * module/gpl, module/lgpl: New files.
23522
23523 2006-08-30  Jim Meyering  <jim@meyering.net>
23524
23525         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
23526         shadowing the parameter.
23527
23528 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23529
23530         Sync from Libtool:
23531
23532         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23533
23534         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
23535         sharing with gnulib.  Report by Eric Blake.
23536
23537 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
23538
23539         * modules/isapipe: New file.
23540         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
23541
23542 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
23543
23544         * modules/configmake (Makefile.am): Add a comment, and omit
23545         the CONFIGMAKE_ prefix from generated macro names.  Suggested
23546         by Bruno Haible.
23547
23548 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
23549
23550         * m4/isapipe.m4: New file.
23551
23552 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
23553
23554         * lib/isapipe.c, lib/isapipe.h: New files.
23555
23556 2006-08-29  Jim Meyering  <jim@meyering.net>
23557
23558         * modules/configmake (Makefile.am): Make configmake.h depend on
23559         Makefile.  Otherwise, a stale configmake.h could hang around.
23560
23561 2006-08-29  Eric Blake  <ebb9@byu.net>
23562
23563         * lib/error.c (error_at_line, print_errno_message): Match libc, after
23564         resolution of upstream bug 3044.
23565
23566 2006-08-29  Bruno Haible  <bruno@clisp.org>
23567
23568         * modules/localcharset (Depends-on): Add configmake.
23569         (Makefile.am): Remove setting of LIBDIR through DEFS.
23570
23571 2006-08-29  Bruno Haible  <bruno@clisp.org>
23572
23573         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
23574         defined.
23575
23576 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
23577
23578         * modules/fcntl: New file.
23579         * modules/chdir-safer (Depends-on): Add fcntl.
23580         * modules/fts: Likewise.
23581         * modules/mkdir-p: Likewise.
23582
23583         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
23584         This undoes the most recent change, since we're now addressing the
23585         problem in a different way.
23586
23587         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
23588         into output, since the output might be called Makefile.am even
23589         if $makefile_name is something different.
23590         (func_import): Use $makefile_am rather than
23591         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
23592         empty.
23593
23594         * modules/inttypes (Files): Add m4/inttypes-h.m4.
23595
23596 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
23597
23598         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
23599         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
23600         recent change to stdint.m4, since we're now addressing the problem in a
23601         different way.
23602
23603 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
23604
23605         * m4/fcntl_h.m4: New file.
23606
23607 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
23608
23609         * lib/fcntl_.h: New file.
23610         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
23611         the fcntl module.
23612         * lib/dirchownmod.c: Likewise.
23613         * lib/fts.c: Likewise.
23614
23615         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
23616         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
23617         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
23618         just before including <inttypes.h>, to avoid circular inclusion.
23619
23620 2006-08-28  Jim Meyering  <jim@meyering.net>
23621
23622         * doc/visibility.texi: Actually read and correct the grammar of the
23623         sentence affected by yesterday's change.
23624
23625 2006-08-28  Eric Blake  <ebb9@byu.net>
23626
23627         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
23628         needs wrapper.
23629
23630 2006-08-28  Eric Blake  <ebb9@byu.net>
23631
23632         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
23633
23634 2006-08-28  Eric Blake  <ebb9@byu.net>
23635
23636         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
23637
23638 2006-08-28  Bruno Haible  <bruno@clisp.org>
23639
23640         * modules/c-strstr: New file, from GNU gettext.
23641         * MODULES.html.sh (String handling): Add c-strstr.
23642
23643 2006-08-28  Bruno Haible  <bruno@clisp.org>
23644
23645         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
23646         macros.
23647         Reported by Eric Blake.
23648
23649 2006-08-28  Bruno Haible  <bruno@clisp.org>
23650
23651         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
23652         (VASNPRINTF): Return a string of length > INT_MAX without failing.
23653         * lib/vasprintf.c: Include errno.h, limits.h.
23654         (EOVERFLOW): New fallback definition.
23655         (vasprintf): Test here whether the string length is > INT_MAX.
23656         * lib/vsnprintf.c: Include errno.h, limits.h.
23657         (EOVERFLOW): New fallback definition.
23658         (vsnprintf): Fix bug when generated string was too long for the buffer.
23659         Test here whether the string length is > INT_MAX.
23660
23661 2006-08-28  Bruno Haible  <bruno@clisp.org>
23662
23663         * lib/inttypes_.h (SCNX*): Remove definitions.
23664         Reported by Eric Blake.
23665
23666 2006-08-28  Bruno Haible  <bruno@clisp.org>
23667
23668         * lib/c-strstr.h: New file, from GNU gettext.
23669         * lib/c-strstr.c: New file, from GNU gettext.
23670
23671 2006-08-28  Bruno Haible  <bruno@clisp.org>
23672
23673         * gnulib-tool: Reorder some statements.
23674
23675 2006-08-28  Bruno Haible  <bruno@clisp.org>
23676
23677         * gnulib-tool: New option --makefile-name.
23678         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
23679         $makefile_name.
23680         (func_import): Write $makefile_name to the cache file, and read it from
23681         there unless explicitly specified. Use $makefile_name as file name
23682         instead of Makefile.am. Adjust the recommendations accordingly.
23683
23684 2006-08-28  Bruno Haible  <bruno@clisp.org>
23685
23686         * gnulib-tool (func_verify_module): Check against misapplying patch.
23687
23688 2006-08-28  Bruno Haible  <bruno@clisp.org>
23689
23690         * gnulib-tool (func_relativize, func_relconcat): New functions.
23691         Give an error if --local-dir is given with --update.
23692         Remove trailing slashes from $local_gnulib_dir.
23693         (func_import): Store the relativized $local_gnulib_dir in
23694         gnulib-cache.m4, and read it from there if not specified explicitly.
23695
23696 2006-08-28  Bruno Haible  <bruno@clisp.org>
23697
23698         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
23699         is the current directory. Respect also $local_gnulib_dir.
23700
23701 2006-08-28  Bruno Haible  <bruno@clisp.org>
23702             Simon Josefsson  <jas@extundo.com>
23703
23704         BeOS portability.
23705         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
23706
23707 2006-08-27  Jim Meyering  <jim@meyering.net>
23708
23709         * doc/visibility.texi: Remove duplicate word: "pointer".
23710
23711 2006-08-26  Bruno Haible  <bruno@clisp.org>
23712
23713         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
23714         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
23715         (Makefile.am): Create inttypes.h from inttypes_.h.
23716         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
23717
23718         * modules/imaxabs: New file.
23719
23720         * modules/imaxdiv: New file.
23721
23722 2006-08-26  Bruno Haible  <bruno@clisp.org>
23723
23724         * m4/inttypes.m4: New file.
23725         * m4/_inttypes_h.m4: Remove file.
23726         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
23727         PRI_MACROS_BROKEN.
23728         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
23729
23730         * m4/imaxabs.m4: New file.
23731
23732         * m4/imaxdiv.m4: New file.
23733
23734 2006-08-26  Bruno Haible  <bruno@clisp.org>
23735
23736         * lib/inttypes_.h: New file.
23737         * lib/inttypes.h: Remove file.
23738         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
23739
23740         * lib/imaxabs.c: New file.
23741
23742         * lib/imaxdiv.c: New file.
23743
23744 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
23745
23746         New config-h module, so that "make" output needn't be cluttered
23747         by -DHAVE_CONFIG_H.
23748         * MODULES.html.sh (Support for building libraries and executables):
23749         Add config-h.
23750         * modules/config-h: New file.
23751         * gnulib-tool (nl, sed_transform_lib_file): New vars.
23752         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
23753         the config-h module is used.
23754
23755         New configmake module, so that "make" output needn't be cluttered
23756         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
23757         * MODULES.html.sh (Support for building libraries and executables):
23758         Add configmake.
23759         * modules/configmake: New file.
23760
23761 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
23762
23763         * m4/config-h.m4: New file.
23764
23765 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
23766
23767         * config/srclist.txt: Add elisp-comp.
23768
23769 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
23770
23771         * MODULES.html.sh (Support for building libraries and executables):
23772         Add elisp-comp.
23773         * build-aux/elisp-comp: New file.
23774         * modules/elisp-comp: New file.
23775
23776 2006-08-24  Bruno Haible  <bruno@clisp.org>
23777
23778         * gnulib-tool (func_create_testdir): Use non-default values of
23779         sourcebase and m4base.
23780
23781 2006-08-24  Bruno Haible  <bruno@clisp.org>
23782
23783         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
23784         HTML structure.
23785
23786 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
23787
23788         * modules/openat (Depends-on): Add lchown.
23789
23790 2006-08-23  Bruno Haible  <bruno@clisp.org>
23791
23792         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
23793         of gl_LOCK_EARLY instead of gl_LOCK.
23794
23795 2006-08-23  Bruno Haible  <bruno@clisp.org>
23796
23797         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
23798         on OSF/1 to no.
23799         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
23800
23801 2006-08-23  Bruno Haible  <bruno@clisp.org>
23802
23803         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
23804         as unusable.
23805
23806         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
23807         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
23808         (gl_LOCK): New macro.
23809
23810 2006-08-22  Simon Josefsson  <jas@extundo.com>
23811
23812         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
23813         to md5 module.
23814
23815 2006-08-22  Simon Josefsson  <jas@extundo.com>
23816
23817         * MODULES.html.sh: Add "Support for maintaining and release
23818         projects".
23819
23820         * build-aux/gnupload: New file, from coreutils.
23821
23822 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
23823
23824         Avoid the need for AC_LIBSOURCES in m4 macros.
23825         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
23826         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
23827         * modules/check-version (EXTRA_DIST): Add check-version.h.
23828         * modules/crc (EXTRA_DIST): Add crc.h.
23829         * modules/des (EXTRA_DIST): Add des.h.
23830         * modules/gc (EXTRA_DIST): Add gc.h.
23831         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
23832         * modules/getline (EXTRA_DIST): Add getline.h.
23833         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
23834         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
23835         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
23836         * modules/md2 (EXTRA_DIST): Add md2.h.
23837         * modules/md4 (EXTRA_DIST): Add md4.h.
23838         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
23839         * modules/read-file (EXTRA_DIST): Add read-file.h.
23840         * modules/readline (EXTRA_DIST): Add readline.h.
23841         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
23842         rijndael-api-fst.h.
23843
23844 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
23845
23846         * m4/rijndael.m4 (gl_ARCFOUR):
23847         * m4/arctwo.m4 (gl_ARCTWO):
23848         * m4/check-version.m4 (gl_CHECK_VERSION):
23849         * m4/crc.m4 (gl_CRC):
23850         * m4/des.m4 (gl_DES):
23851         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
23852         * m4/gc.m4 (gl_GC):
23853         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
23854         * m4/getline.m4 (gl_FUNC_GETLINE):
23855         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
23856         * m4/hmac-md5.m4 (gl_HMAC_MD5):
23857         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
23858         * m4/md2.m4 (gl_MD2):
23859         * m4/md4.m4 (gl_MD4):
23860         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
23861         * m4/read-file.m4 (gl_FUNC_READ_FILE):
23862         * m4/readline.m4 (gl_FUNC_READLINE):
23863         * m4/rijndael.m4 (gl_RIJNDAEL):
23864         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
23865         to get the necessary .h files and whatnot.
23866
23867 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
23868
23869         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
23870         gnulib rather than the other way around.
23871         * config/srclistvars.sh (COREUTILS): Remove.
23872
23873 2006-08-22  Jim Meyering  <jim@meyering.net>
23874
23875         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
23876
23877         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
23878
23879 2006-08-22  Eric Blake  <ebb9@byu.net>
23880
23881         * modules/regexprops-generic: New file.
23882         * MODULES.html.sh (Support for building documentation): List it.
23883
23884 2006-08-22  Eric Blake  <ebb9@byu.net>
23885
23886         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
23887         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
23888         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
23889         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
23890
23891 2006-08-22  Bruno Haible  <bruno@clisp.org>
23892
23893         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
23894         and lib_LTLIBRARIES like the other lib_* variables.
23895
23896 2006-08-22  Bruno Haible  <bruno@clisp.org>
23897
23898         * build-aux/x-to-1.in: New file, from GNU gettext.
23899
23900 2006-08-22  Bruno Haible  <bruno@clisp.org>
23901
23902         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
23903         <utmpx.h> exists.
23904
23905 2006-08-22  Bruno Haible  <bruno@clisp.org>
23906
23907         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
23908         <utmpx.h> exists.
23909
23910 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23911
23912         BeOS portability.
23913         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
23914         exist.
23915         Problem reported by Bruno Haible.
23916
23917 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23918
23919         Avoid the need for AC_LIBSOURCES in m4 macros.
23920         * modules/acl (EXTRA_DIST): Add acl.h.
23921         * modules/argmatch (Files): Add m4/argmatch.m4.
23922         (configure.ac): Add gl_ARGMATCH.
23923         (EXTRA_DIST): Renamed from lib_SOURCES, for
23924         consistency with the other modules.  Remove argmatch.c.
23925         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
23926         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
23927         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
23928         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
23929         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
23930         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
23931         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
23932         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
23933         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
23934         * modules/closeout (EXTRA_DIST): Add closeout.h.
23935         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
23936         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
23937         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
23938         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
23939         dirname.h; remove basename.c and stripslash.c.
23940         * modules/exclude (EXTRA_DIST): Add exclude.h.
23941         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
23942         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
23943         * modules/file-type (EXTRA_DIST): Add file-type.h.
23944         * modules/filemode (EXTRA_DIST): Add filemode.h.
23945         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
23946         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
23947         * modules/fpending (EXTRA_DIST): Add __fpending.h.
23948         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
23949         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
23950         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
23951         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
23952         * modules/getdate (EXTRA_DIST): Add getdate.c.
23953         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
23954         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
23955         * modules/getpass (EXTRA_DIST): Add getpass.h.
23956         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
23957         * modules/group-member (EXTRA_DIST): Add group-member.h.
23958         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
23959         * modules/hash (EXTRA_DIST): Add hash.h.
23960         * modules/human (EXTRA_DIST): Add human.h.
23961         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
23962         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
23963         * modules/lchown (EXTRA_DIST): Add lchown.h.
23964         * modules/long-options (EXTRA_DIST): Add long-options.h.
23965         * modules/lstat (EXTRA_DIST): Add lstat.h.
23966         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
23967         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
23968         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
23969         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
23970         * modules/memxor (EXTRA_DIST): Add memxor.h.
23971         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
23972         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
23973         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
23974         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
23975         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
23976         * modules/physmem (EXTRA_DIST): Add physmem.h.
23977         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
23978         * modules/posixver (EXTRA_DIST): Add posixver.h.
23979         * modules/quote (EXTRA_DIST): Add quote.h.
23980         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
23981         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
23982         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
23983         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
23984         regex_internal.h regexec.c.
23985         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
23986         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
23987         * modules/same (EXTRA_DIST): Add same.h.
23988         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
23989         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
23990         * modules/savedir (EXTRA_DIST): Add savedir.h.
23991         * modules/sha1 (EXTRA_DIST): Add sha1.h.
23992         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
23993         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
23994         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
23995         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
23996         * modules/strdup (EXTRA_DIST): Add strdup.h.
23997         * modules/strftime (EXTRA_DIST): Add strftime.h.
23998         * modules/strndup (EXTRA_DIST): Add strndup.h.
23999         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
24000         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
24001         * modules/time_r (EXTRA_DIST): Add time_r.h.
24002         * modules/timespec (EXTRA_DIST): Add timespec.h.
24003         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
24004         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
24005         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
24006         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
24007         * modules/userspec (EXTRA_DIST): Add userspec.h.
24008         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
24009         * modules/utimens (EXTRA_DIST): Add utimens.h.
24010         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
24011         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
24012         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
24013         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
24014         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
24015         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
24016         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
24017         * modules/yesno (EXTRA_DIST): Add yesno.h.
24018
24019 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
24020
24021         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
24022
24023         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
24024         * m4/dev-ino.m4, same-inode.m4: Remove.
24025
24026         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
24027         * m4/acl.m4 (AC_FUNC_ACL):
24028         * m4/backupfile.m4 (gl_BACKUPFILE):
24029         * m4/c-strtod.m4 (gl_C99_STRTOLD):
24030         * m4/canon-host.m4 (gl_CANON_HOST):
24031         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
24032         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
24033         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
24034         * m4/cloexec.m4 (gl_CLOEXEC):
24035         * m4/close-stream.m4 (gl_CLOSE_STREAM):
24036         * m4/closeout.m4 (gl_CLOSEOUT):
24037         * m4/dirfd.m4 (gl_FUNC_DIRFD):
24038         * m4/dirname.m4 (gl_DIRNAME):
24039         * m4/exclude.m4 (gl_EXCLUDE):
24040         * m4/exitfail.m4 (gl_EXITFAIL):
24041         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
24042         * m4/file-type.m4 (gl_FILE_TYPE):
24043         * m4/filemode.m4 (gl_FILEMODE):
24044         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
24045         * m4/fpending.m4 (gl_FUNC_FPENDING):
24046         * m4/fprintftime.m4 (gl_FPRINTFTIME):
24047         * m4/fts.m4 (gl_FUNC_FTS):
24048         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
24049         * m4/getdate.m4 (gl_GETDATE):
24050         * m4/gethrxtime.m4 (gl_GETHRXTIME):
24051         * m4/getpagesize.m4 (gl_GETPAGESIZE):
24052         * m4/getpass.m4 (gl_FUNC_GETPASS):
24053         * m4/gettime.m4 (gl_GETTIME):
24054         * m4/getugroups.m4 (gl_GETUGROUPS):
24055         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
24056         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
24057         * m4/hard-locale.m4 (gl_HARD_LOCALE):
24058         * m4/hash.m4 (gl_HASH):
24059         * m4/idcache.m4 (gl_IDCACHE):
24060         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
24061         * m4/lchown.m4 (gl_FUNC_LCHOWN):
24062         * m4/long-options.m4 (gl_LONG_OPTIONS):
24063         * m4/lstat.m4 (gl_FUNC_LSTAT):
24064         * m4/md5.m4 (gl_MD5):
24065         * m4/memcasecmp.m4 (gl_MEMCASECMP):
24066         * m4/memcoll.m4 (gl_MEMCOLL):
24067         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
24068         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
24069         * m4/memxor.m4 (gl_MEMXOR):
24070         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
24071         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
24072         * m4/modechange.m4 (gl_MODECHANGE):
24073         * m4/mountlist.m4 (gl_MOUNTLIST):
24074         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
24075         * m4/openat.m4 (gl_FUNC_OPENAT):
24076         * m4/pathmax.m4 (gl_PATHMAX):
24077         * m4/physmem.m4 (gl_PHYSMEM):
24078         * m4/posixtm.m4 (gl_POSIXTM):
24079         * m4/posixver.m4 (gl_POSIXVER):
24080         * m4/quote.m4 (gl_QUOTE):
24081         * m4/quotearg.m4 (gl_QUOTEARG):
24082         * m4/readtokens.m4 (gl_READTOKENS):
24083         * m4/readutmp.m4 (gl_READUTMP):
24084         * m4/regex.m4 (gl_REGEX):
24085         * m4/safe-read.m4 (gl_SAFE_READ):
24086         * m4/safe-write.m4 (gl_SAFE_WRITE):
24087         * m4/same.m4 (gl_SAME):
24088         * m4/save-cwd.m4 (gl_SAVE_CWD):
24089         * m4/savedir.m4 (gl_SAVEDIR):
24090         * m4/settime.m4 (gl_SETTIME):
24091         * m4/sha1.m4 (gl_SHA1):
24092         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
24093         * m4/stat-macros.m4 (gl_STAT_MACROS):
24094         * m4/stat-time.m4 (gl_STAT_TIME):
24095         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
24096         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
24097         * m4/strdup.m4 (gl_FUNC_STRDUP):
24098         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
24099         * m4/strndup.m4 (gl_FUNC_STRNDUP):
24100         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
24101         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
24102         * m4/time_r.m4 (gl_TIME_R):
24103         * m4/timespec.m4 (gl_TIMESPEC):
24104         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
24105         * m4/unlinkdir.m4 (gl_UNLINKDIR):
24106         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
24107         * m4/userspec.m4 (gl_USERSPEC):
24108         * m4/utimecmp.m4 (gl_UTIMECMP):
24109         * m4/utimens.m4 (gl_UTIMENS):
24110         * m4/xalloc.m4 (gl_XALLOC):
24111         * m4/xgetcwd.m4 (gl_XGETCWD):
24112         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
24113         * m4/xreadlink.m4 (gl_XREADLINK):
24114         * m4/xstrtod.m4 (gl_XSTRTOD):
24115         * m4/yesno.m4 (gl_YESNO):
24116         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
24117         to get the necessary .h files and whatnot.
24118
24119 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
24120             Bruno Haible  <bruno@clisp.org>
24121
24122         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
24123         /bin/sh understanding of '!' conditional negation.
24124
24125 2006-08-21  Jim Meyering  <jim@meyering.net>
24126
24127         * modules/openat (Depends-on): Really alphabetize.
24128
24129         * modules/acl (Depends-on): Add error and quote.
24130
24131         * check-module (find_included_lib_files): Add at-func.c to the
24132         ok-to-include-more-than-once white list.
24133
24134         * modules/openat (Depends-on): Add lstat.  Alphabetize.
24135
24136 2006-08-21  Bruno Haible  <bruno@clisp.org>
24137
24138         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
24139         Emit a pkgdata_DATA variable only if some snippets add contents to it.
24140         Reported by Martin Lambers <marlam@marlam.de>.
24141
24142 2006-08-21  Bruno Haible  <bruno@clisp.org>
24143
24144         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
24145         specify an installation location, don't emit a noinst_LIBRARIES or
24146         noinst_LTLIBRARIES assignment.
24147
24148 2006-08-21  Bruno Haible  <bruno@clisp.org>
24149
24150         BeOS portability.
24151         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
24152         BeOS has mbrtowc() but no <wctype.h>.
24153
24154 2006-08-21  Bruno Haible  <bruno@clisp.org>
24155
24156         BeOS portability.
24157         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
24158         exist.
24159
24160 2006-08-21  Bruno Haible  <bruno@clisp.org>
24161
24162         BeOS portability.
24163         * lib/mbchar.h: Include <wctype.h> only if it exists.
24164
24165 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
24166
24167         Remove files that are no longer needed by their respective modules.
24168         * m4/obstack.m4: Remove.
24169         * m4/strerror_r.m4: Remove.
24170         * m4/uint32_t.m4: Remove.
24171         * m4/uintptr_t.m4: Remove.
24172         * m4/ullong_max.m4: Remove.
24173         * m4/xstrtoimax.m4: Remove.
24174         * m4/xstrtoumax.m4: Remove.
24175
24176         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
24177         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
24178         dependencies now capture this.
24179
24180         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
24181         Do not use AC_LIBSOURCES, since gnulib modules now do this.
24182         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
24183         * m4/human.m4 (gl_HUMAN): Likewise.
24184         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
24185         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
24186
24187         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
24188
24189         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
24190         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
24191         stdint.
24192         * m4/human.m4 (gl_HUMAN): Likewise.
24193         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
24194         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
24195         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
24196         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
24197         * m4/xstrtol (gl_XSTRTOL): Likewise.
24198
24199         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
24200         AC_TYPE_LONG_LONG_INT.
24201         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
24202         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
24203         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
24204         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
24205
24206         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
24207         on stdbool.
24208
24209         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
24210         (gl_PREREQ_XSTRTOUL): Remove.
24211
24212         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
24213
24214         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
24215         mode.
24216
24217 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
24218
24219         Add and change modules to make it easier for coreutils to use
24220         gnulib-tool.
24221         * modules/backupfile (Files): Remove m4/d-ino.m4.
24222         (Depends-on): Add d-ino.
24223         * modules/cycle-check (Depends-on): Add stdint.
24224         (lib_SOURCES): Add cycle-check.h.
24225         * modules/d-ino: New module.
24226         * modules/d-type: New module.
24227         * modules/error (Files): Remove m4/strerror_r.m4.
24228         * modules/filemode (Files): Add m4/st_dm_mode.m4.
24229         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
24230         m4/inttypes_h.m4, m4/uintmax_t.m4.
24231         (Depends-on): Add stdint.
24232         (lib_SOURCES): Add fsusage.h.
24233         * modules/getcwd (Files): Remove d-ino.m4.
24234         (Depends-on): Add d-ino.
24235         * modules/getndelim2 (Depends-on): Add stdint.
24236         * modules/glob (Files): Remove m4/d-type.m4.
24237         (Depends-on): Add d-type.
24238         * modules/host-os: New module.
24239         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
24240         m4/inttypes_h.m4, m4/uintmax_t.m4.
24241         * Depends-on: Add stdint.
24242         (lib_SOURCES): Add human.h.
24243         * modules/inttostr (Files): Remove m4/intmax_t.m4,
24244         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
24245         m4/uintmax_t.m4, m4/ulonglong.m4.
24246         (Depends-on): Add stdint.
24247         (EXTRA_DIST): Add inttostr.h.
24248         * modules/lchmod: New module.
24249         * modules/link-follow: New module.
24250         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
24251         (Depends-on): Add lchmod.
24252         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
24253         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
24254         (Depends-on): Add stdint.
24255         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
24256         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
24257         (Depends-on): Add stdint.
24258         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
24259         * modules/perl: New module.
24260         * modules/regex (Depends-on): Add stdint.
24261         * modules/rmdir-errno: New module.
24262         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
24263         m4/intmax_t.m4.
24264         (Depends-on): Add stdint.
24265         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
24266         m4/uintmax_t.m4.
24267         (Depends-on): Add stdint.
24268         * modules/unlink-busy: New module.
24269         * modules/utimecmp (Depends-on): Add stdint.
24270         * modules/uptime: New module.
24271         * modules/winsz-ioctl: New module.
24272         * modules/winsz-termios: New module.
24273         * modules/xnanosleep (Depends-on): Add nanosleep.
24274         * modules/ullong_max: Remove.
24275         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
24276         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
24277         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
24278         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
24279         (Depends-on): Add inttypes.
24280         (lib_SOURCES): Add xstrtol.h.
24281         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
24282         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
24283         * MODULES.html.sh: Move 'assert' into the assert section.
24284         Move 'dummy' into the linking section.
24285         Remove ullong_max.
24286         Add section for compatibility checks for POSIX:2001 functions,
24287         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
24288         winsz-ioctl, and winsz-termios into it.
24289         Add lchmod.
24290         Add top-level Misc section and put host-os, perl, and uptime
24291         into it.
24292
24293 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
24294
24295         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
24296         now assume the stdint module.  Do not include inttypes.h.
24297         * lib/fsusage.h: Likewise.
24298         * lib/getndelim2.c: Likewise.
24299         * lib/human.h: Likewise.
24300         * lib/inttostr.h: Likewise.
24301         * lib/obstack.c: Likewise.
24302         * lib/regex_internal.h: Likewise.
24303         * lib/tempname.c: Likewise.
24304         * lib/utimecmp.c: Likewise.
24305         * lib/xstrtol.h: Likewise.
24306
24307         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
24308
24309         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
24310         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
24311         * lib/xtime.h: Likewise.
24312
24313 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24314
24315         * modules/openat (Files): Add lib/fchmodat.c.
24316         Fixes problem reported by Jay Youngman.
24317
24318 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24319
24320         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
24321         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
24322
24323 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
24324             Bruno Haible  <bruno@clisp.org>
24325
24326         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
24327         and is a script that invokes bison. Tighten the code. Add comments.
24328
24329 2006-08-18  Jim Meyering  <jim@meyering.net>
24330
24331         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
24332         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
24333         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
24334         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
24335
24336 2006-08-18  Bruno Haible  <bruno@clisp.org>
24337
24338         * modules/bison-i18n: New file.
24339         * MODULES.html.sh (Internationalization functions): Add it.
24340
24341 2006-08-18  Bruno Haible  <bruno@clisp.org>
24342
24343         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
24344         sys/statvfs.h. When getmntinfo was found, check its declaration and
24345         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
24346
24347 2006-08-18  Bruno Haible  <bruno@clisp.org>
24348
24349         * m4/bison-i18n.m4: New file, from bison.
24350
24351 2006-08-18  Bruno Haible  <bruno@clisp.org>
24352
24353         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
24354         (ME_DUMMY): Treat "kernfs" as a dummy.
24355         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
24356
24357 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
24358
24359         Update from coreutils.
24360
24361         2006-08-15  Jim Meyering  <jim@meyering.net>
24362
24363         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
24364
24365         2006-01-17  Jim Meyering  <jim@meyering.net>
24366
24367         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
24368
24369         2006-01-11  Jim Meyering  <jim@meyering.net>
24370
24371         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
24372         Check for the lchmod function.
24373
24374 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
24375
24376         Update from coreutils.
24377
24378         * lib/__fpending.h: Add copyright notice.
24379         * lib/fprintftime.h: Likewise.
24380         * lib/savedir.c: Use (C) in copyright notice.
24381         * lib/savedir.h: Likewise.
24382
24383         2006-08-15  Jim Meyering  <jim@meyering.net>
24384
24385         * lib/at-func.c: New file, with the logic of all emulated at-functions.
24386         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
24387         in support of the EXPECTED_ERRNO macro.
24388         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
24389         definitions.  Instead, define the appropriate symbols and include
24390         "at-func.c".
24391         * lib/mkdirat.c (mkdirat): Likewise.
24392         * lib/fchmodat.c (fchmodat): Likewise.
24393         (ENOSYS): Remove definition.
24394         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
24395         it.  Don't include "unistd--.h" -- it wasn't ever used.
24396
24397         2006-01-17  Jim Meyering  <jim@meyering.net>
24398
24399         Rewrite fts.c not to change the current working directory,
24400         by using openat, fstatat, fdopendir, etc..
24401
24402         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
24403         (HAVE_OPENAT_SUPPORT): Define.
24404         [_LIBC] (fchdir): Don't undef or define; no longer used.
24405         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
24406         Now, this `function' always succeeds, and consumes its file descriptor
24407         parameter -- so callers must not close such FDs.  Update callers.
24408         (diropen_fd, opendirat, cwd_advance_fd): New functions.
24409         (diropen): Add parameter, SP.  Adjust all callers.
24410         Implement using diropen_fd, rather than open.
24411         (fts_open): Initialize new member, fts_cwd_fd.
24412         Remove fts_rft-setting code.
24413         (fts_close): Close fts_cwd_fd, if necessary.
24414         (__opendir2): Define in terms of opendir or opendirat,
24415         depending on whether the FST_NOCHDIR flag is set.
24416         (fts_build): Since fts_safe_changedir consumes its FD, and since
24417         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
24418         and close the dup'd file descriptor upon failure.
24419         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
24420         (fts_safe_changedir): Tweak semantics to reflect that this function
24421         now calls cwd_advance_fd and hence consumes its FD argument.
24422         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
24423         [struct FTS] (fts_rft): Remove now-unused member.
24424         [struct FTS] (fts_cycle.state): Improve comment.
24425
24426         * lib/openat.c (openat_needs_fchdir): New function.
24427         * lib/openat.h (openat_needs_fchdir): Declare it.
24428
24429 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
24430
24431         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
24432         Problem and fix reported by Pádraig Brady in
24433         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
24434
24435 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
24436
24437         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
24438
24439 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
24440
24441         * lib/memcoll.c (memcoll): Optimize for the common case where the
24442         arguments are bytewise equal.
24443
24444 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
24445
24446         * doc/regexprops-generic.texi: Add a copyright notice.
24447
24448 2006-08-15  Bruno Haible  <bruno@clisp.org>
24449
24450         * modules/tmpdir (License): Change to LGPL.
24451
24452 2006-08-15  Bruno Haible  <bruno@clisp.org>
24453
24454         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
24455         module.
24456
24457 2006-08-14  Simon Josefsson  <jas@extundo.com>
24458
24459         * config/srclist.txt: Add gnupload.
24460
24461 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
24462
24463         Change copyright notice from LGPL 2 to GPL 2, since that's the
24464         standard form used in the gnulib repository.
24465         * tests/test-lock.c: Likewise.
24466         * tests/test-stdint.c: Likewise.
24467         * tests/test-tls.c: Likewise.
24468
24469         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
24470         prelude-manager.  User shorter URLs for GNU projects, without '?'.
24471         Add copyright notice.
24472
24473         * check-module: Add copyright notice.  Output a copyright
24474         notice if "--version" is specified.
24475         * modules/COPYING: New file.
24476         * tests/test-getaddrinfo.c: Add copyright notice.
24477         * tests/test-verify.c: Likewise.
24478
24479 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
24480
24481         Change copyright notice from LGPL 2 to GPL 2, since that's the
24482         standard form used in the gnulib repository.
24483         * lib/lock.c: LGPL -> GPL.
24484         * lib/lock.h: Likewise.
24485         * lib/strnlen1.c: Likewise.
24486         * lib/strnlen1.h: Likewise.
24487         * lib/tls.c: Likewise.
24488         * lib/tls.h: Likewise.
24489         * lib/tmpdir.c: Likewise.
24490
24491         * lib/TODO: Remove; this belongs only in coreutils.
24492
24493 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
24494
24495         Add copyright notices to long-enough files that lack them, since
24496         otherwise the files aren't clearly free.  Use the same notice that
24497         getdate.texi already uses.
24498         * doc/alloca-opt.texi: Add copyright notice.
24499         * doc/alloca.texi: Likewise.
24500         * doc/ctime.texi: Likewise.
24501         * doc/functions.texi: Likewise.
24502         * doc/gcd.texi: Likewise.
24503         * doc/gnulib-tool.texi: Likewise.
24504         * doc/inet_ntoa.texi: Likewise.
24505         * doc/visibility.texi: Likewise.
24506
24507         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
24508         * doc/quote.texi: Add copyright notice.
24509
24510         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
24511         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
24512         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
24513         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
24514         is now obsolete, and give a pointer to the Sun list.
24515         Add copyright notice.
24516
24517 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
24518
24519         * config/srclistvars.sh: Add copyright notice.
24520
24521 2006-08-14  Eric Blake  <ebb9@byu.net>
24522
24523         Import the following change from libc:
24524
24525         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
24526
24527         Upstream bug 2997.
24528         * lib/misc/error.c: Add space between program name and message if file
24529         name is missing.
24530
24531 2006-08-12  Karl Berry  <karl@gnu.org>
24532
24533         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
24534         remove, these originate in gnulib now.
24535
24536 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24537
24538         * doc/Makefile (standards.info standards.html standards.dvi):
24539         Also depend on make-stds.texi.
24540
24541 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24542
24543         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
24544         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
24545
24546         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
24547         in wchar_t.  Problem reported by Eric Blake.
24548
24549         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
24550         LEN is smaller than SIZE.  Suggested by Bruno Haible.
24551         Also, help the compiler to keep LEN in a register.
24552
24553 2006-08-11  Eric Blake  <ebb9@byu.net>
24554
24555         * users.txt: Sort.  Add tar.
24556
24557 2006-08-11  Bruno Haible  <bruno@clisp.org>
24558
24559         * users.txt: New file.
24560
24561 2006-08-11  Bruno Haible  <bruno@clisp.org>
24562
24563         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
24564         before <wchar.h>. Needed for OSF/1 and BSD/OS.
24565
24566 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
24567
24568         * modules/snprintf (Depends-on): Remove minmax.
24569         (Maintainer): Add self and Bruno.
24570
24571 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
24572
24573         * lib/.cppi-disable: Add snprintf.h, socket_.h.
24574         * lib/snprintf.c: Include <errno.h> and <limits.h>.
24575         (EOVERFLOW): Define if the system does not.
24576         Do not include "minmax.h"; it wasn't used.
24577         (snprintf): Don't assume size_t promotes to an unsigned type.
24578         Fix bug when generated string was too long for the buffer: the
24579         buffer's contents are supposed to be the initial prefix of the
24580         output.  Don't assume vasnprintf returns EOVERFLOW if the size
24581         exceeds INT_MAX; do the check ourselves.
24582
24583         Import the following changes from libc:
24584
24585         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
24586
24587         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
24588         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
24589         set wc to the byte which couldn't be converted.
24590         (re_string_reconstruct): Don't clear valid_raw_len before calling
24591         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
24592         tip_context using re_string_context_at.
24593
24594         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
24595
24596         * lib/posix/regex.h: g++ still cannot handled [restrict].
24597
24598         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
24599
24600         * lib/posix/regex.h: Remove special handling for VMS.
24601
24602 2006-08-10  Jim Meyering  <jim@meyering.net>
24603
24604         * modules/same-inode: New module.
24605         * modules/dev-ino: New module.
24606         * modules/cycle-check: Depend on these modules, rather than simply
24607         including their .h files.
24608         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
24609         required via m4/cycle-check.m4.
24610         * modules/same: Depend on new same-inode module, rather than
24611         including same-inode.h.
24612         * modules/chdir-safer: New file.
24613
24614         * modules/chown (Depends-on): Add stat-macros.
24615
24616 2006-08-10  Jim Meyering  <jim@meyering.net>
24617
24618         * m4/cycle-check.m4: New file.
24619         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
24620         * m4/dev-ino.m4, m4/same-inode.m4: New files.
24621
24622 2006-08-10  Eric Blake  <ebb9@byu.net>
24623
24624         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
24625         in from original proposal.
24626
24627 2006-08-10  Eric Blake  <ebb9@byu.net>
24628         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
24629
24630         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
24631         namespace.
24632
24633 2006-08-10  Bruno Haible  <bruno@clisp.org>
24634
24635         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
24636         as well.
24637
24638 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24639
24640         Sync from coreutils.
24641
24642         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
24643
24644         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
24645         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
24646
24647 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24648
24649         * modules/restrict: Remove; no longer needed now that we assume
24650         Autoconf 2.59 or later.
24651         * MODULES.html.sh: Remove 'restrict'.
24652         * modules/argp (Depends-on): Remove 'restrict'.
24653         * modules/base64 (Depends-on): Likewise.
24654         * modules/gc (Depends-on): Likewise.
24655         * modules/getaddrinfo (Depends-on): Likewise.
24656         * modules/glob (Depends-on): Likewise.
24657         * modules/inet_ntop (Depends-on): Likewise.
24658         * modules/inet_pton (Depends-on): Likewise.
24659         * modules/memxor (Depends-on): Likewise.
24660         * modules/regex (Depends-on): Likewise.
24661         * modules/strtok_r (Depends-on): Likewise.
24662         * modules/time_r (Depends-on): Likewise.
24663
24664 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24665
24666         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
24667         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
24668         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
24669         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
24670         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
24671         * m4/memxor.m4 (gl_MEMXOR): Likewise.
24672         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
24673         gl_C_RESTRICT replaced by AC_C_RESTRICT.
24674
24675         Merge from coreutils.
24676         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
24677         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
24678         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
24679         * m4/time_r.m4 (gl_TIME_R): Likewise.
24680
24681 2006-08-09  Karl Berry  <karl@gnu.org>
24682
24683         * config/srclist.txt: no more gettext-tools, per Bruno.
24684
24685 2006-08-08  Eric Blake  <ebb9@byu.net>
24686
24687         * modules/verror: New module.
24688         * MODULES.html.sh: Document it.
24689
24690 2006-08-08  Eric Blake  <ebb9@byu.net>
24691
24692         * lib/verror.h, lib/verror.c: New files.
24693
24694 2006-08-08  Eric Blake  <ebb9@byu.net>
24695
24696         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
24697         verror_at_line output complies with GNU Coding Standards even when
24698         file is NULL.
24699
24700 2006-08-07  Bruno Haible  <bruno@clisp.org>
24701
24702         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
24703         versions of AIX.
24704         Reported by Ralf Wildenhues.
24705
24706 2006-08-07  Bruno Haible  <bruno@clisp.org>
24707
24708         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
24709         in an AC_DEFUN. Needed so that the autoconf snippets can use
24710         AC_REQUIRE.
24711
24712 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24713
24714         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
24715         Initialize pkgdata_DATA.
24716         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
24717         overriding it.
24718
24719 2006-08-06  Eric Blake  <ebb9@byu.net>
24720
24721         * lib/error.h: Fold in some upstream changes from glibc.
24722         * lib/error.c: Likewise.
24723
24724 2006-08-04  Bruno Haible  <bruno@clisp.org>
24725
24726         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
24727         Make the mostlyclean-local rule depend on mostlyclean-generic.
24728         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
24729
24730 2006-07-31  Bruno Haible  <bruno@clisp.org>
24731
24732         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
24733         <stdlib.h>, <string.h>.
24734
24735 2006-07-30  Bruno Haible  <bruno@clisp.org>
24736
24737         * modules/readlink (License): Change to LGPL.
24738
24739 2006-07-30  Bruno Haible  <bruno@clisp.org>
24740
24741         * modules/javaversion (Makefile.am): Distribute javaversion.java and
24742         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
24743         set PKGDATADIR to point to it.
24744
24745 2006-07-30  Bruno Haible  <bruno@clisp.org>
24746
24747         * modules/csharpexec (configure.ac): Comment out macro invocation.
24748         * modules/javaexec (configure.ac): Likewise.
24749         * modules/javacomp-script (configure.ac): Likewise.
24750
24751         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
24752
24753 2006-07-30  Bruno Haible  <bruno@clisp.org>
24754
24755         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
24756         linked-list.
24757
24758 2006-07-30  Bruno Haible  <bruno@clisp.org>
24759
24760         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
24761
24762 2006-07-30  Bruno Haible  <bruno@clisp.org>
24763
24764         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
24765         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
24766         get removed.
24767
24768 2006-07-29  Bruno Haible  <bruno@clisp.org>
24769
24770         Make it possible for gnulib-tool to work with locally modified or
24771         augmented gnulib repositories.
24772         * gnulib-tool (func_usage): Document --local-dir option.
24773         (local_gnulib_dir): New variable.
24774         Handle --local-dir option.
24775         (func_lookup_file): New function.
24776         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
24777         (func_get_description, func_get_filelist, func_get_description,
24778         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
24779         func_get_automake_snippet, func_get_include_directive,
24780         func_get_license, func_get_maintainer): Use func_lookup_file.
24781         (func_import, func_create_testdir): Use func_lookup_file.
24782
24783 2006-07-29  Bruno Haible  <bruno@clisp.org>
24784
24785         * modules/setenv (Depends-on): Add unistd.
24786
24787 2006-07-29  Bruno Haible  <bruno@clisp.org>
24788
24789         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
24790
24791 2006-07-29  Bruno Haible  <bruno@clisp.org>
24792
24793         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
24794
24795 2006-07-29  Bruno Haible  <bruno@clisp.org>
24796
24797         * gnulib-tool (import, update): If there is no Makefile.am, look at
24798         aclocal.m4, instead of bailing out.
24799
24800 2006-07-29  Bruno Haible  <bruno@clisp.org>
24801
24802         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
24803         Categorize the options by when they are useful.
24804
24805 2006-07-29  Bruno Haible  <bruno@clisp.org>
24806
24807         * gnulib-tool (func_usage): Document option --no-libtool.
24808         Handle option --no-libtool.
24809         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
24810         for changed semantics of $libtool variable.
24811         (func_import): Likewise. If libtool is not used, show this through
24812         an option --no-libtool.
24813         (func_create_testdir): Update.
24814
24815 2006-07-29  Bruno Haible  <bruno@clisp.org>
24816
24817         * gnulib-tool (func_import): Extend error message about missing
24818         --doc-base.
24819
24820 2006-07-29  Bruno Haible  <bruno@clisp.org>
24821
24822         * gnulib-tool (func_import): Don't create the $docbase directory if
24823         there is no file to store there.
24824
24825 2006-07-29  Bruno Haible  <bruno@clisp.org>
24826
24827         * gnulib-tool (autoconf_minversion): If a --dir option is given and
24828         relevant, look for configure.ac there, not in the current directory.
24829         Also use a simple search for AC_PREREQ, not "autoconf --trace".
24830
24831 2006-07-29  Bruno Haible  <bruno@clisp.org>
24832
24833         * gnulib-tool (SORT): New variable.
24834         (func_usage): Undocument --assume-autoconf option.
24835         Remove --assume-autoconf option handling.
24836         (autoconf_minversion): Determine from the contents of configure.ac.
24837         (func_import): Remove autoconf_minversion handling.
24838         Suggested by Eric Blake.
24839
24840 2006-07-29  Bruno Haible  <bruno@clisp.org>
24841
24842         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
24843
24844 2006-07-29  Bruno Haible  <bruno@clisp.org>
24845
24846         * config/srclist.txt (*setenv.[ch]): Remove rules.
24847
24848 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24849
24850         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
24851
24852 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24853
24854         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
24855         arpa/inet.h.
24856
24857 2006-07-28  Simon Josefsson  <jas@extundo.com>
24858
24859         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
24860         * modules/inet_pton (Depends-on): Likewise.
24861
24862 2006-07-28  Simon Josefsson  <jas@extundo.com>
24863
24864         * m4/netinet_in_h.m4: New file.
24865
24866 2006-07-28  Simon Josefsson  <jas@extundo.com>
24867
24868         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
24869         #include's.
24870
24871 2006-07-28  Simon Josefsson  <jas@extundo.com>
24872
24873         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
24874         #include's.
24875
24876 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
24877
24878         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
24879         setgid on directories only if they set these bits.
24880         * lib/modechange.h: Remove obsolete comment about masks.
24881
24882 2006-07-28  Eric Blake  <ebb9@byu.net>
24883
24884         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
24885         macro expansion.
24886
24887 2006-07-28  Bruno Haible  <bruno@clisp.org>
24888
24889         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
24890
24891 2006-07-28  Bruno Haible  <bruno@clisp.org>
24892
24893         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
24894
24895 2006-07-28  Bruno Haible  <bruno@clisp.org>
24896
24897         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
24898         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
24899         Define fallbacks.
24900         Avoids link error on FreeBSD 4.x.
24901         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
24902
24903         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
24904         encoding.
24905         * lib/mbswidth.c (iswcntrl): Likewise.
24906
24907 2006-07-27  Bruno Haible  <bruno@clisp.org>
24908
24909         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
24910         test.
24911
24912 2006-07-27  Bruno Haible  <bruno@clisp.org>
24913
24914         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
24915         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
24916         defined.
24917
24918 2006-07-26  Eric Blake  <ebb9@byu.net>
24919
24920         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
24921
24922 2006-07-26  Eric Blake  <ebb9@byu.net>
24923
24924         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
24925         like mingw that lack mkstemp.
24926         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
24927         avoid compilation warning on mingw.
24928
24929 2006-07-26  Bruno Haible  <bruno@clisp.org>
24930
24931         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
24932         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
24933         INT_FAST*_MIN, INTPTR_MIN.
24934
24935 2006-07-25  Bruno Haible  <bruno@clisp.org>
24936
24937         * modules/version-etc (Depends-on): Add stdarg.
24938
24939 2006-07-25  Bruno Haible  <bruno@clisp.org>
24940
24941         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
24942         complex commands.
24943
24944 2006-07-25  Bruno Haible  <bruno@clisp.org>
24945
24946         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
24947         defined in <stdarg.h> or config.h.
24948
24949 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
24950
24951         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
24952         (gl_STDIO_SAFER): Remove.
24953
24954 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
24955
24956         * MODULES.html.sh (File stream based Input/Output):
24957         Add fopen-safer, tmpfile-safer; remove stdio-safer.
24958         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
24959         * modules/fopen-safer, modules/tmpfile-safer: New files.
24960         * modules/stdio-safer: Remove.
24961
24962 2006-07-24  Bruno Haible  <bruno@clisp.org>
24963
24964         * modules/tmpdir: New file.
24965         * MODULES.html.sh (File system functions): Add it.
24966
24967 2006-07-24  Bruno Haible  <bruno@clisp.org>
24968
24969         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
24970         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
24971
24972 2006-07-24  Bruno Haible  <bruno@clisp.org>
24973
24974         * modules/clean-temp: New file.
24975
24976 2006-07-24  Bruno Haible  <bruno@clisp.org>
24977
24978         * m4/tmpdir.m4: New file, from GNU gettext.
24979
24980 2006-07-24  Bruno Haible  <bruno@clisp.org>
24981
24982         * lib/tmpdir.h: New file, from GNU gettext.
24983         * lib/tmpdir.c: New file, from GNU gettext.
24984
24985 2006-07-24  Bruno Haible  <bruno@clisp.org>
24986
24987         * lib/clean-temp.h: New file, from GNU gettext.
24988         * lib/clean-temp.c: New file, from GNU gettext.
24989
24990 2006-07-23  Eric Blake  <ebb9@byu.net>
24991
24992         * modules/stdio-safer (Files): Add tmpfile-safer.c.
24993         (Depends-on): Add binary-io.
24994
24995 2006-07-23  Eric Blake  <ebb9@byu.net>
24996
24997         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
24998
24999 2006-07-23  Eric Blake  <ebb9@byu.net>
25000
25001         * lib/tmpfile-safer.c: New file.
25002         * lib/stdio-safer.h (fopen_safer): Add prototype.
25003         * lib/stdio--.h (tmpfile): Make safer.
25004
25005 2006-07-23  Bruno Haible  <bruno@clisp.org>
25006
25007         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
25008         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
25009         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
25010         gl_linked_remove_at): Use it.
25011
25012 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
25013         and Simon Josefsson <jas@extundo.com>
25014
25015         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
25016
25017         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
25018
25019 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
25020
25021         * modules/close-stream: New file.
25022         * modules/closeout (Description): Make it clear that it exits
25023         with a diagnostic on error.
25024         (Depends-on): Add close-stream.  Remove fpending, stdbool.
25025         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
25026
25027 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
25028
25029         * m4/close-stream.m4: New file.
25030
25031 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
25032
25033         * lib/close-stream.c, lib/close-stream.h: New files.
25034
25035 2006-07-22  Bruno Haible  <bruno@clisp.org>
25036
25037         Merge from GNU gettext 0.15.
25038
25039         2006-05-01  Bruno Haible  <bruno@clisp.org>
25040
25041                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
25042
25043         2006-07-22  Bruno Haible  <bruno@clisp.org>
25044
25045                 * modules/javaversion: New file.
25046                 * MODULES.html.sh (Java): Add javaversion.
25047
25048         2006-03-12  Bruno Haible  <bruno@clisp.org>
25049
25050                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
25051
25052         2005-12-04  Bruno Haible  <bruno@clisp.org>
25053
25054                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
25055                 (untested).
25056
25057         2006-06-21  Bruno Haible  <bruno@clisp.org>
25058
25059                 Avoid warnings from recent versions of mcs.
25060                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
25061                 -o, -L, -r any more. Use options documented since mcs-1.0
25062                 instead. Similarly for -g.
25063
25064         2005-12-04  Bruno Haible  <bruno@clisp.org>
25065
25066                 * build-aux/csharpcomp.sh.in: Suffix for resources is
25067                 .resources, not .resource.
25068
25069         2005-07-09  Bruno Haible  <bruno@clisp.org>
25070
25071                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
25072                 add a .dll suffix.
25073                 Reported by Mark Junker <mjscod@gmx.de>.
25074
25075         2006-07-22  Bruno Haible  <bruno@clisp.org>
25076
25077                 * modules/gettext: Upgrade to gettext-0.15.
25078                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
25079                 m4/visibility.m4.
25080                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
25081
25082 2006-07-22  Bruno Haible  <bruno@clisp.org>
25083
25084         Merge from GNU gettext 0.15.
25085
25086         2006-03-25  Bruno Haible  <bruno@clisp.org>
25087
25088                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
25089
25090         2006-07-21  Bruno Haible  <bruno@clisp.org>
25091
25092                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
25093                 "1.1".
25094
25095         2006-05-09  Bruno Haible  <bruno@clisp.org>
25096
25097                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
25098                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
25099                 for the conftestver execution.
25100
25101         2006-05-01  Bruno Haible  <bruno@clisp.org>
25102
25103                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
25104                 optional target-version argument. Verify that the compiler
25105                 groks source of the specified source-version, or add -source
25106                 option as necessary. Verify that the compiler produces
25107                 bytecode in the specified target-version, or add -target and
25108                 -source options as necessary. Make the result of the test
25109                 available as variable CONF_JAVAC. Also log error output in
25110                 config.log.
25111
25112         2006-03-11  Bruno Haible  <bruno@clisp.org>
25113
25114                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
25115
25116         2006-05-09  Bruno Haible  <bruno@clisp.org>
25117
25118                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
25119                 CLASSPATH_SEPARATOR to a semicolon.
25120
25121         2006-03-12  Bruno Haible  <bruno@clisp.org>
25122
25123                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
25124                 available as variable CONF_JAVA, for subsequent autoconf
25125                 tests. Also log error output in config.log.
25126
25127         2006-07-19  Bruno Haible  <bruno@clisp.org>
25128
25129                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
25130                 that getline works on glibc2 systems. Needed to avoid trouble
25131                 in relocatable.c.
25132                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
25133
25134         2005-12-04  Bruno Haible  <bruno@clisp.org>
25135
25136                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
25137                 launcher (untested).
25138
25139         2005-12-04  Bruno Haible  <bruno@clisp.org>
25140
25141                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
25142
25143         2006-07-22  Bruno Haible  <bruno@clisp.org>
25144
25145                 * gettext.m4: Update from GNU gettext-0.15.
25146                 * nls.m4: Likewise.
25147                 * po.m4: Likewise.
25148                 * inttypes-pri.m4: Likewise.
25149                 * inttypes-h.m4: Renamed from inttypes.m4.
25150                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
25151
25152 2006-07-22  Bruno Haible  <bruno@clisp.org>
25153
25154         Merge from GNU gettext 0.15.
25155
25156         2005-07-05  Bruno Haible  <bruno@clisp.org>
25157
25158                 * printf-args.c (printf_fetchargs): Work around broken
25159                 definition of wint_t on mingw.
25160
25161         2005-02-12  Bruno Haible  <bruno@clisp.org>
25162
25163                 * xallocsa.h: Add extern "C" for C++.
25164
25165         2006-05-17  Bruno Haible  <bruno@clisp.org>
25166
25167                 Cygwin portability.
25168                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
25169
25170         2006-04-30  Bruno Haible  <bruno@clisp.org>
25171
25172                 * progreloc.c: Include <mach-o/dyld.h> if available.
25173                 (find_executable): Use _NSGetExecutablePath when possible.
25174
25175         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
25176
25177                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
25178                 function.
25179
25180         2005-12-29  Bruno Haible  <bruno@clisp.org>
25181
25182                 * progreloc.c (set_program_name_and_installdir): Fix
25183                 compilation error.
25184
25185         2005-12-04  Bruno Haible  <bruno@clisp.org>
25186
25187                 Cygwin portability.
25188                 * progreloc.c: Include <windows.h> also on Cygwin.
25189                 (find_executable): Add support for Cygwin.
25190                 (set_program_name_and_installdir): Handle also platforms with
25191                 nonempty EXEEXT.
25192
25193         2006-07-11  Bruno Haible  <bruno@clisp.org>
25194
25195                 * javacomp.c: Fix a comment.
25196                 Reported by Jim Meyering.
25197
25198         2006-04-30  Bruno Haible  <bruno@clisp.org>
25199
25200                 * javacomp.h (compile_java_class): Add source_version,
25201                 target_version arguments.
25202                 * javacomp.c: Rewritten to choose only a compiler that
25203                 respects the specified source_version and target_version.
25204
25205         2006-06-27  Bruno Haible  <bruno@clisp.org>
25206
25207                 Assume correct S_ISDIR macro.
25208                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
25209
25210         2006-07-22  Bruno Haible  <bruno@clisp.org>
25211
25212                 * javaversion.h: New file, from GNU gettext.
25213                 * javaversion.c: New file, from GNU gettext.
25214                 * javaversion.java: New file, from GNU gettext.
25215                 * javaversion.class: New file, from GNU gettext.
25216
25217         2006-05-17  Bruno Haible  <bruno@clisp.org>
25218
25219                 Cygwin portability.
25220                 * javaexec.c (execute_java_class): Test for jview program
25221                 also on Cygwin.
25222
25223         2006-04-09  Bruno Haible  <bruno@clisp.org>
25224
25225                 * fatal-signal.c: Don't include string.h.
25226                 (at_fatal_signal): Use a copying loop instead of memcpy.
25227
25228         2005-12-04  Bruno Haible  <bruno@clisp.org>
25229
25230                 * csharpexec.c: Add support for 'clix' launcher (untested).
25231                 (execute_csharp_using_sscli): New function.
25232                 (execute_csharp_program): Call it.
25233
25234         2006-06-21  Bruno Haible  <bruno@clisp.org>
25235
25236                 Avoid warnings from recent versions of mcs.
25237                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
25238                 -o, -L, -r any more. Use options documented since mcs-1.0
25239                 instead. Similarly for -g.
25240
25241         2005-07-09  Bruno Haible  <bruno@clisp.org>
25242
25243                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
25244                 add a .dll suffix.
25245                 Reported by Mark Junker <mjscod@gmx.de>.
25246
25247         2006-06-17  Bruno Haible  <bruno@clisp.org>
25248
25249                 * config.charset: Update for NetBSD 3.0.
25250
25251         2006-05-17  Bruno Haible  <bruno@clisp.org>
25252
25253                 Cygwin portability.
25254                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
25255
25256         2006-05-16  Bruno Haible  <bruno@clisp.org>
25257
25258                 * localcharset.c [CYGWIN]: Include <windows.h>.
25259                 (get_charset_aliases): For Cygwin, return the same CPxxx
25260                 aliases list as under WIN32.
25261                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
25262                 the environment variables. Fall back to GetACP().
25263
25264         2006-04-05  Bruno Haible  <bruno@clisp.org>
25265
25266                 * config.charset: Update Juan Manuel Guerrero's address.
25267
25268         2005-02-12  Bruno Haible  <bruno@clisp.org>
25269
25270                 * allocsa.h: Add extern "C" for C++.
25271
25272         2005-02-10  Bruno Haible  <bruno@clisp.org>
25273
25274                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
25275                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
25276
25277         2006-07-22  Bruno Haible  <bruno@clisp.org>
25278
25279                 * gettext.h: Update to GNU gettext-0.15.
25280
25281 2006-07-22  Bruno Haible  <bruno@clisp.org>
25282
25283         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
25284         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
25285         lib-prefix.m4, longdouble.m4, ssize_t.m4.
25286
25287 2006-07-21  Eric Blake  <ebb9@byu.net>
25288
25289         * modules/stdlib-safer: New file.
25290         * MODULES.html.sh (File stream based Input/Output): Add
25291         stdlib-safer.
25292
25293 2006-07-21  Eric Blake  <ebb9@byu.net>
25294
25295         * lib/stdlib-safer.h: New file from coreutils, required by
25296         stdlib--.h.
25297
25298 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
25299
25300         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
25301
25302 2006-07-20  Bruno Haible  <bruno@clisp.org>
25303
25304         * gnulib-tool: Recognize new option --assume-autoconf.
25305         (autoconf_minversion): New variable.
25306         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
25307
25308 2006-07-20  Bruno Haible  <bruno@clisp.org>
25309
25310         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
25311
25312 2006-07-19  Derek R. Price  <derek@ximbiot.com>
25313
25314         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
25315         Reindent and repaginate.
25316
25317 2006-07-19  Derek Price  <derek@ximbiot.com>
25318
25319         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
25320         Correct grammar.
25321
25322 2006-07-17  Bruno Haible  <bruno@clisp.org>
25323
25324         * modules/list: New file.
25325         * modules/array-list: New file.
25326         * modules/carray-list, modules/carray-list-tests: New files.
25327         * modules/linked-list, modules/linked-list-tests: New files.
25328         * modules/avltree-list, modules/avltree-list-tests: New files.
25329         * modules/rbtree-list, modules/rbtree-list-tests: New files.
25330         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
25331         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
25332         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
25333         * modules/oset: New file.
25334         * modules/array-oset: New file.
25335         * modules/avltree-oset, modules/avltree-oset-tests: New files.
25336         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
25337         * tests/test-carray_list.c: New file.
25338         * tests/test-linked_list.c: New file.
25339         * tests/test-avltree_list.c: New file.
25340         * tests/test-rbtree_list.c: New file.
25341         * tests/test-linkedhash_list.c: New file.
25342         * tests/test-avltreehash_list.c: New file.
25343         * tests/test-rbtreehash_list.c: New file.
25344         * tests/test-avltree_oset.c: New file.
25345         * tests/test-rbtree_oset.c: New file.
25346         * MODULES.html.sh (Container data structures): New section.
25347
25348 2006-07-17  Bruno Haible  <bruno@clisp.org>
25349
25350         * m4/gl_list.m4: New file.
25351
25352 2006-07-17  Bruno Haible  <bruno@clisp.org>
25353
25354         * lib/gl_list.h: New file.
25355         * lib/gl_list.c: New file.
25356         * lib/gl_array_list.h: New file.
25357         * lib/gl_array_list.c: New file.
25358         * lib/gl_carray_list.h: New file.
25359         * lib/gl_carray_list.c: New file.
25360         * lib/gl_linked_list.h: New file.
25361         * lib/gl_linked_list.c: New file.
25362         * lib/gl_anylinked_list1.h: New file.
25363         * lib/gl_anylinked_list2.h: New file.
25364         * lib/gl_avltree_list.h: New file.
25365         * lib/gl_avltree_list.c: New file.
25366         * lib/gl_anyavltree_list1.h: New file.
25367         * lib/gl_anyavltree_list2.h: New file.
25368         * lib/gl_rbtree_list.h: New file.
25369         * lib/gl_rbtree_list.c: New file.
25370         * lib/gl_anyrbtree_list1.h: New file.
25371         * lib/gl_anyrbtree_list2.h: New file.
25372         * lib/gl_anytree_list1.h: New file.
25373         * lib/gl_anytree_list2.h: New file.
25374         * lib/gl_linkedhash_list.h: New file.
25375         * lib/gl_linkedhash_list.c: New file.
25376         * lib/gl_anyhash_list1.h: New file.
25377         * lib/gl_anyhash_list2.h: New file.
25378         * lib/gl_avltreehash_list.h: New file.
25379         * lib/gl_avltreehash_list.c: New file.
25380         * lib/gl_rbtreehash_list.h: New file.
25381         * lib/gl_rbtreehash_list.c: New file.
25382         * lib/gl_anytreehash_list1.h: New file.
25383         * lib/gl_anytreehash_list2.h: New file.
25384
25385         * lib/gl_oset.h: New file.
25386         * lib/gl_oset.c: New file.
25387         * lib/gl_array_oset.h: New file.
25388         * lib/gl_array_oset.c: New file.
25389         * lib/gl_avltree_oset.h: New file.
25390         * lib/gl_avltree_oset.c: New file.
25391         * lib/gl_rbtree_oset.h: New file.
25392         * lib/gl_rbtree_oset.c: New file.
25393         * lib/gl_anytree_oset.h: New file.
25394
25395 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
25396
25397         * m4/mkancesdirs.m4: New file.
25398         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
25399         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
25400         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
25401         it.
25402
25403 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
25404
25405         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
25406         * lib/mkancesdirs.h: New files.
25407         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
25408         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
25409         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
25410         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
25411         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
25412         callers changed.  Revamp internals significantly, by not
25413         attempting to create directories that are temporarily more
25414         permissive than the final results.  Do not attempt to use
25415         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
25416         This removes some race conditions, fixes some bugs, and simplifies
25417         things.  Use new dirchownmod function to do owner and mode changes.
25418         * lib/mkdir-p.h: Likewise.
25419         * lib/modechange.c (octal_to_mode): New function.
25420         (struct mode_change): New member mentioned.
25421         (make_node_op_equals): New arg mentioned.  All callers changed.
25422         (mode_compile): Keep track of which mode bits the user has explicitly
25423         mentioned.
25424         (mode_adjust): New arg DIR, so that we implement the X op correctly.
25425         New arg PMODE_BITS, to keep track of which mode bits the user
25426         mentioned; it treats S_ISUID and S_ISGID speciall.
25427         All callers changed.
25428         * lib/modechange.h: Likewise.
25429
25430 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
25431
25432         * MODULES.html.sh: Add mkancestors.
25433         * modules/mkancesdirs: New module.
25434         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
25435         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
25436         The chdir-safer and afs files are now orphans; I'll remove them
25437         unless someone speaks up.
25438         Add lib/dirchownmod.c, lib/dirchownmod.h.
25439         (Depends-on): Remove alloca, chown, save-cwd, dirname.
25440         Add lchown, mkancesdirs.
25441         (Maintainer): Add self.
25442
25443 2006-07-15  Karl Berry  <karl@gnu.org>
25444
25445         * gnulib-tool: help message wording/arrangement.
25446
25447 2006-07-14  Simon Josefsson  <jas@extundo.com>
25448
25449         * doc/gnulib.texi (Libtool and Windows): New section.
25450
25451 2006-07-12  Simon Josefsson  <jas@extundo.com>
25452
25453         * modules/gendocs (License): Fix license, approved by Karl.
25454
25455 2006-07-12  Eric Blake  <ebb9@byu.net>
25456
25457         * MODULES.html.sh: Add gendocs.
25458
25459 2006-07-11  Eric Blake  <ebb9@byu.net>
25460
25461         * modules/fdl: New module, to install doc/fdl.texi.
25462         * MODULES.html.sh: Add new section for documentation modules.
25463         * gnulib-tool: Avoid space-tab.
25464         (--doc-base): New option, to manage files from doc.
25465
25466 2006-07-11  Eric Blake  <ebb9@byu.net>
25467
25468         * m4/absolute-header.m4: Fix comments to match recent change.
25469
25470 2006-07-11  Eric Blake  <ebb9@byu.net>
25471
25472         * gnulib-tool: List --doc-base before --tests-base.
25473
25474 2006-07-11  Derek R. Price  <derek@ximbiot.com>
25475
25476         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
25477
25478 2006-07-11  Bruno Haible  <bruno@clisp.org>
25479
25480         * README: Mention where to put documentation.
25481
25482 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25483
25484         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
25485
25486 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
25487
25488         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
25489         to stdint.m4.
25490
25491 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
25492
25493         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
25494         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
25495         "no/such/file/stdint.h" when there is no such file, so that
25496         the resulting C code can be parsed by dodgy compilers.
25497         Problems reported by Bob Proulx.
25498
25499 2006-07-10  Derek R. Price  <derek@ximbiot.com>
25500
25501         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
25502         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
25503         macros into the GNU _D_EXACT_NAMLEN.
25504         * lib/savedir.c:  Likewise.
25505         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
25506
25507 2006-07-10  Derek R. Price  <derek@ximbiot.com>
25508         and Paul Eggert  <eggert@cs.ucla.edu>
25509
25510         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
25511         * m4/savedir.m4:
25512         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
25513         macros into the GNU _D_EXACT_NAMLEN.
25514
25515 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
25516
25517         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
25518         around the absolute name, to work around a problem with the HP-UX
25519         11.23 native C compiler, reported by Bob Proulx.
25520
25521 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
25522
25523         * doc/maintain.texi, make-stds.texi: Sync from
25524         <http://savannah.gnu.org/projects/gnustandards>.
25525
25526 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
25527
25528         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
25529
25530 2006-07-09  Jim Meyering  <jim@meyering.net>
25531
25532         * m4/glob.m4: Remove a doubled word in a comment.
25533
25534 2006-07-09  Jim Meyering  <jim@meyering.net>
25535
25536         * lib/argp-pv.c: Remove a doubled word in a comment.
25537         * lib/check-version.c (check_version): Likewise.
25538         * lib/javacomp.c (compile_java_class): Likewise.
25539
25540 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
25541
25542         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
25543         for the benefit of people using Autoconf 2.60.  If you want to
25544         support older Autoconf versions you can copy m4/onceonly_2_57.m4
25545         (or m4/onceonly.m4, if pre-2.57) manually.
25546
25547 2006-07-08  Jim Meyering  <jim@meyering.net>
25548
25549         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
25550         comment.
25551         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
25552         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
25553         comment.
25554
25555 2006-07-08  Jim Meyering  <jim@meyering.net>
25556
25557         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
25558
25559 2006-07-07  Simon Josefsson  <jas@extundo.com>
25560
25561         * tests/test-crc.c: Change expected crc value, the test vector
25562         were probably computed using the old broken crc.c?
25563
25564 2006-07-06  Simon Josefsson  <jas@extundo.com>
25565
25566         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
25567         now the canonical place for the M4 file).
25568
25569         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
25570         from the sys_socket dependency now.
25571
25572         * modules/inet_pton (Files): Ditto.
25573
25574         * modules/inet_ntop (Files): Ditto.
25575
25576 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
25577
25578         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
25579         not gl_PREREQ_GETUSERSHELL.
25580
25581 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25582
25583         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
25584         with only one argument, for Autoconf 2.60.
25585         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
25586         expand to nothing, so add a shell command to avoid syntax error.
25587         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
25588
25589 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25590
25591         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
25592
25593 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
25594
25595         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
25596         no longer needed.  Check for isblank decl.
25597         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
25598         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
25599         of existence.
25600
25601 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
25602
25603         * lib/getloadavg.c: Use __VMS, not VMS.
25604         * lib/getopt.c: Likewise.
25605         * lib/getpagesize.h: Likewise.
25606         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
25607         and probably does not work.
25608
25609 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
25610
25611         * lib/.cppi-disable: Add wcwidth.
25612         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
25613         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
25614         (ISGRAPH): Remove.  All uses changed to isgraph.
25615         (FOLD) [!defined _LIBC]: Remove special case.
25616         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
25617         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
25618         HAVE_ISBLANK.
25619         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
25620         case.
25621
25622 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
25623
25624         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
25625         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
25626         brackets.  Other minor changes to suppress some compiler
25627         warnings.
25628
25629 2006-07-06  Derek R. Price  <derek@ximbiot.com>
25630         and Paul Eggert  <eggert@cs.ucla.edu>
25631
25632         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
25633         of invoking obsolescent AC_HEADER_DIRENT macro.
25634         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
25635         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
25636         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
25637         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
25638         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
25639         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
25640         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
25641         * m4/readdir.m4: Remove; no longer needed.
25642
25643 2006-07-06  Derek R. Price  <derek@ximbiot.com>
25644         and Paul Eggert  <eggert@cs.ucla.edu>
25645
25646         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
25647         Don't worry about this obsolete case any more.
25648         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
25649         directories.
25650         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
25651         worry about this obsolete case any more.
25652         * lib/fts.c: Likewise.
25653         * lib/getcwd.c: Likewise.
25654         * lib/glob.h: Likewise.
25655         * lib/savedir.c: Likewise.
25656
25657 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
25658
25659         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
25660         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
25661         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
25662         needed.
25663         All uses removed.
25664         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
25665         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
25666         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
25667         needed.
25668         * m4/getdate.m4 (gl_GETDATE): Likewise.
25669         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
25670         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
25671         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
25672         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
25673         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
25674         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
25675         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
25676         needed.
25677
25678 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
25679
25680         * lib/memcasecmp.c: Include <limits.h>.
25681         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
25682         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
25683         Don't assume isdigit succeeds only on '0' through '9'.
25684
25685 2006-07-05  Eric Blake  <ebb9@byu.net>
25686
25687         * modules/getaddrinfo (Depends-on): Add snprintf.
25688
25689 2006-07-05  Eric Blake  <ebb9@byu.net>
25690
25691         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
25692         to avoid 'header present but could not be compiled' on cygwin.
25693
25694 2006-07-05  Eric Blake  <ebb9@byu.net>
25695
25696         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
25697         missing from netdb.h.
25698         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
25699
25700 2006-07-05  Derek R. Price  <derek@ximbiot.com>
25701
25702         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
25703         no longer needed.
25704         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
25705         * m4/getdate.m4 (gl_GETDATE): Likewise.
25706         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
25707         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
25708         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
25709         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
25710         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
25711
25712 2006-07-05  Derek R. Price  <derek@ximbiot.com>
25713
25714         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
25715         All uses of is_space replaced by isspace.
25716         * lib/exit.h: Don't talk about STDC_HEADERS.
25717         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
25718         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
25719         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
25720         replaced by isprint etc.
25721         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
25722         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
25723         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
25724         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
25725         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
25726         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
25727
25728 2006-07-05  Bruno Haible  <bruno@clisp.org>
25729
25730         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
25731         the function exists, before testing against AIX.
25732         Reported by Martin Lambers <marlam@marlam.de>.
25733
25734 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
25735
25736         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
25737         From Mark D. Baushke.
25738
25739 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
25740
25741         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
25742         to the absolute name, not just one, to bypass Sun C 5.8's
25743         "warning: #include of /usr/include/... may be non-portable".
25744
25745 2006-07-04  Eric Blake  <ebb9@byu.net>
25746
25747         * modules/dirname-tests: New test module.
25748         * tests/test-dirname.c: New file, replacing dirname.c
25749         TEST_DIRNAME section that was recently deleted.
25750
25751 2006-07-04  Bruno Haible  <bruno@clisp.org>
25752
25753         Assume ANSI C header files and <ctype.h> functions.
25754         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
25755         (mbsnwidth): Use isprint, iscntrl instead.
25756
25757 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
25758
25759         Merge from coreutils.
25760         * MODULES.html.sh: Add xstrtold.
25761         * modules/xstrtold: New file.
25762         * modules/cycle-check (Files): Add lib/same-inode.h.
25763         * modules/dirname (Files): Add m4/double-slash-root.m4.
25764         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
25765         * modules/mkdir-p (Files): Add lib/same-inode.h.
25766         * modules/same (Files): Add lib/same-inode.h.
25767
25768 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
25769
25770         * m4/absolute-header.m4: Renamed from full-header-path.m4.
25771         This is to keep the terminology clean; POSIX talks about
25772         "absolute pathnames", not "full pathnames", but the GNU
25773         Coding Standards say to use "path" for something else;
25774         so use "absolute" to keep both sides happy.
25775         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
25776         Set gl_absolute_header, not gl_full_header_path.
25777         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
25778         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
25779         All uses changed.
25780
25781         Merge from coreutils.
25782
25783         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
25784
25785         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
25786         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
25787         want to require the building of c-strtod.o.
25788         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
25789         needs -lm directly.
25790         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
25791
25792         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
25793
25794         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
25795         --as-needed option if available.  Problem reported by Albert Chin in
25796         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
25797         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
25798         cc merely issues a bunch of annoying warnings for --as-needed
25799         (this problem was reported by Bob Proulx).  Also, try linking with
25800         -lm to detect a bug in binutils 2.16 (this problem was reported
25801         by Ralf Wildenhues).
25802
25803         2006-06-18  Jim Meyering  <jim@meyering.net>
25804
25805         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
25806         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
25807         macro.
25808         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
25809         also check for glibc-2.4's abort-inducing bug.
25810
25811         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
25812         Low-probability clean-up should be to use rmdir to get rid of
25813         the just-created directory, not unlink.
25814
25815         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
25816         configure fail, and request a bug report to inform us about it.
25817         Add a comment that, barring reports to the contrary, in 2007 we'll
25818         assume ftruncate is universally available.
25819
25820         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
25821
25822         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
25823
25824         2006-03-12  Jim Meyering  <jim@meyering.net>
25825
25826         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
25827         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
25828         * m4/same.m4 (gl_SAME): Likewise.
25829         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
25830
25831         2006-03-11  Eric Blake  <ebb9@byu.net>
25832
25833         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
25834         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
25835         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
25836         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
25837
25838 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
25839
25840         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
25841         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
25842         reported by Mark D. Baushke, one in
25843         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
25844
25845         Merge from coreutils.
25846
25847         * lib/.cppi-disable: Add stdint_.h.
25848         * lib/.cvsignore: Add stdint.h.
25849
25850         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
25851
25852         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
25853         both double and long double versions.
25854         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
25855         * lib/xstrtold.c: New file.
25856         * lib/xstrtod.h (xstrtold): New decl.
25857
25858         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
25859
25860         * lib/filemode.c (setst): Remove.
25861         (strmode): Rewrite to avoid setst.  This makes the code shorter,
25862         (arguably) clearer, and the generated code is a bit smaller on my
25863         Debian GNU/Linux stable x86 host.
25864
25865         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
25866
25867         * lib/filemode.c: Include "filemode.h" first, to test the interface.
25868         Assume that filemode.h includes sys/types.h and sys/stat.h.
25869         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
25870         (ftypelet): Reorder to put common cases first, for efficiency.
25871         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
25872         to do 'M'.
25873         (strmode): Renamed from mode_string, and now stores 12 bytes instead
25874         of 10, for compatibility with FreeBSD.  All callers changed.
25875         (filemodestring): Now stores 12 bytes instead of 10, and sets file
25876         types that can't be deduced solely from st_mode.  First arg is now a
25877         const pointer.
25878         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
25879         (strmode): Renamed from mode_string.
25880         (filemodestring): New decl.
25881         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
25882         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
25883         needed.
25884         (S_ISPORT, S_ISWHT): New macros, if not already defined.
25885
25886         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
25887
25888         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
25889         fsusage.h now does that.  Include fsusage.h first, to test interface.
25890         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
25891         at most one method (the old code could have generated decls that
25892         didn't conform to C89, not that this was ever exercised).
25893         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
25894
25895         2006-03-19  Jim Meyering  <jim@meyering.net>
25896
25897         Work even in a chroot where d_ino values for entries in "/"
25898         don't match the stat.st_ino values for the same names.
25899         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
25900         number, iterate through all entries again, using lstat instead.
25901         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
25902         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
25903
25904         * lib/getcwd.c (__getcwd): Clarify a comment.
25905         Use memcpy in place of a call to strcpy.
25906
25907         2006-03-12  Jim Meyering  <jim@meyering.net>
25908
25909         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
25910         matches that of the current directory (which we're about to chdir ".."
25911         out of), then save the dev-ino of the parent, instead.
25912
25913         * lib/same-inode.h (SAME_INODE): New file/macro.
25914         * lib/chdir-safer.c (SAME_INODE): Remove definition.
25915         Include "same-inode.h", instead.
25916         * lib/same.c: Likewise.
25917         * lib/cycle-check.h: Include "same-inode.h".
25918         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
25919         * lib/cycle-check.c (SAME_INODE): Remove definition.
25920         * lib/root-dev-ino.h: Include "same-inode.h".
25921
25922         2006-03-11  Eric Blake  <ebb9@byu.net>
25923
25924         * lib/same.c (same_name): s/base_name/last_component/
25925         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
25926         * lib/filenamecat.c (file_name_concat): Likewise.
25927
25928         2006-03-11  Eric Blake  <ebb9@byu.net>,
25929                     Paul Eggert  <eggert@cs.ucla.edu>
25930
25931         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
25932         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
25933         drive prefix.
25934         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
25935         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
25936         (last_component): New method.
25937         * lib/dirname.c (dir_len): Determine when drive letters need a
25938         subsequent slash.  Preserve // when it is special.
25939         (dir_name): Don't append dot when drive letter is absolute.
25940         [TEST_DIRNAME]: Move into a full-blown gnulib test.
25941         * lib/basename.c (base_name): New semantics - malloc the result.
25942         Preserve // when it is special.  Preserve relative files that look
25943         like drive letters.
25944         (base_len): Preserve // when it is special.
25945         (last_component): New method, similar to old base_name semantics.
25946         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
25947         base_name.  Strip redundant slashes from ///.
25948
25949 2006-07-03  Jim Meyering  <jim@meyering.net>
25950
25951         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
25952         macro is used before the first cycle_check call.
25953
25954 2006-07-03  Eric Blake  <ebb9@byu.net>
25955
25956         * modules/dirname (Depends-on): Add xstrndup.
25957
25958 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
25959
25960         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
25961         test cases, so that config.log is a bit easier to follow.
25962
25963 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
25964
25965         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
25966         both are 64 bits, since this seems to be the tradition, and this
25967         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
25968         we ever run into a host that prefers long long to long in this
25969         case, we'll need another configure-time test.  Problem reported by
25970         Jim Meyering.
25971
25972 2006-07-02  Eric Blake  <ebb9@byu.net>
25973
25974         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
25975
25976 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
25977
25978         * modules/inttypes (Depends-on): No longer depends on stdint.
25979         * modules/stdint (Description): Say more about assumptions.
25980         Say that the fast types might differ.  Say macros are used.
25981         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
25982         (Makefile.am): Revise list of substituted symbols to match
25983         new stdint.m4.
25984         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
25985         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
25986         * tests/test-stdint.c (verify_same_types)
25987         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
25988         the code conforms to C99/C89.
25989         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
25990         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
25991
25992 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
25993
25994         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
25995         but fix a bug, by requiring at least 64 bits.
25996         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
25997         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
25998         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
25999         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
26000
26001         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
26002         changes.  Make 2.59 a prerequisite.  Check and substitute for
26003         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
26004         inttypes.h.  Do not use special include files; just use the
26005         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
26006         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
26007         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
26008         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
26009         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
26010         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
26011         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
26012         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
26013         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
26014         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
26015         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
26016         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
26017         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
26018         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
26019         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
26020         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
26021         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
26022         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
26023         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
26024         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
26025         WINT_MAX.  Check for C99 conformance more strictly, by detecting
26026         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
26027         not check for things that C99 does not require, e.g., int8_t.  If
26028         a test isn't needed unless <stdint.h> isn't working, and is
26029         unlikely to be needed for any other reason, then don't do it
26030         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
26031         size_t, since we assume C89 freestanding at least.  Do not check
26032         for sig_atomic_t, wchar_t, or wint_t, since the code now does
26033         the right thing even if the types are not defined.  Instead use:
26034         (gl_STDINT_TYPE_PROPERTIES): New macro.
26035         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
26036         testing whether <sys/types.h> clashes, as Autoconf does this for
26037         us now.  All uses removed.
26038         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
26039         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
26040         (gl_CHECK_TYPE_SAME):
26041         Remove; no longer needed.
26042         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
26043         exists, since we'll return 0 anyway in that case.
26044         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
26045
26046 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
26047
26048         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
26049         possible collision with system files.
26050         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
26051         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
26052         WCHAR_MIN and WCHAR_MAX in this case.
26053         (<stddef.h>): Do not include; no longer needed.
26054         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
26055         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
26056         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
26057         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
26058         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
26059         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
26060         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
26061         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
26062         !defined(__c99))]: Include in this case too, since it's harmless
26063         now.
26064         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
26065         dangerous to do so.
26066         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
26067         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
26068         (_STDINT_MIN, _STDINT_MAX): New macros.
26069         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
26070         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
26071         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
26072         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
26073         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
26074         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
26075         macros, not typedefs; this simplifies things quite a bit.
26076         Use long int for all types narrower than int64_t.
26077         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
26078         Define in terms of long long int or int64_t or long int,
26079         not int64_t or int32_t.  This saves some compile-time testing.
26080         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
26081         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
26082         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
26083         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
26084         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
26085         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
26086         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
26087         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
26088         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
26089         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
26090         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
26091         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
26092         undef any previous version and define our own version, for
26093         simplicity and consistency with the new macros for types.
26094         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
26095         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
26096         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
26097         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
26098         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
26099         @WINT_T_SUFFIX@ to keep things simple here.
26100         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
26101         Simplify by assuming typical 8/16/32/64 host, since we're
26102         already doing that elsewhere anyway.
26103         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
26104         and assume long long int is 64 bits if available.  This
26105         speeds up 'configure'.
26106
26107 2006-07-01  Eric Blake  <ebb9@byu.net>
26108
26109         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
26110         Reported by Andreas Buening.
26111
26112 2006-07-01  Eric Blake  <ebb9@byu.net>
26113
26114         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
26115
26116 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
26117
26118         * lib/getaddrinfo.c: fixed typo
26119
26120 2006-06-29  Jim Meyering  <jim@meyering.net>
26121
26122         * modules/strftime (Maintainer): Add my name, since with the
26123         FPRINTFTIME changes strftime.c has forked from glibc.
26124
26125 2006-06-29  Eric Blake  <ebb9@byu.net>
26126
26127         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
26128
26129 2006-06-29  Eric Blake  <ebb9@byu.net>
26130
26131         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
26132
26133 2006-06-29  Eric Blake  <ebb9@byu.net>
26134
26135         * lib/stat_.h: New file.
26136
26137 2006-06-29  Eric Blake  <ebb9@byu.net>
26138
26139         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
26140         unused static function.
26141
26142 2006-06-29  Eric Blake  <ebb9@byu.net>
26143
26144         * doc/functions.texi (Function Portability): Document missing lstat
26145         on mingw.
26146
26147 2006-06-29  Eric Blake  <ebb9@byu.net>
26148
26149         * MODULES.html.sh: Add sys_stat.
26150         * modules/sys_stat: New module.
26151         * modules/mkstemp (Depends-on): Add sys_stat.
26152
26153 2006-06-29  Derek R. Price  <derek@ximbiot.com>
26154
26155         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
26156
26157 2006-06-29  Derek R. Price  <derek@ximbiot.com>
26158
26159         * m4/c-bs-a.m4: Removed.
26160
26161 2006-06-29  Derek R. Price  <derek@ximbiot.com>
26162
26163         * lib/strftime.c: Assume strftime() exists.
26164
26165 2006-06-29  Derek Price  <derek@ximbiot.com>
26166
26167         * modules/c-bs-a: Removed - \a is C89.
26168         * MODULES.html.sh: Remove c-bs-a.
26169
26170 2006-06-29  Bruno Haible  <bruno@clisp.org>
26171
26172         * modules/wcwidth (License): Change to LGPL.
26173
26174 2006-06-28  Simon Josefsson  <jas@extundo.com>
26175
26176         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
26177         on _WIN32.
26178
26179         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
26180         getnameinfo.
26181
26182 2006-06-28  Simon Josefsson  <jas@extundo.com>
26183
26184         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
26185
26186 2006-06-28  Simon Josefsson  <jas@extundo.com>
26187
26188         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
26189         functions there.  It will succeed on Windows XP, but on Windows
26190         2000 and (presumably) earlier, it will fail, and use the internal
26191         re-implementation.
26192         (use_win32_p): New function.
26193         (getaddrinfo): Use strtoul on servname, to support numeric ports.
26194         Support AI_NUMERICSERV to disable getservbyname.
26195         (getnameinfo): New function, only supports
26196         NI_NUMERICHOST|NI_NUMERICSERV for now.
26197
26198         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
26199         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
26200         getnameinfo.
26201
26202 2006-06-28  Eric Blake  <ebb9@byu.net>
26203
26204         * modules/wcwidth: New file.
26205         * modules/mbchar (Depends-on): Add wcwidth.
26206         * modules/mbswidth (Depends-on): Add wcwidth.
26207         * MODULES.html.sh: Add wcwidth.
26208
26209 2006-06-28  Eric Blake  <ebb9@byu.net>
26210
26211         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
26212         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
26213
26214 2006-06-28  Eric Blake  <ebb9@byu.net>
26215
26216         * lib/xvasprintf.h: Fix comments.
26217
26218 2006-06-28  Eric Blake  <ebb9@byu.net>
26219
26220         * lib/mbchar.h (wcwidth): Include wcwidth.h.
26221         * lib/mbswidth.c (wcwidth): Move from here...
26222         * lib/wcwidth.h: ...to this new file.
26223
26224 2006-06-28  Derek R. Price  <derek@ximbiot.com>
26225
26226         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
26227
26228         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
26229         it's obsolete.
26230         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
26231
26232 2006-06-28  Derek R. Price  <derek@ximbiot.com>
26233
26234         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
26235         Autoconf 2.60 says this stuff was obsolete.
26236
26237 2006-06-28  Bruno Haible  <bruno@clisp.org>
26238
26239         * modules/wcwidth (Files): Add m4/wchar_t.m4.
26240
26241 2006-06-28  Bruno Haible  <bruno@clisp.org>
26242
26243         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
26244         gt_TYPE_WCHAR_T.
26245
26246 2006-06-28  Bruno Haible  <bruno@clisp.org>
26247
26248         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
26249         declaration for wcwidth.
26250         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
26251
26252 2006-06-28  Bruno Haible  <bruno@clisp.org>
26253
26254         * lib/mkdtemp.c [MINGW]: Include <io.h>.
26255         (mkdir): Define using _mkdir.
26256
26257 2006-06-28  Bruno Haible  <bruno@clisp.org>
26258
26259         * lib/getaddrinfo.h: Fix POSIX URL.
26260         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
26261         _WIN32.
26262         (use_win32_p): Make static.
26263         (getaddrinfo): Reject service name if it is empty or does not consist
26264         solely of decimal digits, or if its value is > 65535.
26265         (getnameinfo): Remove useless casts.
26266
26267 2006-06-27  Simon Josefsson  <jas@extundo.com>
26268
26269         * modules/sys_select: New file, suggested by Bruno Haible, Paul
26270         Eggert and Martin Lambers.
26271
26272 2006-06-27  Simon Josefsson  <jas@extundo.com>
26273
26274         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
26275         Eggert and Martin Lambers.
26276
26277 2006-06-27  Bruno Haible  <bruno@clisp.org>
26278
26279         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
26280         result to 0, not to empty.
26281         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
26282
26283 2006-06-27  Bruno Haible  <bruno@clisp.org>
26284
26285         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
26286
26287 2006-06-26  Simon Josefsson  <jas@extundo.com>
26288
26289         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
26290         present.
26291
26292 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
26293
26294         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
26295         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
26296         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
26297
26298 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
26299
26300         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
26301
26302 2006-06-26  Bruno Haible  <bruno@clisp.org>
26303
26304         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
26305
26306 2006-06-26  Bruno Haible  <bruno@clisp.org>
26307
26308         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
26309
26310 2006-06-26  Bruno Haible  <bruno@clisp.org>
26311
26312         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
26313         SGI C compiler in pre-C99 mode.
26314         Suggested by Mark D. Baushke and Larry Jones.
26315
26316 2006-06-26  Bruno Haible  <bruno@clisp.org>
26317
26318         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
26319         WCHAR_MAX.
26320         Reported by Mark D. Baushke and Larry Jones.
26321
26322 2006-06-26  Bruno Haible  <bruno@clisp.org>
26323
26324         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
26325         in pre-C99 mode.
26326         Suggested by Mark D. Baushke and Larry Jones.
26327
26328 2006-06-23  Simon Josefsson  <jas@extundo.com>
26329             Bruno Haible  <bruno@clisp.org>
26330
26331         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
26332         Emit mostlyclean-local rule.
26333         (func_emit_tests_Makefile_am): Likewise.
26334         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
26335
26336 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
26337
26338         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
26339
26340 2006-06-23  Bruno Haible  <bruno@clisp.org>
26341
26342         * tests/test-stdint.c: Update to match ISO C 99 Technical
26343         Corrigendum 1.
26344
26345 2006-06-23  Bruno Haible  <bruno@clisp.org>
26346
26347         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
26348
26349 2006-06-23  Bruno Haible  <bruno@clisp.org>
26350
26351         * lib/stdint_.h: Treat IRIX like OpenBSD.
26352
26353 2006-06-23  Bruno Haible  <bruno@clisp.org>
26354
26355         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
26356         ISO C 99 Technical Corrigendum 1.
26357
26358 2006-06-22  Simon Josefsson  <jas@extundo.com>
26359
26360         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
26361         MinGW.
26362
26363 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
26364
26365         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
26366         needed.  Some compiler complained about some of them.  Problem reported
26367         by Larry Jones in
26368         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
26369
26370 2006-06-21  Simon Josefsson  <jas@extundo.com>
26371
26372         * tests/test-getaddrinfo.c: New file.
26373
26374         * modules/getaddrinfo-tests: New file.
26375
26376         * MODULES.html.sh: Add inet_pton.
26377
26378         * modules/inet_pton: New file.
26379
26380 2006-06-21  Simon Josefsson  <jas@extundo.com>
26381
26382         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
26383         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
26384         of using the (limited) gnulib implementation on Windows XP.
26385
26386         * m4/inet_pton.m4: New file.
26387
26388 2006-06-21  Simon Josefsson  <jas@extundo.com>
26389
26390         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
26391         variable.
26392
26393         * lib/socket_.h: Don't define WINVER.
26394
26395         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
26396         slightly modified to work in gnulib.
26397
26398 2006-06-21  Simon Josefsson  <jas@extundo.com>
26399
26400         * doc/gnulib.texi (Windows sockets): Add.
26401
26402 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
26403
26404         * lib/read-file.c (fread_file): Start with buffer allocation of
26405         0 bytes rather than 1 byte; this simplifies the code.
26406         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
26407         code to free buffer and save/restore errno.
26408         (internal_read_file): Remove unused local.
26409
26410 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
26411
26412         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
26413         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
26414         Problem reported by Denis Excoffier in
26415         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
26416
26417 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
26418
26419         * modules/sys_socket, modules/socklen: Include sys/types since
26420         FreeBSD 4.x's sys/socket.h needs it.
26421
26422 2006-06-19  Simon Josefsson  <jas@extundo.com>
26423
26424         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
26425
26426 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
26427
26428         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
26429
26430 2006-06-19  Bruno Haible  <bruno@clisp.org>
26431
26432         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
26433         and FULL_PATH_INTTYPES_H in angle brackets.
26434         Reported by Mark D. Baushke <mdb@gnu.org>.
26435
26436 2006-06-17  Eric Blake  <ebb9@byu.net>
26437
26438         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
26439         errno.
26440
26441 2006-06-17  Bruno Haible  <bruno@clisp.org>
26442
26443         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
26444         <sys/inttypes.h>.
26445
26446 2006-06-17  Bruno Haible  <bruno@clisp.org>
26447
26448         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
26449         whether errno is declared. Assume <errno.h> declares errno.
26450
26451 2006-06-17  Bruno Haible  <bruno@clisp.org>
26452
26453         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
26454
26455 2006-06-17  Bruno Haible  <bruno@clisp.org>
26456
26457         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
26458         problem on Solaris 2.5.1.
26459
26460 2006-06-16  Eric Blake  <ebb9@byu.net>
26461
26462         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
26463         * lib/unicodeio.c [!defined errno]: Likewise.
26464         * lib/strtol.c [!defined errno]: Likewise.
26465         * lib/strtod.c [!defined errno]: Likewise.
26466
26467 2006-06-15  Eric Blake  <ebb9@byu.net>
26468
26469         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
26470
26471 2006-06-15  Eric Blake  <ebb9@byu.net>
26472
26473         * config/srclist.txt (ssize_t.m4): Lose sync.
26474
26475 2006-06-15  Bruno Haible  <bruno@clisp.org>
26476
26477         * modules/stdint (Files): Include m4/full-header-path.m4,
26478         m4/size_max.m4, m4/wchar_t.m4.
26479         (Makefile.am): Many more substitutions.
26480         * modules/stdint-tests: New file.
26481         * tests/test-stdint.c: New file.
26482
26483 2006-06-15  Bruno Haible  <bruno@clisp.org>
26484
26485         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
26486         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
26487         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
26488         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
26489         gl_CHECK_TYPE_SAME): New macros.
26490
26491 2006-06-15  Bruno Haible  <bruno@clisp.org>
26492
26493         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
26494
26495 2006-06-15  Bruno Haible  <bruno@clisp.org>
26496
26497         * lib/stdint_.h: Rewritten to be fully auto-configured.
26498         Fixes bug on HP-UX/IA64.
26499
26500 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
26501
26502         * lib/getdate.y (__attribute__): Don't define if already defined.
26503         Problem reported by Larry Jones.
26504         * lib/utimens.c (__attribute__): Likewise.
26505
26506 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
26507
26508         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
26509         reported by Andreas Schwab.
26510
26511 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26512             Bruno Haible  <bruno@clisp.org>
26513
26514         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
26515         check for the declaration of strnlen and a run test that exposes the
26516         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
26517         rpl_strndup.
26518
26519 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26520             Bruno Haible  <bruno@clisp.org>
26521
26522         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
26523
26524 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26525
26526         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
26527         compile test, for Tru64 4.0D.
26528
26529 2006-05-28  Karl Berry  <karl@gnu.org>
26530
26531         * config/srclist.txt (printf-args.c): lose sync.
26532
26533 2006-05-26  Martin Lambers  <marlam@marlam.de>
26534
26535         * lib/getpass.c: Updates the test for the native W32 API, and adds
26536         missing includes, thus fixing compilation warnings.
26537
26538 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
26539
26540         * lib/exclude.c (exclude_fnmatch): New function.
26541         (excluded_file_name): Call exclude_fnmatch.
26542         * lib/exclude.h (excluded_file_name): New prototype
26543
26544 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
26545
26546         * lib/tempname.c (small_open, large_open): New macros.
26547         (__open, __open64) [!_LIBC]: Remove.
26548         (__gen_tempname): Use small_open and large_open instead of __open
26549         and __open64.  This fixes a portability bug on HP-UX 11.11i
26550         reported by Simon Wing-Tang in
26551         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
26552
26553 2006-05-24  Bruno Haible  <bruno@clisp.org>
26554
26555         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
26556         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
26557         Reported by Thorsten Maerz <torte@netztorte.de> via
26558         Aaron Stone <aaron@serendipity.cx>.
26559
26560 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
26561
26562         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
26563         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
26564         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
26565         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
26566         not really conditional on the cache.
26567         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
26568
26569 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
26570
26571         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
26572         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
26573         (my_usleep): Don't mishandle maximum value.
26574
26575 2006-05-19  Jim Meyering  <jim@meyering.net>
26576
26577         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
26578
26579 2006-05-17  Bruno Haible  <bruno@clisp.org>
26580
26581         Cygwin portability.
26582         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
26583
26584 2006-05-17  Bruno Haible  <bruno@clisp.org>
26585
26586         * lib/stdint_.h: Fix recognition of Cygwin.
26587
26588 2006-05-15  Bruno Haible  <bruno@clisp.org>
26589
26590         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
26591         on libtool patch by Ralf Wildenhues.
26592
26593 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
26594
26595         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
26596         test for C99 conformance; (bool) 0.5 is an integer constant
26597         expression, but (bool) -0.5 is not.  Problem reported by Fedor
26598         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
26599
26600 2006-05-11  Simon Josefsson  <jas@extundo.com>
26601
26602         * m4/xvasprintf.m4: Fix obvious typo.
26603
26604 2006-05-11  Jim Meyering  <jim@meyering.net>
26605
26606         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
26607         James Lemley.
26608
26609 2006-05-10  Simon Josefsson  <jas@extundo.com>
26610
26611         * lib/md4.c: Typo fix, update copyright years.
26612         (K1, K2): Don't use L because it turn computations into 64-bit on
26613         64-bit platforms.
26614
26615 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
26616
26617         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
26618         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
26619         unwanted sign propagation, e.g., on hosts with 64-bit int.
26620         There still are some problems with reeelly weird theoretical hosts
26621         (e.g., 33-bit int) but it's not worth worrying about now.
26622         * lib/sha1.c (rol): Likewise.
26623         (K1, K2, K3, K4): Remove unnecessary L suffix.
26624
26625 2006-05-10  Bruno Haible  <bruno@clisp.org>
26626
26627         * lib/des.c: Cast to avoid warnings.
26628
26629 2006-05-09  Bruno Haible  <bruno@clisp.org>
26630
26631         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
26632         (Depends-on): Depend also on xsize, stdarg.
26633         (configure.ac): Add gl_XVASPRINTF.
26634
26635 2006-05-09  Bruno Haible  <bruno@clisp.org>
26636
26637         * m4/xvasprintf.m4: New file.
26638
26639 2006-05-09  Bruno Haible  <bruno@clisp.org>
26640
26641         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
26642         (EOVERFLOW): Define fallback value.
26643         (xstrcat): New function.
26644         (xvasprintf): Recognize the special case of a string concatenation.
26645
26646 2006-05-08  Eric Blake  <ebb9@byu.net>
26647
26648         * gnulib-tool (func_version): Base copyright year on CVS date.
26649         (func_emit_copyright_notice): New function.
26650         (func_emit_lib_Makefile_am): Use it.
26651         (func_emit_tests_Makefile_am): Likewise.
26652         (func_import): Likewise.
26653
26654 2006-05-08  Bruno Haible  <bruno@clisp.org>
26655
26656         * modules/stdarg: New file.
26657         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
26658
26659 2006-05-08  Bruno Haible  <bruno@clisp.org>
26660
26661         * m4/stdarg.m4: New file, from GNU gettext.
26662
26663 2006-05-08  Bruno Haible  <bruno@clisp.org>
26664
26665         * config/srclist.txt (build-aux/config.rpath): different from latest
26666         release.
26667
26668 2006-05-08  Bruno Haible  <bruno@clisp.org>
26669
26670         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
26671
26672 2006-05-05  Jim Meyering  <jim@meyering.net>
26673
26674         * m4/warning.m4: New file, derived from bison's file by the same name.
26675
26676 2006-05-03  Bruno Haible  <bruno@clisp.org>
26677
26678         * lib/stdint_.h: Shorter URL.
26679         * lib/inttypes.h: Likewise.
26680
26681 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
26682
26683         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
26684
26685 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
26686
26687         * lib/verify.h: Document the internals better.  Most of this change
26688         was written by Bruno Haible.
26689
26690 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
26691
26692         * doc/verify.texi: New file, partly based on a proposal by
26693         Bruno Haible.
26694
26695 2006-05-02  Bruno Haible  <bruno@clisp.org>
26696
26697         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
26698         test from here...
26699         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
26700
26701 2006-04-29  Bruno Haible  <bruno@clisp.org>
26702
26703         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
26704         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
26705
26706 2006-04-29  Bruno Haible  <bruno@clisp.org>
26707
26708         * gnulib-tool: Make --update option actually work.
26709
26710 2006-04-29  Bruno Haible  <bruno@clisp.org>
26711
26712         * doc/gcd.texi: New file.
26713         * doc/gnulib.texi: Include it.
26714
26715 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
26716
26717         * lib/getdate.y (get_date): When adding relative date, start with the
26718         initial time, not with the result of the first mktime call.
26719
26720 2006-04-25  Bruno Haible  <bruno@clisp.org>
26721
26722         * gnulib-tool (func_import): Output the include directives in three
26723         blocks, sorted separately.
26724         Reported by Ben Pfaff <blp@cs.stanford.edu>.
26725
26726 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
26727
26728         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
26729         to define main with arguments, for C++.  Reported by Eric Blake.
26730         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
26731         Prefer 'int main ()' to 'int main (void)', for C++.
26732         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
26733         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
26734         for 'main', for C99 and C++.
26735
26736 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
26737
26738         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
26739         Don't assume that exit status -1 is valid.
26740         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
26741         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
26742         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
26743         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
26744         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
26745         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
26746         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
26747         functions can be used without declaring them, or that you can
26748         exit with status -1.
26749         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
26750
26751 2006-04-24  Karl Berry  <karl@gnu.org>
26752
26753         * config/srclist.txt (longdouble.m4): sync lost.
26754
26755 2006-04-24  Eric Blake  <ebb9@byu.net>
26756
26757         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
26758
26759 2006-04-24  Bruno Haible  <bruno@clisp.org>
26760
26761         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
26762         poll() implementation in AIX.
26763         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
26764
26765 2006-04-24  Bruno Haible  <bruno@clisp.org>
26766
26767         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
26768         assigned exactly once.
26769
26770 2006-04-23  Claudio Fontana  <claudio@gnu.org>
26771             Bruno Haible  <bruno@clisp.org>
26772
26773         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
26774         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
26775         for AM_CPPFLAGS.
26776
26777 2006-04-23  Bruno Haible  <bruno@clisp.org>
26778
26779         * modules/copy-file: Depend on unistd.
26780         * modules/execute: Likewise.
26781         * modules/fatal-signal: Likewise.
26782         * modules/findprog: Likewise.
26783         * modules/mkdtemp : Likewise.
26784         * modules/pipe: Likewise.
26785         * modules/wait-process: Likewise.
26786
26787 2006-04-23  Bruno Haible  <bruno@clisp.org>
26788
26789         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
26790         condition was already detected.
26791         Reported by Ben Pfaff <blp@cs.stanford.edu>.
26792
26793 2006-04-23  Bruno Haible  <bruno@clisp.org>
26794
26795         * lib/copy-file.c: Include <unistd.h> unconditionally.
26796         * lib/execute.c: Likewise.
26797         * lib/fatal-signal.c: Likewise.
26798         * lib/findprog.c: Likewise.
26799         * lib/mkdtemp.c: Likewise.
26800         * lib/pipe.h: Likewise.
26801         * lib/pipe.c: Likewise.
26802         * lib/wait-process.h: Likewise.
26803
26804 2006-04-23  Bruno Haible  <bruno@clisp.org>
26805
26806         * gnulib-tool (func_usage): Fix --import description. Document
26807         --update.
26808         (func_import): Create temporary file in a temporary directory, if
26809         --dry-run is specified. Silence errors from 'grep' when there are no
26810         m4 files in $m4dir.
26811         (func_create_testdir): Silence errors from 'grep' when there are no
26812         m4 files in $m4dir.
26813         Reported by Karl Berry <karl@freefriends.org>.
26814
26815 2006-04-20  Bruno Haible  <bruno@clisp.org>
26816
26817         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
26818         one argument, so that the code will be portable to Autoconf 2.60.
26819         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
26820         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
26821         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
26822
26823 2006-04-19  Derek Price  <derek@ximbiot.com>
26824             Eric Blake  <ebb9@byu.net>
26825
26826         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
26827         rather than "/full/path.h".  Update comment to match.  Shorten &
26828         generalize m4_translit call via AS_TR_CPP.
26829
26830 2006-04-19  Derek Price  <derek@ximbiot.com>
26831             Eric Blake  <ebb9@byu.net>
26832
26833         * lib/inttypes.h: Correct grammar in comment.
26834
26835 2006-04-18  Derek Price  <derek@ximbiot.com>
26836             Paul Eggert  <eggert@cs.ucla.edu>
26837
26838         * modules/inttypes: New file.
26839         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
26840
26841 2006-04-18  Derek Price  <derek@ximbiot.com>
26842             Paul Eggert  <eggert@cs.ucla.edu>
26843
26844         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
26845         New files.
26846
26847 2006-04-18  Derek Price  <derek@ximbiot.com>
26848             Paul Eggert  <eggert@cs.ucla.edu>
26849
26850         * lib/inttypes.h: New file.
26851         * lib/strtoimax.c: Assume <inttypes.h>.
26852
26853 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
26854
26855         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
26856         isn't mounted.  Problem reported by Kir Kolyshkin.
26857
26858 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
26859
26860         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
26861         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
26862         Derek R. Price.
26863         * lib/regex.h (RE_DUP_MAX): Update comment to match current
26864         implementation.
26865
26866 2006-04-12  Eric Blake  <ebb9@byu.net>
26867
26868         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
26869         is now done automatically by the corresponding Autoconf macro.
26870
26871 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
26872
26873         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
26874         time_r.h.
26875
26876 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
26877
26878         Merge regex changes from libc, removing some of our
26879         POSIX-conformance changes that were rejected and redoing them in a
26880         less-intrusive way.
26881
26882         * lib/regcomp.c (re_compile_internal, init_dfa):
26883         Length arg is now size_t, not Idx.  All uses changed.
26884         (peek_token): Forward decl now says internal_function.
26885         (__re_error_msgid, __re_error_msgid_idx):
26886         Now static rather than extern with attribute_hidden.
26887         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
26888         For some reason libc prefers K&R style defns for external functions.
26889         (regerror) [!defined _LIBC]: Likewise.
26890         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
26891         (seek_collating_symbol_entry, lookup_collation_sequence_value):
26892         (build_range_exp, build_collating_symbol):
26893         Use K&R-style defn.
26894         (re_compile_fastmap): Use '\0' to memset, not 0.
26895         (utf8_sb_map): Make the calculations more obvious.
26896         (init_dfa, parse_bracket_exp, build_charclass_op):
26897         Call calloc and cast result, as glibc does.
26898         (init_word_char, fetch_token, peek_token, peek_token_bracket):
26899         (build_range_exp, build_collating_symbol):
26900         Now internal functions.
26901
26902         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
26903
26904         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
26905         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
26906         Don't depend on VMS; depend on __VMS instead, for POSIX
26907         namespace cleanness.
26908         (regoff_t): Define to ssize_t, not long int.
26909
26910         Remove the REG_ macros named below.  Instead, make the old names
26911         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
26912         __USE_GNU_REGEX.
26913         (REG_BACKSLASH_ESCAPE_IN_LISTS):
26914         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
26915         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
26916         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
26917         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
26918         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
26919         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
26920         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
26921         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
26922         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
26923         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
26924         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
26925         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
26926         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
26927         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
26928         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
26929         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
26930         (REG_NREGS):
26931         Remove.  All uses replaced by the old RE_* names.
26932         (RE_BACKSLASH_ESCAPE_IN_LISTS):
26933         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
26934         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
26935         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
26936         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
26937         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
26938         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
26939         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
26940         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
26941         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
26942         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
26943         Don't bother having these macros be independent of each others'
26944         values, since they no longer exist in the POSIX name space.
26945
26946         Rename the following member names back to their old names,
26947         unless !__USE_GNU_REGEX.  All uses changed back.
26948         (buffer): Renamed from re_buffer.
26949         (allocated): Renamed from re_allocated.
26950         (used): Renamed from re_used.
26951         (syntax): Renamed from re_syntax.
26952         (fastmap): Renamed from re_fastmap.
26953         (translate): Renamed from re_translate.
26954         (can_be_null): Renamed from re_can_be_null.
26955         (regs_allocated): Renamed from re_regs_allocated.
26956         (fastmap_accurate): Renamed from re_fastmap_accurate.
26957         (no_sub): Renamed from re_no_sub.
26958         (not_bol): Renamed from re_not_bol.
26959         (not_eol): Renamed from re_not_eol.
26960         (newline_anchor): Renamed from re_newline_anchor.
26961         (num_regs): Renamed from rm_num_regs.
26962         (start): Renamed from rm_start.
26963         (end): Renamed from rm_end.
26964
26965         (free_state): Move up a bit.
26966
26967         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
26968         #define to be empty.
26969         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
26970         when that is what is intended.
26971         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
26972         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
26973         (MAX): New macro.
26974         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
26975         All uses changed back to re_malloc, etc.  It's now the caller's
26976         responsibility to check for overflow; all callers changed.
26977         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
26978         (re_x2nrealloc): Remove.
26979         (free_state): Remove decl.
26980
26981         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
26982         (re_set_registers, re_exec):
26983         Use K&R-style defn.
26984
26985         2006-01-31  Roland McGrath  <roland@redhat.com>
26986
26987         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
26988         Reported by Mike Frysinger <vapier@gentoo.org>.
26989
26990         2006-01-15  Andreas Jaeger  <aj@suse.de>
26991
26992         [BZ #1950]
26993         * lib/regex_internal.c (re_string_reconstruct): Adjust for
26994         build_wcs_upper_buffer change.
26995         (build_wcs_upper_buffer): Change return type.
26996
26997         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
26998
26999         * lib/regex_internal.h: Include <stdint.h> if available.
27000
27001         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
27002
27003         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
27004
27005         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
27006
27007         * lib/regcomp.c: Adjust for changed secondary hash function.
27008
27009         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
27010
27011         * lib/regex.h: Pretty printing.
27012         Clean up namespace a bit.
27013
27014         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
27015
27016         * lib/regexec.c (update_cur_sifted_state, check_arrival,
27017         check_arrival_add_next_nodes): Avoid using uninitialized variable.
27018
27019         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
27020                     Ulrich Drepper  <drepper@redhat.com>
27021
27022         [BZ #1302]
27023         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
27024         changed.
27025         (bitset_word_t): Renamed from bitset_word.  All uses changed.
27026
27027         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
27028
27029         [BZ #281]
27030         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
27031         * lib/regcomp.c: Remove unnecessary uses of
27032         unsigned RE_TRANSLATE_TYPE.
27033         * lib/regex_internal.h: Likewise.
27034         * lib/regex_internal.c: Likewise.
27035         * lib/regexec.c: Likewise.
27036         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
27037
27038         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
27039
27040         * lib/regexec.c (find_recover_state): Remove unnecessary
27041         initialization.
27042         (transit_state_bkref): Make DFA a const pointer.
27043         (get_subexp): Likewise.
27044         (check_arrival): Likewise.
27045         (update_cur_sifted_state): Likewise.
27046         (re_search_internal): Likewise.
27047         (prune_impossible_nodes): Likewise.
27048         (acquire_init_state_context): Likewise.
27049         (proceed_next_node): Likewise.
27050         (set_regs): Likewise.
27051         (free_fail_stack_return): Likewise.
27052         (check_arrival_expand_ecl): Mark DFA parameter as const.
27053         (check_arrival_expand_ecl_sub): Likewise.
27054         (check_subexp_limits): Likewise.
27055         (sub_epsilon_src_nodes):  Likewise.
27056         (add_epsilon_src_nodes):  Likewise.
27057         (merge_state_array): Likewise.
27058         (update_regs): Likewise.
27059         (build_trtable): Likewise.
27060         (sift_states_backward): Mark MCTX parameter as const.
27061         (build_sifted_states): Likewise.
27062         (update_cur_sifted_state): Likewise.
27063         (sift_states_mkref): Likewise.
27064         (check_arrival_expand_ecl): Mark eclosure as const.
27065         (check_dst_limits_calc_pos_1): Likewise.
27066         * lib/regex_internal.h (re_match_context_t): Make dfa a const
27067         pointer.
27068
27069         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
27070
27071         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
27072         (transit_state_sb): Likewise.
27073         (transit_state_mb): Likewise.
27074         (sift_states_iter_mb): Likewise.
27075         (check_arrival_add_next_nodes): Likewise.
27076         (check_node_accept_bytes): Change first parameter to pointer-to-const.
27077         [_LIBC] (re_search_2_stub): Use mempcpy.
27078
27079         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
27080         mbrtowc for very simple UTF-8 case.
27081
27082         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
27083         a pointer-to-const.
27084         (re_acquire_state_context): Likewise.
27085         * lib/regex_internal.h: Adjust prototypes.
27086
27087         * lib/regex.c: Prevent using C++ compilers.
27088
27089         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
27090         (re_acquire_state_context): Likewise.
27091
27092 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
27093
27094         * modules/regex (Depends-on): Add ssize_t.
27095
27096 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
27097
27098         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
27099         translation table.
27100
27101 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
27102
27103         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
27104
27105 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
27106             Bruno Haible  <bruno@clisp.org>
27107
27108         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
27109         <sys/types.h> and <inttypes.h>.
27110
27111 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27112
27113         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
27114         `__error_t_defined', so argp.h will not typedef the former.
27115
27116 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
27117
27118         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
27119         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
27120         glibc names.  Even if glibc is changed to conform to POSIX, the
27121         traditional names will be available anyway, since regex depends on
27122         the extensions module.  Also, fix a longstanding typo in the
27123         implementation of Spencer ERE test #75 from grep 2.3.  Problems
27124         reported by Emanuele Giaquinta.  Also, change sense of cached
27125         variable, so that the message makes sense.
27126
27127 2006-03-24  Simon Josefsson  <jas@extundo.com>
27128
27129         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
27130         including some doc fixes.
27131         (base64_encode_alloc): Fix +1 bug on allocation failures.
27132
27133 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27134
27135         * lib/base64.c (base64_encode): Do not read past end of array with
27136         unsanitized input on systems with CHAR_BIT > 8.
27137
27138 2006-03-24  Eric Blake  <ebb9@byu.net>
27139
27140         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
27141
27142 2006-03-22  Karl Berry  <karl@gnu.org>
27143
27144         * config/srclist.txt (*setenv.[ch]): get from coreutils.
27145         * config/srclistvars.sh (COREUTILS): new var.
27146
27147 2006-03-17  Jim Meyering  <jim@meyering.net>
27148
27149         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
27150         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
27151
27152 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
27153
27154         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
27155         no longer needs it.  Instead, check that regoff_t is as least
27156         as wide as ptrdiff_t.
27157
27158         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
27159         so that our regex.h stays compatible with the installed regex.
27160         This is helpful for installers who configure --without-included-regex.
27161         Problem reported by Emanuele Giaquinta.
27162
27163 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
27164
27165         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
27166         Typedef to long int, not to off_, as POSIX will likely change
27167         in that direction.
27168
27169 2006-03-15  Eric Blake  <ebb9@byu.net>
27170
27171         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
27172
27173 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
27174
27175         * lib/argp-help.c (validate_uparams): Fix typo
27176         * lib/argp-parse.c (argp_default_options): Consistently begin help
27177         messages with a lowercase letter.
27178
27179 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
27180
27181         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
27182         overrun buffers and shouldn't be used (much as gets shouldn't be
27183         used).
27184         * lib/time_r.c (asctime_r, ctime_r): Likewise.
27185
27186 2006-03-08  Simon Josefsson  <jas@extundo.com>
27187
27188         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
27189         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27190
27191 2006-03-08  Simon Josefsson  <jas@extundo.com>
27192
27193         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
27194         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27195
27196 2006-03-08  Simon Josefsson  <jas@extundo.com>
27197
27198         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
27199         signal that configure disabled the device.
27200
27201 2006-03-08  Simon Josefsson  <jas@extundo.com>
27202
27203         * build-aux/maint.mk: Fix refresh-po, to handle no translated
27204         languages.
27205
27206 2006-03-07  Simon Josefsson  <jas@extundo.com>
27207
27208         * modules/getopt (Depends-on): Add unistd.
27209
27210         * modules/unistd: New file.
27211
27212 2006-03-07  Simon Josefsson  <jas@extundo.com>
27213
27214         * modules/gc-random: New file.
27215
27216 2006-03-07  Simon Josefsson  <jas@extundo.com>
27217
27218         * m4/unistd_h.m4: New file.
27219
27220 2006-03-07  Simon Josefsson  <jas@extundo.com>
27221
27222         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
27223         test to be side-effect free by storing the result in the cache
27224         variable gl_cv_lib_readline, and moving the assignment of
27225         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
27226         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27227
27228 2006-03-07  Simon Josefsson  <jas@extundo.com>
27229
27230         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
27231         error on missing devices (the functions will return an error).
27232
27233         * m4/gc.m4: Move random stuff to gc-random.m4
27234
27235 2006-03-07  Simon Josefsson  <jas@extundo.com>
27236
27237         * lib/unistd_.h: New file.
27238
27239 2006-03-07  Simon Josefsson  <jas@extundo.com>
27240
27241         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
27242
27243 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
27244
27245         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
27246         Problem reported by Juan Manuel Guerrero.
27247
27248 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
27249
27250         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
27251         the unistd module.
27252         * lib/getlogin_r.c: Likewise.
27253         * lib/getlogin_r.h: Likewise.
27254         * lib/glob.c: Likewise.
27255         * lib/pagealign_alloc.c: Likewise.
27256         * lib/unistd_.h: Remove; no longer needed.
27257
27258 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
27259
27260         * MODULES.html.sh (Support for systems lacking POSIX:2001):
27261         Add unistd.
27262         * modules/c-stack (Depends-on): Add unistd.
27263         * modules/getlogin_r: Likewise.
27264         * modules/glob: Likewise.
27265         * modules/pagealign_alloc: Likewise.
27266         * modules/unistd (Files): Remove lib/unistd_.h.
27267         (EXTRA_DIST): Remove.
27268         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
27269         need unistd_.h.
27270         (MOSTLYCLEANFILES): Remove unistd.h-t.
27271
27272 2006-03-03  Simon Josefsson  <jas@extundo.com>
27273
27274         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
27275
27276 2006-03-03  Simon Josefsson  <jas@extundo.com>
27277
27278         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
27279         libidn and bison.
27280
27281 2006-03-03  Simon Josefsson  <jas@extundo.com>
27282
27283         * build-aux/maint.mk: Add indent target.
27284
27285 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
27286
27287         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
27288         our replacement poll.h in any case, to avoid a differing
27289         declaration from a system header.  Seen on AIX.
27290
27291 2006-03-01  Simon Josefsson  <jas@extundo.com>
27292
27293         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
27294         <kasal@ucw.cz>.
27295
27296 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
27297
27298         * modules/gettime (Depends-on): Add extensions module.
27299         * modules/nanosleep (Depends-on): Likewise.
27300         * modules/settime (Depends-on): Likewise.
27301
27302 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
27303
27304         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
27305         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
27306         pedantically.
27307         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
27308         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
27309
27310         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
27311         not "==".  Reported by Ralf Wildenhues.
27312
27313 2006-03-01  Karl Berry  <karl@gnu.org>
27314
27315         * doc/Copyright/request-*: new files, synced from gnuorg.
27316
27317 2006-03-01  Karl Berry  <karl@gnu.org>
27318
27319         * config/srclist.txt (Copyright/*): new entries.
27320
27321 2006-02-28  Simon Josefsson  <jas@extundo.com>
27322
27323         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
27324
27325 2006-02-27  Simon Josefsson  <jas@extundo.com>
27326
27327         * lib/base64.h: Indent #define's.  From Jim Meyering
27328         <jim@meyering.net>.
27329
27330 2006-02-27  Jim Meyering  <jim@meyering.net>
27331
27332         Revert the change of 2006-02-24, so these files can continue
27333         to be sync'd from gettext.
27334         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
27335         of `config.h'.
27336
27337 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
27338
27339         * modules/intprops: New file.
27340         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
27341         Add intprops.
27342         * modules/getloadavg (Files): Remove lib/intprops.h.
27343         (Depends-on): Add intprops.
27344         * modules/human: Likewise.
27345         * modules/inttostr: Likewise.
27346         * modules/openat: Likewise.
27347         * modules/sig2str: Likewise.
27348         * modules/userspec: Likewise.
27349         * modules/utimecmp: Likewise.
27350         * modules/xnanosleep: Likewise.
27351         * modules/xstrtol: Likewise.
27352
27353 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
27354
27355         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
27356         * modules/lock-tests (TESTS): Use $(EXEEXT).
27357         * modules/tls-tests: Likewise.
27358         * modules/argp-tests: Likewise.
27359         (check_PROGRAMS): New var, replacing...
27360         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
27361
27362 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27363
27364         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
27365         `config.h'.
27366
27367 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
27368
27369         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
27370
27371 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27372
27373         Sync from coreutils.
27374         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
27375         gl_CHDIR_SAFER.
27376
27377 2006-02-22  Jim Meyering  <jim@meyering.net>
27378
27379         Sync from coreutils.
27380         * m4/chdir-safer.m4: New file.
27381
27382 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
27383
27384         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
27385         AT_FDCWD exceeds INT_MAX.
27386         * lib/openat.h (AT_FDCWD): Likewise.
27387
27388 2006-02-17  Eric Blake  <address@hidden>
27389
27390         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
27391
27392 2006-02-16  Simon Josefsson  <jas@extundo.com>
27393
27394         * modules/getaddrinfo (Depends-on): Add sys_socket.
27395
27396 2006-02-15  Simon Josefsson  <jas@extundo.com>
27397
27398         * build-aux/maint.mk: Add dsyntax-check rule.
27399
27400 2006-02-15  Eric Blake  <ebb9@byu.net>
27401
27402         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
27403         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
27404         'present but cannot compile' warnings on cygwin.
27405         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
27406         use ws2tcpip.h if sys/socket.h works.
27407         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
27408         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
27409
27410 2006-02-14  Simon Josefsson  <jas@extundo.com>
27411
27412         * modules/maintainer-makefile (Files): Rename.
27413
27414         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
27415         and (the local) Makefile.cfg to maint-cfg.mk.
27416
27417         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
27418         to the latter.
27419
27420         * modules/maintainer-makefile: New module.
27421
27422         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
27423         severaly stripped to make it possible to build it up from scratch
27424         with reliable tests.
27425
27426         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
27427         fixes to permit overriding the default actions when configure and
27428         makefile are not available.
27429
27430 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
27431
27432         Sync from coreutils.
27433         * modules/lstat (Depends-on): Don't depend on xalloc.
27434         (License): Change from GPL to LGPL, since this is now simply a
27435         replacement for a libc function.
27436
27437 2006-02-14  Jim Meyering  <jim@meyering.net>
27438
27439         Sync from coreutils.
27440
27441         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
27442         failure on deficient systems, and simplify gnulib lgpl dependencies.
27443         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
27444         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
27445
27446         * lib/xalloc-die.c: Remove unused definition of N_.
27447
27448 2006-02-14  Jim Meyering  <jim@meyering.net>
27449
27450         Sync from coreutils.
27451         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
27452         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
27453         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
27454         double-quote uses of that variable, to accommodate the rare case in
27455         which getmntent is available in none of the libraries checked.  This
27456         happens at least on FreeBSD 5.0.
27457
27458 2006-02-13  Simon Josefsson  <jas@extundo.com>
27459
27460         * gnulib-tool (Usage): Fix --import, from
27461         karl@freefriends.org (Karl Berry).
27462
27463 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
27464
27465         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
27466
27467 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
27468
27469         * lib/argp-namefrob.h: Restore changes accidentally lost during the
27470         "autoupdate" on 2005-12-12.
27471
27472 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
27473
27474         * modules/closeout (Depends-on): Remove atexit.
27475
27476 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
27477
27478         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
27479         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
27480
27481 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
27482
27483         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
27484         __EXTENSIONS__ if this causes compilation to fail.  Problem
27485         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
27486         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
27487
27488 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
27489
27490         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
27491         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
27492         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
27493         All uses changed.
27494
27495 2006-01-26  Simon Josefsson  <jas@extundo.com>
27496
27497         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
27498         prototype is visible on mingw32.
27499
27500         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
27501         for mingw32.
27502
27503         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
27504         mingw32).
27505
27506 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
27507
27508         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
27509         attempt to open for write; this always fails, at least on POSIX
27510         hosts.  This reinstates the 2006-01-09 change, which was
27511         inadvertently removed.
27512
27513 2006-01-26  Bruno Haible  <bruno@clisp.org>
27514
27515         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
27516         Reported by Paul Eggert.
27517
27518 2006-01-26  Bruno Haible  <bruno@clisp.org>
27519             Paul Eggert  <eggert@cs.ucla.edu>
27520
27521         * lib/stdbool_.h (_Bool)
27522         [(! (defined __cplusplus || defined __BEOS__)
27523           && !defined __GNUC__
27524           && !(defined __HP_cc || defined __xlc__
27525                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
27526                || defined __sgi))]:
27527         #define to signed char in these cases too; this simplifies
27528         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
27529         etc., separately) and makes it more conservative.
27530
27531 2006-01-25  Simon Josefsson  <jas@extundo.com>
27532
27533         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
27534         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
27535         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
27536
27537 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
27538
27539         * lib/argp-namefrob.h: Bugfix. Remove stray #
27540
27541 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
27542
27543         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
27544         so that we test the test.
27545         Check for yet another HP-UX cc bug involving *bool |= bool.
27546
27547 2006-01-25  Karl Berry  <karl@gnu.org>
27548
27549         * config/srclist.txt (vasnprintf.c): sync lost.
27550
27551 2006-01-25  Jim Meyering  <jim@meyering.net>
27552
27553         Sync from the stable (b5) branch of coreutils:
27554
27555         * lib/fts.c (fts_children): Don't let close() clobber errno from
27556         failed fchdir().
27557
27558         * lib/fts.c (fts_stat): When following a symlink-to-directory,
27559         don't necessarily interpret stat-fails+lstat-succeeds as indicating
27560         a dangling symlink.  That can also happen at least for ELOOP.
27561         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
27562         FYI, this bug predates the inclusion of fts.c in coreutils.
27563
27564         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
27565         in their own block, so pre-c99 compilers don't object.
27566
27567         Avoid the double-free (first in fts_read, second in fts_close) that
27568         would occur when an `active' directory is made inaccessible (e.g.,
27569         via chmod a-x) during a traversal.
27570         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
27571         before returning.  Reproduce this failure by
27572         mkdir -p a/b; cd a; chmod a-x . b
27573         Reported by Stavros Passas.
27574
27575 2006-01-25  Jim Meyering  <jim@meyering.net>
27576
27577         * lib/fileblocks.c: Remove more useless parentheses.
27578         * lib/readutmp.h: Likewise.
27579
27580 2006-01-25  Bruno Haible  <bruno@clisp.org>
27581
27582         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
27583         warnings.
27584         Reported by Paul Eggert.
27585
27586 2006-01-25  Bruno Haible  <bruno@clisp.org>
27587
27588         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
27589         rid of a trap command. For Solaris sh.